Author: Evi1cg
Blog: https://evi1cg.github.io

Table of Contents

Linux
Windows

Perl

执行:perl test.pl

Python

执行:python test.py

Ruby

执行:ruby test.rb

PHP

执行:php test.php

NC
attacker
target
FTP
TFTP
Bitsadmin
Window 文件共享
SCP
本地到远程
远程到本地
rsync
远程rsync服务器中拷贝文件到本地机
本地机器拷贝文件到远程rsync服务器
certutil.exe
copy
WHOIS
接收端 Host B:
发送端 Host A:
WHOIS + TAR
First:
Next
Finally
PING
发送端:
接收端ping_receiver.py:
DIG
发送端:
接收端dns_reciver.py:

搭建 HTTP server

python2
python3
PHP 5.4+
ruby
Perl
busybox httpd

内网信息搜集

本机信息搜集

1、用户列表

windows用户列表
分析邮件用户,内网[域]邮件用户,通常就是内网[域]用户

2、进程列表

析杀毒软件/安全监控工具等
邮件客户端
VPN
ftp等

3、服务列表

与安全防范工具有关服务[判断是否可以手动开关等]
存在问题的服务[权限/漏洞]

4、端口列表

开放端口对应的常见服务/应用程序[匿名/权限/漏洞等]
利用端口进行信息收集

5、补丁列表

分析 Windows 补丁
第三方软件[Java/Oracle/Flash 等]漏洞

6、本机共享

本机共享列表/访问权限
本机访问的域共享/访问权限

7、本用户习惯分析

历史记录
收藏夹
文档等

8、获取当前用户密码工具

Windows
  • mimikatz
  • wce
  • Invoke-WCMDump
  • mimiDbg
  • LaZagne
  • nirsoft_package
  • QuarksPwDump fgdump
  • 星号查看器等

    Linux
  • LaZagne

  • mimipenguin

    扩散信息收集

    端口扫描

    常用端口扫描工具
  • nmap

  • masscan
  • zmap
  • s扫描器
  • 自写脚本等
  • NC
  • 内网拓扑架构分析

  • DMZ

  • 管理网
  • 生产网
  • 测试网

    常见信息收集命令

    ipconfig:
    net:
    dsquery

    第三方信息收集

  • NETBIOS 信息收集

  • SMB 信息收集
  • 空会话信息收集
  • 漏洞信息收集等

    权限提升

    Windows

    BypassUAC

    常用方法
  • 使用IFileOperation COM接口

  • 使用Wusa.exe的extract选项
  • 远程注入SHELLCODE 到傀儡进程
  • DLL劫持,劫持系统的DLL文件
  • eventvwr.exe and registry hijacking
  • sdclt.exe
  • SilentCleanup
  • wscript.exe
  • cmstp.exe
  • 修改环境变量,劫持高权限.Net程序
  • 修改注册表HKCU\Software\Classes\CLSID,劫持高权限程序
  • 直接提权过UAC

    常用工具
  • UACME

  • Bypass-UAC
  • Yamabiko
  • 提权

  • windows内核漏洞提权

    检测类:Windows-Exploit-Suggester,WinSystemHelper,wesng 利用类:windows-kernel-exploitsBeRoot

  • 服务提权

    数据库服务,ftp服务等

  • WINDOWS错误系统配置

  • 系统服务的错误权限配置漏洞
  • 不安全的注册表权限配置
  • 不安全的文件/文件夹权限配置
  • 计划任务
  • 任意用户以NT AUTHORITY\SYSTEM权限安装msi
  • 提权脚本

    PowerUP,ElevateKit

Linux

内核溢出提权

linux-kernel-exploits

计划任务

SUID

系统服务的错误权限配置漏洞

不安全的文件/文件夹权限配置

找存储的明文用户名,密码

权限维持

系统后门

Windows

1、密码记录工具

WinlogonHack
WinlogonHack 是一款用来劫取远程3389登录密码的工具,在 WinlogonHack 之前有 一个 Gina 木马主要用来截取 Windows 2000下的密码,WinlogonHack 主要用于截 取 Windows XP 以及 Windows 2003 Server。
键盘记录器
安装键盘记录的目地不光是记录本机密码,是记录管理员一切的密码,比如说信箱,WEB 网页密码等等,这样也可以得到管理员的很多信息。
NTPass
获取管理员口令,一般用 gina 方式来,但有些机器上安装了 pcanywhere 等软件,会导致远程登录的时候出现故障,本软件可实现无障碍截取口令。
Linux 下 openssh 后门
重新编译运行的sshd服务,用于记录用户的登陆密码。

2、常用的存储Payload位置

WMI :
存储:
读取:
包含数字签名的PE文件
利用文件hash的算法缺陷,向PE文件中隐藏Payload,同时不影响该PE文件的数字签名
特殊ADS

特殊COM文件
磁盘根目录

3、Run/RunOnce Keys

用户级
管理员

4、BootExecute Key

由于smss.exe在Windows子系统加载之前启动,因此会调用配置子系统来加载当前的配置单元,具体注册表键值为:

5、Userinit Key

WinLogon进程加载的login scripts,具体键值:

6、Startup Keys

7、Services

创建服务

8、Browser Helper Objects

本质上是Internet Explorer启动时加载的DLL模块

9、AppInit_DLLs

加载User32.dll会加载的DLL

10、文件关联

11、bitsadmin

12、mof

管理员执行:

13、wmi

每隔60秒执行一次notepad.exe

14、Userland Persistence With Scheduled Tasks

劫持计划任务UserTask,在系统启动时加载dll

15、Netsh

后门触发:每次调用netsh

dll编写:https://github.com/outflanknl/NetshHelperBeacon

16、Shim

