首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Windows权限提升之AppLocker绕过

之后,我们将研究两种可用于绕过 AppLocker 限制技术,以便我们可以受害者身上使用我们工具。 AppLocker 是一项功能(策略),用于对某些文件类型(应用程序)及其执行位置创建限制。...此消息暗示受害者上正在运行 AppLocker。...唯一问题是这些文件夹默认情况下通常具有严格权限。 AppLocker 将可执行规则定义为与应用关联任何具有 .exe 和 .com 扩展名文件。 ...AppLocker绕过 – 默认可写文件夹 我们可以看到api0cradle C:\Windows\* 中找到一些默认情况下标准用户可写入文件夹列表: https://github.com/api0cradle...AppLocker绕过 – 备用数据流 另一种可用于绕过 AppLocker 技术是将可执行文件嵌入到另一个文件(备用数据流)中,然后从 ADS 执行 EXE(AppLocker 规则不会阻止可执行文件

31750

Get-AppLockerEventlog:一款功能强大AppLocker事件日志提取工具

\Get-AppLockerEventlog.ps1 -HunType All 2、Block 该选项会获取由AppLocker阻止应用程序所触发所有事件,这种类型事件日志对于威胁搜索或安全取证至关重要...这些日志信息对于威胁搜索或安全取证,以及应用程序行为监控来说非常重要,因为它可以帮助我们检测任何可能旁路或配置错误: ....阻止应用程序时生成所有事件。...这些事件可以帮助我们检查错误配置、以及审核阶段发生恶意操作: ....\Get-AppLockerEventlog.ps1 -HunType Audit  输出结果  工具分析输出结果将直接显示屏幕上: 同时工具会将结果粗处到一个CSV文件中:AppLocker-log.csv

26220
您找到你想要的搜索结果了吗?
是的
没有找到

使用CMSTP绕过AppLocker方法介绍

它是一个受信任Microsoft二进制文件,位于以下两个Windows目录中。 ? AppLocker默认规则允许在这些文件夹中执行二进制文件,因此我们可以用它来作为bypass一种方法。...该方法最初是由Oddvar Moe发现,使用这个二进制文件可以绕过AppLocker和UAC,具体可以参阅他博文。...Nick Tyrer还编写了一个名为powersct.sctscriptlet,可以将其用作执行PowerShell命令备选解决方案,以应对本机PowerShell被阻止情况。...INF文件需要包含scriptlet远程位置。 ? ? 执行INF文件时,将会打开一个新命令提示符窗口,这表示代码已被成功执行。 ? 成功获取到一个Meterpreter会话。 ?...因此,如果恶意攻击者已经开始使用此技术,且CMSTP.EXE二进制无法被AppLocker规则阻止情况下,则需要将这两个文件作为IoC进行监视。 ?

50030

Windows系统关键目录文件有缺失或存在异常或出现新文件可能导致哪些后果

article/19357178、C:\Windows\Resources\Themes\ 主题目录如果缺失aero*,可能导致看不到图形界面解决办法:从正常系统拷贝,winpe下替换9、AppLocker..._ 部署被AppLocker阻止。...FOUND问题机器中发现C:\windows\system32下面不存在AppLocker这个文件夹,而正常机器中是有的,默认是空创建了一个新文件夹命名为AppLocker之后,点击开始菜单,可以正常工作...②进系统特别慢,发现C:\Windows\System32\config\RegBack\SYSTEM 这个文件就1.5G,用微软特殊软件 dureg 或第三方注册表软件可以定位具体是哪个子目录最大...,在有备份情况下,可删除异常子目录来改造SYSTEM注册表使之变小后放回原系统开机对比。

4.8K51

WinExec、ShellExecute和CreateProcess

