Skip to content

YARA · Signature Base (Florian Roth / Nextron)

SIGNATURE_BASE_MAL_Cisco_Rayinitiator_Stage_3_LINE_VIPER_Shellcode

Detects RayInitiator GRUB bootkit stage 3 deploy phase code that copies LINE VIPER shellcode stub and marks executable.

MalwareSignature Base (Florian Roth / Nextron)Detection Rule License 1.1Compiles with YARA-X
Author
NCSC
Date
2025-09-25
Modified
2026-05-15
Score / Quality
85 / 85

What this rule detects

Detects RayInitiator GRUB bootkit stage 3 deploy phase code that copies LINE VIPER shellcode stub and marks executable.

It defines 1 patterns (0 text, 1 hex, 0 regex).

Summary generated from the rule's metadata and condition.

Rule source

mal-cisco-rayinitiator-stage-3-line-viper-shellcode.yarDetection Rule License 1.1
rule SIGNATURE_BASE_MAL_Cisco_Rayinitiator_Stage_3_LINE_VIPER_Shellcode
{
	meta:
		description = "Detects RayInitiator GRUB bootkit stage 3 deploy phase code that copies LINE VIPER shellcode stub and marks executable."
		author = "NCSC"
		id = "91545ed8-b798-5c0c-a229-e7d37ed7d271"
		date = "2025-09-25"
		modified = "2026-05-15"
		reference = "https://www.ncsc.gov.uk/static-assets/documents/malware-analysis-reports/RayInitiator-LINE-VIPER/ncsc-mar-rayinitiator-line-viper.pdf"
		source_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_cisco_asa_lineviper_rayinitiator_sep25.yar#L60-L76"
		license_url = "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
		logic_hash = "e509bde73d8843b188d632fa44bb4d90ff9d1766138c830c2932e503c5a07197"
		score = 85
		quality = 85
		tags = ""

	strings:
		$xc1 = {
         48 89 FA 48 83 C7 40 4C 89 CE B9 D0 01 00 00 F3 A4 48
         89 D7 48 83 C7 40 48 89 3A 48 C1 EF 0C 48 C1 E7 0C BA
         07 00 00 00 48 C7 C6 00 20 00 00
      }

	condition:
		$xc1
}

Strings (1 patterns)

IdentifierTypeValueModifiers
$xc1hex{ 48 89 FA 48 83 C7 40 4C 89 CE B9 D0 01 00 00 F3 A4 48 89 D7 48 83 C7 40 48 89 3A 48 C1 EF 0C 48 C1 E7 0C BA 07 00 00 00 48 C7 C6 00 …

Condition

$xc1

In plain words (Heuristic)

  • Pattern $xc1 must be present.

Test this rule in your browser

Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.

Drop a file here or click to chooseScanned locally with YARA-X. Files up to 200 MB.

Open in editor

References

Licence & attribution

Author: NCSC

Source repository: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a

Licence: Detection Rule License 1.1 (repository licence)

Original rule

Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.

Rule id: 91545ed8-b798-5c0c-a229-e7d37ed7d271