YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_SUSP_Screenconnect_Exploitation_Artefacts_Feb24
Detects post exploitation indicators observed by HuntressLabs in relation to the ConnectWise ScreenConnect (versions prior to 23.9.8) vulnerability that allows an Authentication Bypass
- Author
- Florian Roth
- Date
- 2024-02-23
- Modified
- 2024-04-24
- Score / Quality
- 75 / 83
What this rule detects
Detects post exploitation indicators observed by HuntressLabs in relation to the ConnectWise ScreenConnect (versions prior to 23.9.8) vulnerability that allows an Authentication Bypass
It defines 28 patterns (28 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule SIGNATURE_BASE_SUSP_Screenconnect_Exploitation_Artefacts_Feb24 : SCRIPT
{
meta:
= "Detects post exploitation indicators observed by HuntressLabs in relation to the ConnectWise ScreenConnect (versions prior to 23.9.8) vulnerability that allows an Authentication Bypass"
= "Florian Roth"
= "079f4153-8bc7-574f-b6fa-af5536b842ab"
= "2024-02-23"
= "2024-04-24"
= "https://www.huntress.com/blog/slashandgrab-screen-connect-post-exploitation-in-the-wild-cve-2024-1709-cve-2024-1708"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/expl_connectwise_screenconnect_vuln_feb24.yar#L62-L103"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "6f0d5f878847da1afb0d7b83e84bd337cfa67c36da2cbb33af712ed4ffad490a"
= 75
= 83
= "SCRIPT"
strings:
$x01 = "-c foreach ($disk in Get-WmiObject Win32_Logicaldisk){Add-MpPreference -ExclusionPath $disk.deviceid}"
$x02 = ".msi c:\\mpyutd.msi"
$x03 = "/MyUserName_$env:UserName"
$x04 = " -OutFile C:\\Windows\\Help\\"
$x05 = "/Create /TN \\\\Microsoft\\\\Windows\\\\Wininet\\\\UserCache_"
$x06 = "$e = $r + \"ssh.exe\""
$x07 = "Start-Process -f $e -a $args -PassThru -WindowStyle Hidden).Id"
$x08 = "-R 9595:localhost:3389 -p 443 -N -oStrictHostKeyChecking=no "
$x09 = "chromeremotedesktophost.msi', $env:ProgramData+"
$x10 = "9595; iwr -UseBasicParsing "
$x11 = "curl https://cmctt.]com/pub/media/wysiwyg/"
$x12 = ":8080/servicetest2.dll"
$x13 = "/msappdata.msi c:\\mpyutd.msi"
$x14 = "/svchost.exe -OutFile "
$x15 = "curl http://minish.wiki.gd"
$x16 = " -Headers @{'ngrok-skip-browser-warning'='true'} -OutFile "
$x17 = "rundll32.exe' -Headers @"
$x18 = "/nssm.exe' -Headers @"
$x19 = "c:\\programdata\\update.dat UpdateSystem"
$x20 = "::size -eq 4){\\\"TVqQAA" ascii wide
$x21 = "::size -eq 4){\"TVqQAA" ascii wide
$x22 = "-nop -c [System.Reflection.Assembly]::Load(([WmiClass]'root\\cimv2:System_"
$xp0 = "/add default test@2021! /domain"
$xp1 = "/add default1 test@2021! /domain"
$xp2 = "oldadmin Pass8080!!"
$xp3 = "temp 123123qwE /add "
$xp4 = "oldadmin \"Pass8080!!\""
$xp5 = "nssm set xmrig AppDirectory "
condition:
1 of ( $x* )
}
Strings (28 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $x01 | text | "-c foreach ($disk in Get-WmiObject Win32_Logicaldisk){Add-MpPreference -ExclusionPath $disk.deviceid}" | |
| $x02 | text | ".msi c:\\mpyutd.msi" | |
| $x03 | text | "/MyUserName_$env:UserName" | |
| $x04 | text | " -OutFile C:\\Windows\\Help\\" | |
| $x05 | text | "/Create /TN \\\\Microsoft\\\\Windows\\\\Wininet\\\\UserCache_" | |
| $x06 | text | "$e = $r + \"ssh.exe\"" | |
| $x07 | text | "Start-Process -f $e -a $args -PassThru -WindowStyle Hidden).Id" | |
| $x08 | text | "-R 9595:localhost:3389 -p 443 -N -oStrictHostKeyChecking=no " | |
| $x09 | text | "chromeremotedesktophost.msi', $env:ProgramData+" | |
| $x10 | text | "9595; iwr -UseBasicParsing " | |
| $x11 | text | "curl https://cmctt.]com/pub/media/wysiwyg/" | |
| $x12 | text | ":8080/servicetest2.dll" | |
| $x13 | text | "/msappdata.msi c:\\mpyutd.msi" | |
| $x14 | text | "/svchost.exe -OutFile " | |
| $x15 | text | "curl http://minish.wiki.gd" | |
| $x16 | text | " -Headers @{'ngrok-skip-browser-warning'='true'} -OutFile " | |
| $x17 | text | "rundll32.exe' -Headers @" | |
| $x18 | text | "/nssm.exe' -Headers @" | |
| $x19 | text | "c:\\programdata\\update.dat UpdateSystem" | |
| $x20 | text | "::size -eq 4){\\\"TVqQAA" | ascii wide |
| $x21 | text | "::size -eq 4){\"TVqQAA" | ascii wide |
| $x22 | text | "-nop -c [System.Reflection.Assembly]::Load(([WmiClass]'root\\cimv2:System_" | |
| $xp0 | text | "/add default test@2021! /domain" | |
| $xp1 | text | "/add default1 test@2021! /domain" | |
| $xp2 | text | "oldadmin Pass8080!!" | |
| $xp3 | text | "temp 123123qwE /add " | |
| $xp4 | text | "oldadmin \"Pass8080!!\"" | |
| $xp5 | text | "nssm set xmrig AppDirectory " |
Condition
1 of ( $x* )In plain words (Heuristic)
- At least 1 patterns in ( $x* ) must match.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
Licence & attribution
Author: Florian Roth
Source repository: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a
Licence: Detection Rule License 1.1 (repository licence)
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: 079f4153-8bc7-574f-b6fa-af5536b842ab
Tags:SCRIPT
Related rules
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-02-23
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-02-23
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-06-15
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-06-15
- APT / threat actorSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-11-09
- ExploitSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-12-10
- ExploitSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-12-10
- Suspicious / huntingSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-02-23