当前位置
主页 > 成功案例 >
渗透技巧---获得Powershell下令的历史记载
2021-11-25 00:02
本文摘要:0x00 前言Powershell下令的历史记载有时会包罗系统敏感信息,例如远程服务器的毗连口令,运行的PS剧本等种种有价值的信息等等,这里总结一些渗透测试中常用导出历史记载的方法,联合使用思路,给出防御建议。

leye乐鱼娱乐app

0x00 前言Powershell下令的历史记载有时会包罗系统敏感信息,例如远程服务器的毗连口令,运行的PS剧本等种种有价值的信息等等,这里总结一些渗透测试中常用导出历史记载的方法,联合使用思路,给出防御建议。0x01 简介本文将要先容以下内容:两种Powershell下令的历史记载导出Powershell下令历史记载的方法防御建议0x02 两种Powershell下令的历史记载记载Powershell下令的历史记载有两种方式,可划分使用Get-History和Get-PSReadlineOption读取。1、Get-History参考文档:https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Core/Get-History?view=powershell-3.0默认Powershell v2及以上支持能够记载当前会话中输入的下令,多个Powershell历程之间不共享,Powershell历程退出后自动清除所有记载。

leyu乐鱼全站app

a.常用下令获得历史记载的完整信息:Get-History | Format-List -Property *包罗:IdCommandLineExecutionStatusStartExecutionTimeEndExecutionTime测试如下图删除所有历史记载:Clear-History按ID号删除下令:Clear-History -Id 3b. 使用思路获得了一台Windows系统的权限,发现后台有Powershell历程,想要读取Powershell历程中的历史记载(1)Powershell历程无法吸收键盘输入下令例如Powershell加载了一个在后台运行的剧本:Powershell -ep bypass -f 1.ps1此时无法向Powershell历程发送键盘消息,这时可以通过读取历程的下令行参数获得有用的信息,开源代码:https://github.com/3gstudent/Homework-of-C-Language/blob/master/GetProcessCommandLine.cpp代码实现了读取指定历程的下令行参数,通常能够获得有用的信息(2)Powershell历程能够吸收键盘输入下令这里可以模拟发送键盘消息,导出历史记载法式实现思路:通过遍历枚举所有窗口通过GetWindowThreadProcessId从窗口(HWND)获得PID比力PID,找到切合条件的窗口向切合条件的窗口发送键盘消息(PostMessage)法式细节:1.Virtual-Key Codes每一个键盘输入消息对应一个Virtual-Key Code参考资料:https://docs.microsoft.com/en-us/windows/desktop/inputdev/virtual-key-codes需要模拟键盘按下和键盘抬起两个操作,开源的测试代码:https://github.com/3gstudent/Homework-of-C-Language/blob/master/SendKeyboardMessageToPowershell.cpp代码实现了搜索指定pid的历程,向历程发送键盘消息,内容为:whoami2.导出历史记载下令如下:Get-History|export-csv $env:temp"history.csv"其中需要思量字符"|"、"$"和""",模拟键盘输入时需要加Shift键这里的实现方法是先使用keybd_event按下Shift键,再用PostMessage发送按键的字母,最后抬起两个按键开源的测试代码:https://github.com/3gstudent/Homework-of-C-Language/blob/master/SendKeyboardMessageToPowershell(Get-History).cpp代码实现了搜索指定pid的历程,向历程发送键盘消息,内容为:Get-History|export-csv $env:temp"history.csv"c. 增补:检察cmd.exe的历史记载下令如下:doskey /h清空:doskey /reinstall也可以通过发送键盘消息的方式导出cmd.exe的下令历史记载2、Get-PSReadlineOption参考文档:https://docs.microsoft.com/en-us/powershell/module/psreadline/?view=powershell-5.1默认Powershell v5支持Powershell v3和Powershell v4需要安装Get-PSReadlineOption后才可以使用安装后,所有Powershell下令的历史记载会生存在同一位置,可随时检察1. Powershell v3和Powershell v4的安装和使用这里以64位系统为例,安装方法如下:(1)安装PowerShellGet下载:https://www.microsoft.com/en-us/download/details.aspx?id=51451注:安装前需要关闭powershell历程可以通过下令行实现隐蔽安。


本文关键词:渗透,技巧,---,获得,Powershell,下令,的,历史,0x00,leyu乐鱼全站app

本文来源:leyu乐鱼全站app-www.yhwlgg.com

联系方式

电话:040-47671590

传真:093-49001867

邮箱:admin@yhwlgg.com

地址:辽宁省本溪市南芬区心傲大楼864号