Aller au contenu

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_WEBSHELL_SECRETSAUCE_Jul23_1

Detects SECRETSAUCE PHP webshells (found after an exploitation of Citrix NetScaler ADC CVE-2023-3519)

Web shellSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compile avec YARA-X
Auteur
Florian Roth
Date
2023-07-24
Modifiée
2023-12-05
Score / Qualité
85 / 85

Ce que détecte cette règle

Detects SECRETSAUCE PHP webshells (found after an exploitation of Citrix NetScaler ADC CVE-2023-3519)

Elle définit 6 motifs (6 texte, 0 hex, 0 regex).

Résumé généré à partir des métadonnées et de la condition de la règle.

Source de la règle

webshell-secretsauce-jul23-1.yarDetection Rule License 1.1
rule SIGNATURE_BASE_WEBSHELL_SECRETSAUCE_Jul23_1 : CVE_2023_3519 FILE
{
	meta:
		description = "Detects SECRETSAUCE PHP webshells (found after an exploitation of Citrix NetScaler ADC CVE-2023-3519)"
		author = "Florian Roth"
		id = "db0542e7-648e-5f60-9838-e07498f58b51"
		date = "2023-07-24"
		modified = "2023-12-05"
		reference = "https://www.mandiant.com/resources/blog/citrix-zero-day-espionage"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/expl_citrix_netscaler_adc_exploitation_cve_2023_3519.yar#L79-L100"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		logic_hash = "c762d46ae43a3e10453c2ee17039812a06086ac85bdb000cf8308f5196a9dee2"
		score = 85
		quality = 85
		tags = "CVE-2023-3519, FILE"

	strings:
		$sa1 = "for ($x=0; $x<=1; $x++) {" ascii
		$sa2 = "$_REQUEST[" ascii
		$sa3 = "@eval" ascii
		$sb1 = "public $cmd;" ascii
		$sb2 = "return @eval($a);" ascii
		$sb3 = "$z->run($z->get('openssl_public_decrypt'));"

	condition:
		filesize < 100KB and ( all of ( $sa* ) or 2 of ( $sb* ) )
}

Chaînes (6 motifs)

IdentifiantTypeValeurModificateurs
$sa1texte"for ($x=0; $x<=1; $x++) {"ascii
$sa2texte"$_REQUEST["ascii
$sa3texte"@eval"ascii
$sb1texte"public $cmd;"ascii
$sb2texte"return @eval($a);"ascii
$sb3texte"$z->run($z->get('openssl_public_decrypt'));"

Condition

filesize < 100KB and ( all of ( $sa* ) or 2 of ( $sb* ) )

En clair (Heuristique)

  • Le fichier doit faire moins de 100KB (garde-fou peu coûteux qui écarte les gros fichiers).
  • Tous les motifs de ( $sa* ) doivent être trouvés.
  • Au moins 2 motifs de ( $sb* ) doivent être trouvés.

Tester cette règle dans votre navigateur

Déposez un fichier pour le scanner avec cette règle grâce à YARA-X compilé en WebAssembly. Rien n’est envoyé.

Déposez un fichier ici ou cliquez pour choisirScanné localement avec YARA-X. Fichiers jusqu’à 200 Mo.

Ouvrir dans l’éditeur

Références

Licence et attribution

Auteur : Florian Roth

Dépôt source : Signature Base (Florian Roth / Nextron) @ 94a1c48d7a

Licence : Detection Rule License 1.1 (licence du dépôt)

Règle d’origine

Reprise via YARA Forge 20260927, qui préfixe les noms de règles par la source et ajoute des champs meta normalisés.

Identifiant de règle: db0542e7-648e-5f60-9838-e07498f58b51

Tags:CVE_2023_3519FILE