④ ERROR_PATH_NOT_FOUND:指定路径未找到。   虽然Microsoft认为WinExec已过时,但是许多时候,简单WinExec函数仍是运行新程序最好方式。...当函数调用过程出现错误时,它将作为Windows消息窗口父窗口。...,同时不改变活动窗口 SW_SHOWNORMAL 与SW_RESTORE相同   3、深入浅ShellExecute 译者:徐景周(原作:Nishant S) Q: 如何打开一个应用程序...这些句柄拥有参数lpProcessAttributes和lpThreadAttributes中规定访问。   ...要注意,针对CreateProcess一些参数对控制台应用程序是特定,而其它参数则对各种应用程序有用。大多数情况下,并不一定要填入 STARTUPINFO结构,但无论如何必须提供它。

91020

使用presentationhost.exe绕过AppLocker白名单限制

多个AppLocker白名单绕过列表中,Presentationhost.exe都位列其中(例如api0cradl和milkdevil),但在网上有关如何使用它资料却少之又少。...如果一切正常,你应该会收到如下警告消息: ? 点击运行后,将出现一个空白页面。让我们来创建一个简单UI,即在左侧输入命令右侧输出结果。此外,我还将添加一个带有单击事件按钮。...此错误是Presentationhost沙箱告诉你,应用程序试图权限级别之上执行某些操作,有关xbap安全性更多介绍请参阅此处。...powershell.exepowershell.exe.manifestpowershell.pdbpowershell.xbap 要绕过默认AppLocker规则,请将这些文件复制到锁定计算机,...你可以通过右键单击该文件,然后单击“Unblock(取消阻止)”复选框来删除Web标记(或者你也可以使用 PowerShell)。 ?

1.8K20

ShellExecute 启动外部程序 参数详细介绍

