All Projects → AzAgarampur → byeintegrity2-uac

AzAgarampur / byeintegrity2-uac

Licence: other
Bypass UAC by abusing the Internet Explorer Add-on installer

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to byeintegrity2-uac

byeintegrity5-uac
Bypass UAC at any level by abusing the Task Scheduler and environment variables
Stars: ✭ 21 (-54.35%)
Mutual labels:  attack, privilege-escalation, bypass-uac, privilege-escalation-exploits
byeintegrity3-uac
Bypass UAC by abusing the Security Center CPL and hijacking a shell protocol handler
Stars: ✭ 24 (-47.83%)
Mutual labels:  attack, privilege-escalation, bypass-uac, privilege-escalation-exploits
go-escalate
The goal is to provide an easy to use API to escalate privileges on Linux, Windows and Mac OS
Stars: ✭ 23 (-50%)
Mutual labels:  privilege-escalation, privilege-escalation-exploits
Brahma
Brahma - Privilege elevation exploit for Nintendo 3DS
Stars: ✭ 34 (-26.09%)
Mutual labels:  privilege-escalation, privilege-escalation-exploits
Infosec reference
An Information Security Reference That Doesn't Suck; https://rmusser.net/git/admin-2/Infosec_Reference for non-MS Git hosted version.
Stars: ✭ 4,162 (+8947.83%)
Mutual labels:  privilege-escalation, privilege-escalation-exploits
Active Directory Exploitation Cheat Sheet
A cheat sheet that contains common enumeration and attack methods for Windows Active Directory.
Stars: ✭ 1,392 (+2926.09%)
Mutual labels:  attack, privilege-escalation
Spectre Attack Sgx
Spectre attack against SGX enclave
Stars: ✭ 214 (+365.22%)
Mutual labels:  attack
assap
Anti Shoulder Surfing Attack Platform (ASSAP)
Stars: ✭ 22 (-52.17%)
Mutual labels:  attack
Hiddeneye Legacy
Modern Phishing Tool With Advanced Functionality And Multiple Tunnelling Services [ Android-Support-Available ]
Stars: ✭ 2,568 (+5482.61%)
Mutual labels:  attack
dheater
D(HE)ater is a proof of concept implementation of the D(HE)at attack (CVE-2002-20001) through which denial-of-service can be performed by enforcing the Diffie-Hellman key exchange.
Stars: ✭ 142 (+208.7%)
Mutual labels:  attack
Snmpwn
An SNMPv3 User Enumerator and Attack tool
Stars: ✭ 183 (+297.83%)
Mutual labels:  attack
PLtools
整理一些内网常用渗透小工具
Stars: ✭ 227 (+393.48%)
Mutual labels:  privilege-escalation-exploits
Arduinoarpspoof
Kicks out everyone in your LAN via with an enc28j60 ethernet controller and Arduino.
Stars: ✭ 215 (+367.39%)
Mutual labels:  attack
spectre-attack-demo
Reproducing malicious memory reading on Intel i5 and Intel Xeon using a Spectre attack
Stars: ✭ 87 (+89.13%)
Mutual labels:  attack
Padding Oracle Attack
🔓 Padding oracle attack against PKCS7 🔓
Stars: ✭ 209 (+354.35%)
Mutual labels:  attack
CCATK
高度自动化CC脚本
Stars: ✭ 107 (+132.61%)
Mutual labels:  attack
Camerattack
An attack tool designed to remotely disable CCTV camera streams (like in spy movies)
Stars: ✭ 192 (+317.39%)
Mutual labels:  attack
Mitm
Man in the middle tool
Stars: ✭ 30 (-34.78%)
Mutual labels:  attack
PSeudo
Execute PowerShell commands as Administrator in Windows 10 "like sudo"
Stars: ✭ 32 (-30.43%)
Mutual labels:  privilege-escalation
md5-extension-attack
MD5长度扩展攻击
Stars: ✭ 36 (-21.74%)
Mutual labels:  attack

ByeIntegrity 2.0 — Windows UAC Bypass

The second attack to bypass User Account Control (UAC) and gain elevated (Administrator) privileges to run any program at a high integrity level.

Requirements

  • Administrator account
  • UAC notification level set to default or lower

How it works

Unlike ByeIntegrity 1.0, ByeIntegrity 2.0 uses a completely different attack method — an elevated COM interface. The registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\UAC\COMAutoApprovalList contains a list of CLSIDs that tell UAC to not prompt for elevation when creating an interface from any of the listed CLSIDs.

The CLSID {BDB57FF2-79B9-4205-9447-F5FE85F37312} represents the Internet Explorer Add-on Installer coclass — this is what ByeIntegrity 2.0 uses for its attack. The coclass allows two interfaces to be created:

  • IID_IeAxiAdminInstaller
  • IID_IeAxiInstaller2

The various methods called from these interfaces used in this attack eventually end up as their corresponding call in the elevated DCOM server ieinstal.exe as these methods:

  • CIEAdminBrokerObject::InitializeAdminInstaller()
  • CIEAdminBrokerObject::VerifyFile()
  • CIEAdminBrokerObject::RunSetupCommand()

ByeIntegrity 2.0 uses these methods to launch cmd.exe as a child process of the elevated ieinstal.exe; creating an elevated instance of cmd.exe, therefore bypassing UAC.

How was this discovered?

The registry key COMAutoApprovalList contains lots of CLSIDs for actions that require elevated permissions but should not prompt because of the current UAC setting (if the setting is lower than the maximum value). I found the Internet Explorer Add-on Installer coclass to be particularly interesting, and while browsing the symbols, I found CIEAdminBrokerObject::RunSetupCommand(), which seemed like it would do what I wanted.

I spend lots of time reverse engineering the COM interfaces and the DCOM server to figure out how to use the interfaces and how they behave. Eventually, I figured out that using the three methods listed above allows us to execute an arbitrary program via a call to CreateProcessW() from the elevated DCOM server ieinstal.exe.

UACMe

This attack is implemented in UACMe as method #64. Unlike ByeIntegrity 1.0, this attack's code is the same as the code/implementation in UACMe. The only differences are that ByeIntegrity 2.0 uses cmd.exe as a lolbin whereas UACMe uses the Fubuki payload, and ByeIntegrity 2.0 uses bdeunlock.exe as the verification file, whereas UACMe uses consent.exe.

Using the code

If you’re reading this then you probably know how to compile the source. Just note that this hasn’t been tested or designed with x86 in mind at all, and it probably won’t work on x86 anyways.

Just like UACMe, I will never upload compiled binaries to this repo. There are always people who want the world to crash and burn, and I'm not going to provide an easy route for them to run this on somebody else's computer and cause intentional damage. I also don't want script-kiddies to use this attack without understanding what it does and the damage it can cause.

The undocumented methods/interfaces have been documented using comments. To read the documentation without reading the comment syntax, just hover over them in Visual Studio and read the tooltip that follows.

Example:

Supported versions

This attack works from Windows 7 (7600) up until the latest version of Windows 10.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].