常用方式:
InjectDll
RedirectShortcut
RedirectEXE

17、DLL劫持

通过Rattler自动枚举进程,检测是否存在可用dll劫持利用的进程
使用:Procmon半自动测试更精准,常规生成的dll会导致程序执行报错或中断,使用AheadLib配合生成dll劫持利用源码不会影响程序执行
工具:https://github.com/sensepost/rattler
工具:https://github.com/Yonsm/AheadLib

18、DoubleAgent /)

编写自定义Verifier provider DLL
通过Application Verifier进行安装
注入到目标进程执行payload
每当目标进程启动,均会执行payload,相当于一个自启动的方式
POC : https://github.com/Cybellum/DoubleAgent

19、waitfor.exe

不支持自启动,但可远程主动激活,后台进程显示为waitfor.exe
POC : https://github.com/3gstudent/Waitfor-Persistence

20、AppDomainManager

针对.Net程序,通过修改AppDomainManager能够劫持.Net程序的启动过程。如果劫持了系统常见.Net程序如powershell.exe的启动过程,向其添加payload,就能实现一种被动的后门触发机制

21、Office

劫持Office软件的特定功能:通过dll劫持,在Office软件执行特定功能时触发后门
利用VSTO实现的office后门
Office加载项

22、CLR

无需管理员权限的后门,并能够劫持所有.Net程序
POC:https://github.com/3gstudent/CLR-Injection

23、msdtc

利用MSDTC服务加载dll,实现自启动,并绕过Autoruns对启动项的检测
利用:向 %windir%\system32\目录添加dll并重命名为oci.dll

24、Hijack CAccPropServicesClass and MMDeviceEnumerato

利用COM组件,不需要重启系统,不需要管理员权限
通过修改注册表实现
POC:https://github.com/3gstudent/COM-Object-hijacking

25、Hijack explorer.exe

COM组件劫持,不需要重启系统,不需要管理员权限
通过修改注册表实现

26、Windows FAX DLL Injection

通过DLL劫持,劫持Explorer.exe对fxsst.dll的加载
Explorer.exe在启动时会加载c:\Windows\System32\fxsst.dll(服务默认开启,用于传真服务)将payload.dll保存在c:\Windows\fxsst.dll,能够实现dll劫持,劫持Explorer.exe对fxsst.dll的加载

27、特殊注册表键值

在注册表启动项创建特殊名称的注册表键值,用户正常情况下无法读取(使用Win32 API),但系统能够执行(使用Native API)。
《渗透技巧——“隐藏”注册表的创建》
《渗透技巧——“隐藏”注册表的更多测试》

28、快捷方式后门

替换我的电脑快捷方式启动参数
POC : https://github.com/Ridter/Pentest/blob/master/powershell/MyShell/Backdoor/LNK_backdoor.ps1

29、Logon Scripts

30、Password Filter DLL

31、利用BHO实现IE浏览器劫持

Linux

crontab

每60分钟反弹一次shell给dns.wuyun.org的53端口

硬链接sshd

链接:ssh root@192.168.206.142 -p 2333

SSH Server wrapper

SSH keylogger

vim当前用户下的.bashrc文件,末尾添加
source .bashrc

Cymothoa_进程注入backdoor

rootkit

openssh_rootkit
Kbeast_rootkit
Mafix + Suterusu rootkit

Tools

Vegile
backdoor

WEB后门

PHP Meterpreter后门
Aspx Meterpreter后门
weevely
webacoo
….

横向渗透

端口渗透

端口扫描

  • 1.端口的指纹信息(版本信息)
  • 2.端口所对应运行的服务
  • 3.常见的默认端口号
  • 4.尝试弱口令

    端口爆破

    hydra

    端口弱口令

  • NTScan

  • Hscan
  • 自写脚本

    端口溢出

    smb

  • ms08067

  • ms17010
  • ms11058

apache
ftp

常见的默认端口

1、web类(web漏洞/敏感目录)

第三方通用组件漏洞: struts thinkphp jboss ganglia zabbix …

2、数据库类(扫描弱口令)

3、特殊服务类(未授权/命令执行类/漏洞)

4、常用端口类(扫描弱口令/端口爆破)

5、端口合计所对应的服务

域渗透

信息搜集

powerview.ps1
BloodHound

获取域控的方法

SYSVOL

SYSVOL是指存储域公共文件服务器副本的共享文件夹,它们在域中所有的域控制器之间复制。 Sysvol文件夹是安装AD时创建的,它用来存放GPO、Script等信息。同时,存放在Sysvol文件夹中的信息,会复制到域中所有DC上。
相关阅读:

管理员用户帐户提取密码数据:

DCshadow

Security Support Provider

简单的理解为SSP就是一个DLL,用来实现身份认证
这样就不需要重启c:/windows/system32可看到新生成的文件kiwissp.log

SID History

SID历史记录允许另一个帐户的访问被有效地克隆到另一个帐户

AdminSDHolder&SDProp

利用AdminSDHolder&SDProp(重新)获取域管理权限

组策略

https://adsecurity.org/?p=2716
策略对象在持久化及横向渗透中的应用

Hook PasswordChangeNotify

http://wooyun.jozxing.cc/static/drops/tips-13079.html

TIPS

《域渗透——Dump Clear-Text Password after KB2871997 installed》
《域渗透——Hook PasswordChangeNotify》

可通过Hook PasswordChangeNotify实时记录域控管理员的新密码

《域渗透——Local Administrator Password Solution》

域渗透时要记得留意域内主机的本地管理员账号

《域渗透——利用SYSVOL还原组策略中保存的密码》

相关工具

BloodHound
CrackMapExec
DeathStar

利用过程:http://www.freebuf.com/sectool/160884.html

在远程系统上执行程序