目录 1基本简介 2原型参数 3返回值 4例子 5特殊用法 6VB语言 ▪ 概括▪ 定义声明▪ 参数说明▪ 示例 1基本简介编辑 有几个API函数都可以实现这些功能,但是大多数情况下ShellExecute...可以将它转换为一个整数(%d),并比较它值大于还是小于32或比较它错误代码 返回值大于32表示执行成功 返回值小于32表示执行错误 返回值可能错误有: = 0 {内存不足} ERROR_FILE_NOT_FOUND...当函数调用过程出现错误时,它将作为Windows消息窗口父窗口。...若返回值小于32,则表示出现错误。 上述仅仅是ShellExecute函数标准用法,下面将介绍它特殊用法。...例子(delphi): 一个应用程序调用c:\Project1.exe; ShellExecute(handle, 'open',"c:\Project1.exe",'字串内容',NULL, SW_SHOWNORMAL

3.4K110

从远程桌面服务到获取Empire Shell

右键单击IE中任意链接 ->将目标另存为 ->桌面上另存为lol.ps1 ? 点击IE中查看下载,按下文件下拉列表,打开 -> 记事本。...C:\Windows\Tasks文件夹是一个绕过Applocker好地方,因为该目录通常被列为白名单。...但导航到文件夹也可能受到限制,因此某些情况下你可能需要将其保存到C:\Users\Username\Desktop(桌面)。 ? 我还不确定如何在Applocked环境中检查DLL规则。...之所以使用rundll32,是因为它是一个不会被Applocker阻止二进制文件。 rundll32 ....更多高级技术 绕过 powershell 约束模式和 applocker 以下是一篇关于绕过应用白名单和powershell约束模式文章,大家可以阅读下: https://improsec.com/blog

1.8K40

wine怎么打开exe_exe是什么格式文件

当函数调用过程出现错误时,它将作为Windows消息窗口父窗口。...第一次运行程序 时应该使用这个值   若ShellExecute函数调用成功,则返回值为被执行程序实例句柄。若返回值小于32,则表示出现错误。   ...c:Project1.exe;   ShellExecute(handle, ‘open’,’c:Project1.exe’,’字串内容’,nil, SW_SHOWNORMAL);   Project1...唯一我能找到参考资料是Microsoft® Access KnowledgeBase中很暧昧地提到过这个函数。   这个不可思议函数就是:ShellExecute,取代了WinExec。...当ShellExecute遇到文件名前面的“http:”时,可以判断要打开文件是Web文件,随之启动Internet Explorer 或者 Netscape Navigator 或者任何你使用别的浏览器打开文件

2.1K20

红队笔记 - PowerView进行AD列举

当你一个执行AppLocker环境中操作时,通常会出现这种情况(见上文)。 你可以通过轮询以下变量来确定你处于受限语言模式,以获得当前语言模式。...$ExecutionContext.SessionState.LanguageMode 由于PowerShell关键功能被封锁,CLM限制将阻止许多利用尝试。...绕过CLM与绕过上面讨论AppLocker基本相同。...&{whoami} LAPS 本地管理密码解决方案(LAPS)是微软活动目录域范围内管理本地管理密码产品。它经常为注册机器本地管理用户生成强大而独特密码。...这个密码属性和它过期时间然后被写入活动目录中计算机对象。默认情况下,对LAPS密码读取权限只授予域管理员,但经常被委托给特殊组。

1.1K30

WinExec, ShellExecute, CreateProcess

vc++ 程序中运行另一个程序方法有三个: WinExec(),ShellExcute()和CreateProcess() 三个SDK函数: WinExec,ShellExecute ,CreateProcess...“explore” 此函数搜索由参数lpFile指定文件夹,此文件应是一个文档文件,    此参数可以为空。这种情况下,函数用于打开由参数lpFile指定文件。   ...返回值:   若函数调用成功,则返回值大于32,否则为一个小于等于32错误值。   说明:可以用此函数打开或搜索一个外壳文件夹。...关于三个SDK函数: WinExec, ShellExecute,CreateProcess 其他注意事项: 1、定义头文件 头文件stdafx.h中必须定义以下两个头文件: #include...⑶ 返回值: 若函数调用成功,则返回值大于32,否则为一个小于等于32错误值。   说明:可以用此函数打开或搜索一个外壳文件夹。

1.3K20

关于WinExec和System比较

④ ERROR_PATH_NOT_FOUND:指定路径未找到。   虽然Microsoft认为WinExec已过时,但是许多时候,简单WinExec函数仍是运行新程序最好方式。...“explore ” 此函数搜索由参数lpFile指定文件夹,此文件应是一个文档文件,    此参数可以为空。这种情况下,函数用于打开由参数lpFile指定文件。   ...⑶ 返回值:   若函数调用成功,则返回值大于32,否则为一个小于等于32错误值。   说明:可以用此函数打开或搜索一个外壳文件夹。...这些句柄拥有参数lpProcessAttributes和lpThreadAttributes中规定访问。   ...要注意,针对CreateProcess一些参数对控制台应用程序是特定,而其它参数则对各种应用程序有用。大多数情况下,并不一定要填入STARTUPINFO结构,但无论如何必须提供它。

95120

内网渗透测试:利用DCOM进行横向渗透

攻击者可使用 DCOM 进行横向移动,通过 DCOM,攻击者可在拥有适当权限情况下通过 Office 应用程序以及包含不安全方法其他 Windows 对象远程执行命令。...F6A8-11CF-A442-00A0C90A8F39',"192.168.52.138")) # 然后执行如下命令,我们就可以调用该对象"ShellExecute"方法远程主机上启动进程: 完整命令..."方法远程主机上启动进程:$com.Document.Application.shellExecute("C:\shell.exe")# 完整命令:[activator]::CreateInstance...:GetTypeFromProgID("Visio.Application","192.168.52.138"))# 然后执行如下命令,我们就可以调用该对象"shellExecute"方法远程主机上启动进程...,因为默认情况下这会阻止DCOM对象实例化。

2.5K20

WinExec、ShellExecute用法详解「建议收藏」

,以正常方式运行: WinExec(pChar('notepad.exe C:\HDC.TXT'),SW_SHOWNORMAL);   这个函数和system()非常类似,只能运行.EXE文件,这样WINDOWS...2、ShellExecute() :   不仅可以运行EXE文件,也可以运行系统已经关联文件。...ShellExecute功能要强得多,并且可以完全替代WinExec(),事实上,WinExec()也是为了和以前版本兼容而保留,所以,我们要尽量使用ShellExecute()。   ...当函数调用过程出现错误时,它将作为Windows消息窗口父窗口。...第一次运行程序 时应该使用这个值   若ShellExecute函数调用成功,则返回值为被执行程序实例句柄。若返回值小于32,则表示出现错误

1.4K30

vc++ 程序中运行另一个程序方法

vc++ 程序中运行另一个程序方法有三个: WinExec(),ShellExcute()和CreateProcess() 三个SDK函数: WinExec,ShellExecute ,CreateProcess...② ERROR_BAD_FORMAT:EXE文件无效(非Win32.EXE或.EXE影像错误)。   ③ ERROR_FILE_NOT_FOUND:指定文件未找到。   ..."explore" 此函数搜索由参数lpFile指定文件夹,此文件应是一个文档文件,    此参数可以为空。这种情况下,函数用于打开由参数lpFile指定文件。   ...返回值:   若函数调用成功,则返回值大于32,否则为一个小于等于32错误值。   说明:可以用此函数打开或搜索一个外壳文件夹。...要注意,针对CreateProcess一些参数对控制台应用程序是特定,而其它参数则对各种应用程序有用。大多数情况下,并不一定要填入STARTUPINFO结构,但无论如何必须提供它。

3.7K90

PowerShell 降级攻击检测与防御

最后,我们将减轻并阻止他们攻击,EventSentry 架构中 agent 可以让我们实时监控日志。 但在我们潜入之前.........Powershell 降级攻击 之前博客文章中,我谈到要尽可能避免使用 PowerShell v2,因为它提供了不记录日志功能,理想情况下应该部署 PowerShell v5.x 或更高版本,因为它提供了更好日志记录功能...APPLocker) 3、检测并终止使用 powershell V2 命令 卸载 powershell V2 这种情况是针对默认安装了 powershell V2 系统,如果没有默认安装 powershell...V2 所有主机 阻止 PowerShell 运行 利用 4688 事件进行终止 如果无法卸载 PowerShell v2.0,也无法使用 AppLocker,或者希望找到比 AppLocker 更简单方法...应急 能够检测到发生恶意 PowerShell 活动是我们要做第一步,我们如果能够确定哪些命令是恶意,那么为什么不在造成损害之前阻止呢?

