Description of Campaign
Researchers at Qualys discovered a Local Privilege Escalation (from any user to root) in
polkit's pkexec, an SUID-root program that's installed by default on every major Linux distribution.
"Polkit (formerly PolicyKit) is a component for controlling systemwide privileges in Unix-like operating systems.
It provides an organized way for non-privileged processes to communicate with privileged ones. [...]
It's also possible to use polkit to execute commands with elevated privileges using the command
pkexec, followed by the command intended to be executed (with root permission)."
(sourced from Wikipedia)
- pkexec is installed by default on all major Linux distributions (Qualys exploited Ubuntu, Debian, Fedora, CentOS, and other distributions, which are also probably exploitable).
- pkexec has been vulnerable since its creation in May 2009: (commit c8c3d83, "Add a pkexec(1) command").
- Any unprivileged local user can exploit this vulnerability to obtain full root privileges.
- Although this vulnerability is technically a memory corruption, it's exploitable instantly, reliably, and in an architecturally independent way.
- It's exploitable even if the polkit daemon itself isn't running.
A quick mitigation before applying the patch is
#chmod 0755 /usr/bin/pkexec
Our Threat Research team recommends that administrators prioritize applying the patches that the Polkit's authors have made
publicly available.
Our Threat Research team also gathers and analyzes information from multiple open and closed sources before disseminating intelligence reports. This CVE was researched by qualys and
shared publicly.
How to use this article:
- If a Threat Hunting table has been created, use the rules contained to search for malware related to this campaign.
- Review the product detection table and confirm that your environment is at least on the specified content version.
To download the latest content versions, go to the Security Updates page.
- Scroll down and review the "Product Countermeasures" section of this article. Consider implementing them if they are not already in place.
- Review KB91836 - Countermeasures for entry vector threats.
- Review KB87843 - Dynamic Application Containment rules and best practices.
- Review KB82925 - Identify what rule corresponds to an Adaptive Threat Protection and Threat Intelligence Exchange event.
This Knowledge Base article discusses a specific threat that's being tracked. The list of IOCs will change over time; check Trellix Insights for the latest IOCs.
Campaign IOC
Type |
Value |
SHA256 |
B153E10C95BB8BFA6DBF5835067C5B45840F057A38EF9B8871B6DC40EDCF601F |
SHA256 |
75571E2D0F488CBD3F6B2E10553626A1E0F8454BECB39CECA10D876DA84CCEB7 |
SHA256 |
94052C42AA41D0911E4B425DCFD6B829CEC8F673BF1245AF4050EF9C257F6C4B |
SHA256 |
6C25FD449755FCD62B792CAB0E392F6C667D9D6866388F10F70F999D731591EE |
SHA256 |
803C9D3A6A4871D909FD0C8168844FCAB5655E7C3AE8831D61CF3414A7830169 |
SHA256 |
4DCAE1BDDFC3E2CB98EAE84E86FB58EC14EA6EF00778AC5974C4EC526D3DA31F |
SHA256 |
CC89D1D0A1B964DCB80928F54EA6281D249DB57AC97C7658A6791D7D77E9FDE2 |
SHA256 |
C2BB47AC533D1413C829A1453B2B854B95AABEBF1B26B446BD1AD0838F1E09DE |
SHA256 |
CA6E6DC8C479B0E6BA8DB0C97FBFCC2C000E9D39428A5E1F0A6702BAAD31F89C |
SHA256 |
23B228E978DC307D4088F3B1B3D053800D57CFD0768D3FA6B582C412B778751E |
SHA256 |
30C4EFFBE5124E59976FA7528D0F76D5B074C3274193165573D50511211E3972 |
SHA256 |
BDA7CBDCD4BDFFB0492455413921755A63705AC220D8A0D6E71E36C3093C8D1D |
SHA256 |
AC6872CBAEF6ED0DCB2A41E6A9774BB9CCB8A17307E276C7C84BD0624C7757E2 |
Minimum Content Versions
Content Type |
Version |
V2 DAT (VirusScan Enterprise) |
10261 |
V3 DAT (Endpoint Security) |
4713 |
Detection Summary
IOC |
Scanner |
Detection |
B153E10C95BB8BFA6DBF5835067C5B45840F057A38EF9B8871B6DC40EDCF601F |
AVEngine V2 |
GenericRXRP-ZK!C7AF71853AE8 |
AVEngine V3 |
GenericRXRP-ZK!C7AF71853AE8 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
75571E2D0F488CBD3F6B2E10553626A1E0F8454BECB39CECA10D876DA84CCEB7 |
AVEngine V2 |
GenericRXRQ-YZ!0EDA05723F7A |
AVEngine V3 |
GenericRXRQ-YZ!0EDA05723F7A |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
94052C42AA41D0911E4B425DCFD6B829CEC8F673BF1245AF4050EF9C257F6C4B |
AVEngine V2 |
GenericRXRQ-YY!C974FDF72703 |
AVEngine V3 |
GenericRXRQ-YY!C974FDF72703 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
6C25FD449755FCD62B792CAB0E392F6C667D9D6866388F10F70F999D731591EE |
AVEngine V2 |
GenericRXRQ-YY!5D54898B7129 |
AVEngine V3 |
GenericRXRQ-YY!5D54898B7129 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
803C9D3A6A4871D909FD0C8168844FCAB5655E7C3AE8831D61CF3414A7830169 |
AVEngine V2 |
GenericRXRP-ZK!E9622043BFA1 |
AVEngine V3 |
GenericRXRP-ZK!E9622043BFA1 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
4DCAE1BDDFC3E2CB98EAE84E86FB58EC14EA6EF00778AC5974C4EC526D3DA31F |
AVEngine V2 |
GenericRXRQ-KJ!8E3E276E650E |
AVEngine V3 |
GenericRXRQ-KJ!8E3E276E650E |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
CC89D1D0A1B964DCB80928F54EA6281D249DB57AC97C7658A6791D7D77E9FDE2 |
AVEngine V2 |
GenericRXRP-ZK!E8DB44E29A91 |
AVEngine V3 |
GenericRXRP-ZK!E8DB44E29A91 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
C2BB47AC533D1413C829A1453B2B854B95AABEBF1B26B446BD1AD0838F1E09DE |
AVEngine V2 |
GenericRXRQ-YX!4076F4BFA264 |
AVEngine V3 |
GenericRXRQ-YX!4076F4BFA264 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
CA6E6DC8C479B0E6BA8DB0C97FBFCC2C000E9D39428A5E1F0A6702BAAD31F89C |
AVEngine V2 |
GenericRXRQ-JH!0277C157D89B |
AVEngine V3 |
GenericRXRQ-JH!0277C157D89B |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
23B228E978DC307D4088F3B1B3D053800D57CFD0768D3FA6B582C412B778751E |
AVEngine V2 |
GenericRXRP-ZK!0DD5D24126C5 |
AVEngine V3 |
GenericRXRP-ZK!0DD5D24126C5 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
30C4EFFBE5124E59976FA7528D0F76D5B074C3274193165573D50511211E3972 |
AVEngine V2 |
GenericRXRQ-YY!0B01182FFF50 |
AVEngine V3 |
GenericRXRQ-YY!0B01182FFF50 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
BDA7CBDCD4BDFFB0492455413921755A63705AC220D8A0D6E71E36C3093C8D1D |
AVEngine V2 |
GenericRXRQ-JH!EB30398FC704 |
AVEngine V3 |
GenericRXRQ-JH!EB30398FC704 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
IOC |
Scanner |
Detection |
AC6872CBAEF6ED0DCB2A41E6A9774BB9CCB8A17307E276C7C84BD0624C7757E2 |
AVEngine V2 |
GenericRXRQ-YX!CFD71942BD07 |
AVEngine V3 |
GenericRXRQ-YX!CFD71942BD07 |
JTI (ATP Rules) |
- |
RP Static |
- |
RP Dynamic |
- |
Aggressive set of Manual Rules to improve protection to block this campaign:
IMPORTANT: Always follow best practices when you enable new rules and signatures.
When you implement new rules or signatures, always set them to Report mode first and check the alerts generated. Resolve any issues that arise and then set the rules to Block. This step mitigates against triggering false positives and allows you to refine your configuration.
For more information, see KB87843 - List of and best practices for Endpoint Security Dynamic Application Containment rules.
VirusScan Enterprise - Access Protection Rules:
Prevent creation of new executable files in the Windows folder
Host Intrusion Prevention:
Rule ID: 2806 Attempt to create a hardlink to a file
Rule ID: 6010 Generic Application Hooking Protection
Rule ID: 1148 CMD Tool Access by a Network Aware Application
Rule ID: 6011 Generic Application Invocation Protection
Rule ID: 1020 Windows Agent Shielding - File Access