Create Mutex

November 18, 2024 ยท View on GitHub

ID C0042
Objective(s) Process
Related ATT&CK Techniques None
Version 2.2
Created 4 December 2020
Last Modified 16 September 2024

Create Mutex

Malware creates a mutex. Mutexes may be created for synchronization purposes (two or more processes/threads to share a resource).

Use in Malware

NameDateMethodDescription
Poison Ivy2005--Poison Ivy has a default process mutex, but can be altered at build time. [1]
Stuxnet2010--Malware creates global mutexes that signal rootkit installation has occurred successfully. [2]
Hupigon2013--Hupigon creates a mutex. [3]
Kovter2016--Kovter creates a mutex. [3]
Redhip2011--Redhip creates a mutex. [3]
Rombertik2015--Rombertik creates a mutex. [3]

Detection

Tool: capaMappingAPIs
create mutexCreate Mutex (C0042)kernel32.CreateMutex, kernel32.CreateMutexEx, System.Threading.Mutex::ctor
lock fileCreate Mutex (C0042)fcntl
Tool: CAPEClassMappingAPIs
allaple_mutexesAllapleMutexesCreate Mutex (C0042)--
andromut_mutexesAndromutMutexesCreate Mutex (C0042)--
asyncrat_mutex_raccoonRaccoonInfoStealerMutexCreate Mutex (C0042)--
asyncrat_mutexAsyncRatMutexCreate Mutex (C0042)--
azorult_mutexesAzorultMutexesCreate Mutex (C0042)--
banker_cridexCridexCreate Mutex (C0042)--
banker_spyeye_mutexesSpyEyeMutexesCreate Mutex (C0042)--
banker_zeus_mutexZeusMutexesCreate Mutex (C0042)--
banker_zeus_p2pZeusP2PCreate Mutex (C0042)--
blackrat_mutexesBlackRATMutexesCreate Mutex (C0042)--
bot_russkillRuskillCreate Mutex (C0042)--
carberp_mutexCarberpMutexesCreate Mutex (C0042)--
crat_mutexesCRATMutexesCreate Mutex (C0042)--
cryptomix_mutexesCryptoMixMutexesCreate Mutex (C0042)--
cypherit_mutexCypherITMutexesCreate Mutex (C0042)--
dcrat_mutexesDCRatMutexCreate Mutex (C0042)--
deepfreeze_mutexDeepFreezeMutexCreate Mutex (C0042)--
dharma_mutexesDharmaMutexesCreate Mutex (C0042)--
fleercivet_mutexFleerCivetMutexesCreate Mutex (C0042)--
fonix_mutexesFonixMutexesCreate Mutex (C0042)--
gandcrab_mutexesGandCrabMutexesCreate Mutex (C0042)--
geodo_banking_trojanGeodoCreate Mutex (C0042)--
germanwiper_mutexesGermanWiperMutexesCreate Mutex (C0042)--
limerat_mutexesLimeRATMutexesCreate Mutex (C0042)--
lokibot_mutexesLokibotMutexesCreate Mutex (C0042)--
medusalocker_mutexesMedusaLockerMutexesCreate Mutex (C0042)--
nemty_mutexesNemtyMutexesCreate Mutex (C0042)--
neshta_mutexesNeshtaMutexesCreate Mutex (C0042)--
obliquerat_mutexesObliquekRATMutexesCreate Mutex (C0042)--
okrum_mutexesOkrumMutexesCreate Mutex (C0042)--
packer_armadillo_mutexArmadilloMutexCreate Mutex (C0042)--
parallax_mutexesParallaxMutexesCreate Mutex (C0042)--
phorpiex_mutexesPhorpiexMutexesCreate Mutex (C0042)--
powerpool_mutexesPowerpoolMutexesCreate Mutex (C0042)--
protonbot_mutexesProtonBotMutexesCreate Mutex (C0042)--
pysa_mutexesPYSAMutexesCreate Mutex (C0042)--
qulab_mutexesQulabMutexesCreate Mutex (C0042)--
ransomware_radamantRansomwareRadamantCreate Mutex (C0042)--
rat_beebus_mutexesBeebusMutexesCreate Mutex (C0042)--
rat_fynloski_mutexesFynloskiMutexesCreate Mutex (C0042)--
rat_luminosityLuminosityRATCreate Mutex (C0042)CryptHashData, NtCreateMutant
rat_nanocoreNanocoreRATCreate Mutex (C0042)--
rat_pcclientPcClientMutexesCreate Mutex (C0042)--
rat_plugx_mutexesPlugxMutexesCreate Mutex (C0042)--
rat_poisonivy_mutexesPoisonIvyMutexesCreate Mutex (C0042)--
rat_quasar_mutexesQuasarMutexesCreate Mutex (C0042)--
rat_spynetSpynetRatCreate Mutex (C0042)--
rat_xtreme_mutexesXtremeMutexesCreate Mutex (C0042)--
ratsnif_mutexesRatsnifMutexesCreate Mutex (C0042)--
remcos_mutexesRemcosMutexesCreate Mutex (C0042)--
renamer_mutexesRenamerMutexesCreate Mutex (C0042)--
revil_mutexesRevilMutexesCreate Mutex (C0042)--
satan_mutexesSatanMutexesCreate Mutex (C0042)--
snake_ransom_mutexesSnakeRansomMutexesCreate Mutex (C0042)--
stop_ransom_mutexesStopRansomMutexesCreate Mutex (C0042)--
targeted_flameFlameCreate Mutex (C0042)--
trickbot_mutexTrickBotMutexesCreate Mutex (C0042)--
ursnif_behaviorUrsnifBehaviorCreate Mutex (C0042)--
venomrat_mutexesVenomRATCreate Mutex (C0042)--
xpertrat_mutexesXpertRATMutexesCreate Mutex (C0042)--

C0042 Snippet

Process::Create Mutex SHA256: 0b8e662e7e595ef56396a298c367b74721d66591d856e8a8241fcdd60d08373c Location: 0x402A1E
push    eax     ; name of mutex
push    0x0     ; if the thread that creates the mutex owns it (false, in this case)
push    0x0     ; optional security descriptor set to NULL, so default security descriptor will be used
call    dword ptr [->KERNEL32.DLL::CreateMutexW]        ; call function to create mutex

References

[1] https://www.fortinet.com/blog/threat-research/deep-analysis-of-new-poison-ivy-variant

[2] https://docs.broadcom.com/doc/security-response-w32-stuxnet-dossier-11-en

[3] capa v4.0, analyzed at MITRE on 10/12/2022