YARA · SEKOIA.IO Community
SEKOIA_Infostealer_Win_Xfiles
Detect the X-FILES infostealer based on specific strings
- Author
- Sekoia.io
- Date
- 2022-02-03
- Modified
- 2024-12-19
- Score / Quality
- 75 / 78
What this rule detects
Detect the X-FILES infostealer based on specific strings
Associated malware family: Xfiles.
Targets: Windows PE.
It defines 31 patterns (31 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
infostealer-win-xfiles.yarDetection Rule License 1.1
rule SEKOIA_Infostealer_Win_Xfiles : FILE
{
meta:
= "Detect the X-FILES infostealer based on specific strings"
= "Sekoia.io"
= "3ad3ee19-6be8-484b-943c-05813cdcbd18"
= "2022-02-03"
= "2024-12-19"
= "https://twitter.com/3xp0rtblog/status/1375206169384521730"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/yara_rules/infostealer_win_xfiles.yar#L1-L50"
= "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/LICENSE.md"
= "404ee02fa1905f49c3c3ca525cfb3c5ba1d2ec46554239035c1891d21f547a2c"
= 75
= 78
= "FILE"
= "1.0"
= "TLP:CLEAR"
strings:
$xfi0 = "Telegram bot - @XFILESShop_Bot" wide
$xfi1 = "Telegram support - @XFILES_Seller" wide
$brw0 = "\\Google\\Chrome\\User Data\\Default\\Network\\Cookies" wide
$brw1 = "\\Chromium\\User Data\\Default\\Cookies" wide
$brw2 = "\\Slimjet\\User Data\\Default\\Cookies" wide
$brw3 = "\\Vivaldi\\User Data\\Default\\Cookies" wide
$brw4 = "\\Opera Software\\Opera GX Stable\\Cookies" wide
$brw5 = "\\Opera Software\\Opera Stable\\Cookies" wide
$crp00 = "Tronlink" wide
$crp01 = "NiftyWallet" wide
$crp02 = "MetaMask" wide
$crp03 = "MathWallet" wide
$crp04 = "Coinbase" wide
$crp05 = "BinanceChain" wide
$crp06 = "GuardaWallet" wide
$crp07 = "EqualWallet" wide
$crp08 = "BitAppWallet" wide
$crp09 = "iWallet" wide
$crp10 = "Wombat" wide
$crp11 = "Zcash" wide
$crp12 = "Armory" wide
$crp13 = "Bytecoin" wide
$crp14 = "Jaxx" wide
$crp15 = "Exodus" wide
$crp16 = "Ethereum" wide
$crp17 = "AtomicWallet" wide
$crp18 = "Guarda" wide
$crp19 = "Coinomi" wide
$crp20 = "Litecoin" wide
$crp21 = "Dash" wide
$crp22 = "Bitcoin" wide
condition:
uint16( 0 ) == 0x5A4D and any of ( $xfi* ) or 5 of ( $brw* ) and 20 of ( $crp* )
}
Strings (31 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $xfi0 | text | "Telegram bot - @XFILESShop_Bot" | wide |
| $xfi1 | text | "Telegram support - @XFILES_Seller" | wide |
| $brw0 | text | "\\Google\\Chrome\\User Data\\Default\\Network\\Cookies" | wide |
| $brw1 | text | "\\Chromium\\User Data\\Default\\Cookies" | wide |
| $brw2 | text | "\\Slimjet\\User Data\\Default\\Cookies" | wide |
| $brw3 | text | "\\Vivaldi\\User Data\\Default\\Cookies" | wide |
| $brw4 | text | "\\Opera Software\\Opera GX Stable\\Cookies" | wide |
| $brw5 | text | "\\Opera Software\\Opera Stable\\Cookies" | wide |
| $crp00 | text | "Tronlink" | wide |
| $crp01 | text | "NiftyWallet" | wide |
| $crp02 | text | "MetaMask" | wide |
| $crp03 | text | "MathWallet" | wide |
| $crp04 | text | "Coinbase" | wide |
| $crp05 | text | "BinanceChain" | wide |
| $crp06 | text | "GuardaWallet" | wide |
| $crp07 | text | "EqualWallet" | wide |
| $crp08 | text | "BitAppWallet" | wide |
| $crp09 | text | "iWallet" | wide |
| $crp10 | text | "Wombat" | wide |
| $crp11 | text | "Zcash" | wide |
| $crp12 | text | "Armory" | wide |
| $crp13 | text | "Bytecoin" | wide |
| $crp14 | text | "Jaxx" | wide |
| $crp15 | text | "Exodus" | wide |
| $crp16 | text | "Ethereum" | wide |
| $crp17 | text | "AtomicWallet" | wide |
| $crp18 | text | "Guarda" | wide |
| $crp19 | text | "Coinomi" | wide |
| $crp20 | text | "Litecoin" | wide |
| $crp21 | text | "Dash" | wide |
| $crp22 | text | "Bitcoin" | wide |
Condition
uint16( 0 ) == 0x5A4D and any of ( $xfi* ) or 5 of ( $brw* ) and 20 of ( $crp* )In plain words (Heuristic)
- The file must start with “MZ” — a Windows executable (PE).
- At least one pattern in ( $xfi* ) must match.
- At least 5 patterns in ( $brw* ) must match.
- At least 20 patterns in ( $crp* ) 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.
Licence & attribution
Author: Sekoia.io
Source repository: SEKOIA.IO Community @ a438a5901a
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: 3ad3ee19-6be8-484b-943c-05813cdcbd18
Metadata
| version | 1.0 |
|---|---|
| classification | TLP:CLEAR |
Tags:FILE
Related rules
- MalwareditekSHen detection· ditekSHen· 2020-11-06
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-07-16
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-08-23
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-04-22
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-07-23
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-10-20
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-03-20
- MalwareSEKOIA.IO Community· Sekoia.io· 2024-03-20