YARA · Volexity threat-intel
VOLEXITY_Apt_Malware_Any_Dotnet_Aot_Plenet
Detect PLENET, a multiplatform malware compile with native AOT.
- Author
- threatintel@volexity.com
- Date
- 2025-09-22
- Modified
- 2025-10-30
- Score / Quality
- 75 / 80
What this rule detects
Detect PLENET, a multiplatform malware compile with native AOT.
It defines 9 patterns (9 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule VOLEXITY_Apt_Malware_Any_Dotnet_Aot_Plenet : VERDANTBAMBOO PLENET FILE MEMORY
{
meta:
= "Detect PLENET, a multiplatform malware compile with native AOT."
= "threatintel@volexity.com"
= "615d7c43-0128-5cfa-a080-6ece5d2dc029"
= "2025-09-22"
= "2025-10-30"
= "https://github.com/volexity/threat-intel"
= "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/2026/2026-06-04 VerdantBamboo/rules.yar#L1-L31"
= "https://github.com/volexity/threat-intel/blob/3a9d0b52459877ee866a9a0ba06e60059b778c77/LICENSE.txt"
= "eb141a43958802727a6c813452450c10b92704bea4474ee5fd87c0a1be326e2e"
= "67d8f7fbc2986b1068a9c557cf85ba83469e3fb7f2433bd10c7ad740a4b0e717"
= 75
= 80
= "VERDANTBAMBOO, PLENET, FILE, MEMORY"
= "all"
= "all"
= "file,memory"
= "critical"
= "TIB-20251104"
= "See license at https://github.com/volexity/threat-intel/blob/main/LICENSE.txt"
= 12367
= 4
strings:
$str1 = "[!] Bad dat" wide
$str2 = "[!] Connection error. Kill Pty" wide
$str3 = "[!] Error : Plexor is nul" wide
$str4 = "[!] Unkown message type" wide
$str5 = "[*] Disposing.." wide
$str6 = "Lack port ':" wide
$str7 = "IPv6 port error ':" wide
$str8 = "this.existingPipeGiven." wide
$str9 = "port must within 0~6553" wide
condition:
4 of them
}
Strings (9 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $str1 | text | "[!] Bad dat" | wide |
| $str2 | text | "[!] Connection error. Kill Pty" | wide |
| $str3 | text | "[!] Error : Plexor is nul" | wide |
| $str4 | text | "[!] Unkown message type" | wide |
| $str5 | text | "[*] Disposing.." | wide |
| $str6 | text | "Lack port ':" | wide |
| $str7 | text | "IPv6 port error ':" | wide |
| $str8 | text | "this.existingPipeGiven." | wide |
| $str9 | text | "port must within 0~6553" | wide |
Condition
4 of themIn plain words (Heuristic)
- At least 4 patterns in the rule 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.
References
Sample hashes
Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).
- eb141a43958802727a6c813452450c10b92704bea4474ee5fd87c0a1be326e2e
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.
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: 615d7c43-0128-5cfa-a080-6ece5d2dc029
Metadata
| os | all |
|---|---|
| os_arch | all |
| scan_context | file,memory |
| severity | critical |
| report1 | TIB-20251104 |
| rule_id | 12367 |
| version | 4 |
Tags:VERDANTBAMBOOPLENETFILEMEMORY
Related rules
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2026-02-24
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2025-09-22
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2025-09-04
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2025-09-05
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2025-09-05
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2024-07-30
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-07-21
- APT / threat actorVolexity threat-intel· threatintel@volexity.com· 2023-08-17