2.2K00

Windows中劫持DLL

已经发现攻击者以不同方式和不同原因使用DLL劫持,动机包括执行可执行文件(通过受信任可执行文件执行恶意代码可能不太会引起警钟,某些情况下甚至绕过应用程序白名单功能,如AppLocker,获得持久性...虽然通常不适合获得持久性或特权提升,但它经常在野外出现,以OceanLotus/APT32为例,据观察,2019年底,他们使用了合法rekeywiz.exe和一个恶意duser.dll,在这种情况下...有些应用程序附带了一个GUI,或者其他一些可视化元素,这些元素显示了执行二进制文件,这还包括错误消息:所需DLL可能丢失,而被劫持DLL显然缺少原始功能,攻击者不太可能将此类应用程序作为DLL劫持目标...示例显示了合法winsat.exe从模拟受信任目录加载了恶意dxgi.dll之后没有任何UAC提示情况下实现权限提升,之前表单中,自动提升成功所有可执行/DLL组合都标记在第一列中,有超过160...UAC Bypass技术,如前所述,带有尾随空格Windows文件夹无法通过常规方式创建,因此应该很少,并且总是可疑,将您UAC模式设置为"Always notify"(比默认值高一级)将阻止此方法和其他类似的

2K10

ShellExecute, WinExec, CreateProcess区别

有几个API函数都可以实现这些功能,但是大多数情况下ShellExecute是更多被使用,同时它并不是太复杂。   ...当函数调用过程出现错误时,它将作为Windows消息窗口父窗口。...若返回值小于32,则表示出现错误。   上述仅仅是ShellExecute函数标准用法,下面将介绍它特殊用法。...应用程序可以调用SetErrorMode函数设置当前默认错误模式。   这个标志对于那些运行在没有硬件错误环境下多线程外壳程序是十分有用。   ...对于Windows NT,当一个进程指定了CREATE_NEW_PROCESS_GROUP情况下被创建时,一个对于 SetConsoleCtrlHandler(NULL,True)调用被用在新进程上

84720
领券