Skip to content

YARA · Volexity threat-intel

VOLEXITY_Apt_Malware_Golang_Brickstorm

Detects the BRICKSTORM backdoor using common strings.

APT / threat actorVolexity threat-intelBSD 2-Clause LicenseCompiles with YARA-X
Author
threatintel@volexity.com
Date
2025-09-04
Modified
2025-10-30
Score / Quality
75 / 80

What this rule detects

Detects the BRICKSTORM backdoor using common strings.

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

Summary generated from the rule's metadata and condition.

Rule source

apt-malware-golang-brickstorm.yarBSD 2-Clause License
rule VOLEXITY_Apt_Malware_Golang_Brickstorm : VERDANTBAMBOO BRICKSTORM FILE MEMORY
{
	meta:
		description = "Detects the BRICKSTORM backdoor using common strings."
		author = "threatintel@volexity.com"
		id = "25775278-5115-5873-957f-9c5d0c8e4f5e"
		date = "2025-09-04"
		modified = "2025-10-30"
		reference = "https://blog.nviso.eu/wp-content/uploads/2025/04/NVISO-BRICKSTORM-Report.pdf"
		source_url = "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/2026/2026-06-04 VerdantBamboo/rules.yar#L100-L136"
		license_url = "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/LICENSE.txt"
		hash = "40d264cf9c73923932c3dfd52d20f46ff602be3fea8dc6ecc71aca46e6067bf5"
		hash = "e981fc4eaaa6417e6034e21438e55c0360773674a6fc0b63c1b95026449e5254"
		logic_hash = "39e3403d90ad67072ae631273e89fe059ec48906ce1d57fe1afbb91304dc84f3"
		score = 75
		quality = 80
		tags = "VERDANTBAMBOO, BRICKSTORM, FILE, MEMORY"
		os = "all"
		os_arch = "all"
		scan_context = "file,memory"
		severity = "critical"
		report1 = "TIB-20251104"
		license = "See license at https://github.com/volexity/threat-intel/blob/main/LICENSE.txt"
		rule_id = 12298
		version = 7

	strings:
		$dns1 = "https://1.1.1.1/dns-query" ascii
		$dns2 = "https://8.8.4.4/dns-query" ascii
		$dns3 = "https://8.8.8.8/dns-query" ascii
		$pack1 = "wsshell/core" ascii
		$pack2 = "wssoft/core" ascii
		$s1 = "github.com/hashicorp/yamux" ascii
		$s2 = "winbindd:" ascii
		$s3 = "WEE1=true" ascii
		$s4 = "WEE2=true" ascii

	condition:
		all of ( $dns* ) and all of ( $s* ) and any of ( $pack* )
}

Strings (9 patterns)

IdentifierTypeValueModifiers
$dns1text"https://1.1.1.1/dns-query"ascii
$dns2text"https://8.8.4.4/dns-query"ascii
$dns3text"https://8.8.8.8/dns-query"ascii
$pack1text"wsshell/core"ascii
$pack2text"wssoft/core"ascii
$s1text"github.com/hashicorp/yamux"ascii
$s2text"winbindd:"ascii
$s3text"WEE1=true"ascii
$s4text"WEE2=true"ascii

Condition

all of ( $dns* ) and all of ( $s* ) and any of ( $pack* )

In plain words (Heuristic)

  • All patterns in ( $dns* ) must match.
  • All patterns in ( $s* ) must match.
  • At least one pattern in ( $pack* ) 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.

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

Open in editor

References

Sample hashes

Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).

  • 40d264cf9c73923932c3dfd52d20f46ff602be3fea8dc6ecc71aca46e6067bf5
  • e981fc4eaaa6417e6034e21438e55c0360773674a6fc0b63c1b95026449e5254

Licence & attribution

Author: threatintel@volexity.com

Source repository: Volexity threat-intel @ 3a9d0b5245

Licence: BSD 2-Clause License (stated in the rule's own meta)

“See license at https://github.com/volexity/threat-intel/blob/main/LICENSE.txt”

Copyright notice: Copyright 2022 by Volexity, Inc.

Original rule

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

Rule id: 25775278-5115-5873-957f-9c5d0c8e4f5e

Metadata

osall
os_archall
scan_contextfile,memory
severitycritical
report1TIB-20251104
rule_id12298
version7

Tags:VERDANTBAMBOOBRICKSTORMFILEMEMORY