YARA · Trellix Advanced Research Center
TRELLIX_ARC_Loocipher_Ransomware
Rule to detect Loocipher ransomware
- Autor
- Marc Rivero | McAfee ATR Team
- Fecha
- 2019-12-05
- Modificada
- 2020-08-14
- Puntuación / Calidad
- 75 / 70
Qué detecta esta regla
Rule to detect Loocipher ransomware
Familia de malware asociada: Loocipher.
Objetivos: PE de Windows.
Define 20 patrones (20 de texto, 0 hex, 0 regex).
Resumen generado a partir de los metadatos y la condición de la regla.
Código de la regla
rule TRELLIX_ARC_Loocipher_Ransomware : RANSOMWARE FILE
{
meta:
= "Rule to detect Loocipher ransomware"
= "Marc Rivero | McAfee ATR Team"
= "d18efe09-4b04-5089-84f8-aead63fc19bb"
= "2019-12-05"
= "2020-08-14"
= "https://www.mcafee.com/blogs/other-blogs/mcafee-labs/analysis-of-loocipher-a-new-ransomware-family-observed-this-year/"
= "https://github.com/advanced-threat-research/Yara-Rules//blob/1919562a59f190bda60c982424f6a24c542ee3e0/ransomware/RANSOM_Loocipher.yar#L1-L46"
= "https://github.com/advanced-threat-research/Yara-Rules//blob/1919562a59f190bda60c982424f6a24c542ee3e0/LICENSE"
= "7720aa6eb206e589493e440fec8690ceef9e70b5e6712a9fec9208c03cac7ff0"
= "36e452c34fd9bbb521f5422bffdbb71991de66f3faa29292dc3f27c8d7e1f9ba"
= 75
= 70
= "RANSOMWARE, FILE"
= "v1"
= "ransomware"
= "Ransom:W32/Loocipher"
= "Cybercrime"
= "Unknown"
strings:
$x1 = "c:\\users\\usuario\\desktop\\cryptolib\\gfpcrypt.h" fullword ascii
$x2 = "c:\\users\\usuario\\desktop\\cryptolib\\eccrypto.h" fullword ascii
$s3 = "c:\\users\\usuario\\desktop\\cryptolib\\gf2n.h" fullword ascii
$s4 = "c:\\users\\usuario\\desktop\\cryptolib\\queue.h" fullword ascii
$s5 = "ThreadUserTimer: GetThreadTimes failed with error " fullword ascii
$s6 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::operator *" fullword wide
$s7 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::operator +=" fullword wide
$s8 = "std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::operator []" fullword wide
$s9 = "std::vector<struct CryptoPP::ProjectivePoint,class std::allocator<struct CryptoPP::ProjectivePoint> >::operator []" fullword wide
$s10 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::operator *" fullword wide
$s11 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::operator +=" fullword wide
$s12 = "std::vector<struct CryptoPP::WindowSlider,class std::allocator<struct CryptoPP::WindowSlider> >::operator []" fullword wide
$s13 = "std::istreambuf_iterator<char,struct std::char_traits<char> >::operator ++" fullword wide
$s14 = "std::istreambuf_iterator<char,struct std::char_traits<char> >::operator *" fullword wide
$s15 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::_Compat" fullword wide
$s16 = "std::vector<class CryptoPP::PolynomialMod2,class std::allocator<class CryptoPP::PolynomialMod2> >::operator []" fullword wide
$s17 = "DL_ElgamalLikeSignatureAlgorithm: this signature scheme does not support message recovery" fullword ascii
$s18 = "std::vector<struct CryptoPP::ECPPoint,class std::allocator<struct CryptoPP::ECPPoint> >::operator []" fullword wide
$s19 = "std::vector<struct CryptoPP::EC2NPoint,class std::allocator<struct CryptoPP::EC2NPoint> >::operator []" fullword wide
$s20 = "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::_Compat" fullword wide
condition:
( uint16( 0 ) == 0x5a4d and filesize < 17000KB and ( 1 of ( $x* ) and 4 of them ) ) or ( all of them )
}
Cadenas (20 patrones)
| Identificador | Tipo | Valor | Modificadores |
|---|---|---|---|
| $x1 | texto | "c:\\users\\usuario\\desktop\\cryptolib\\gfpcrypt.h" | fullword ascii |
| $x2 | texto | "c:\\users\\usuario\\desktop\\cryptolib\\eccrypto.h" | fullword ascii |
| $s3 | texto | "c:\\users\\usuario\\desktop\\cryptolib\\gf2n.h" | fullword ascii |
| $s4 | texto | "c:\\users\\usuario\\desktop\\cryptolib\\queue.h" | fullword ascii |
| $s5 | texto | "ThreadUserTimer: GetThreadTimes failed with error " | fullword ascii |
| $s6 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::operator *" | fullword wide |
| $s7 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::operator +=" | fullword wide |
| $s8 | texto | "std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::operator []" | fullword wide |
| $s9 | texto | "std::vector<struct CryptoPP::ProjectivePoint,class std::allocator<struct CryptoPP::ProjectivePoint> >::operator []" | fullword wide |
| $s10 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::operator *" | fullword wide |
| $s11 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::operator +=" | fullword wide |
| $s12 | texto | "std::vector<struct CryptoPP::WindowSlider,class std::allocator<struct CryptoPP::WindowSlider> >::operator []" | fullword wide |
| $s13 | texto | "std::istreambuf_iterator<char,struct std::char_traits<char> >::operator ++" | fullword wide |
| $s14 | texto | "std::istreambuf_iterator<char,struct std::char_traits<char> >::operator *" | fullword wide |
| $s15 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<struct CryptoPP::ProjectivePoint> > >::_Compat" | fullword wide |
| $s16 | texto | "std::vector<class CryptoPP::PolynomialMod2,class std::allocator<class CryptoPP::PolynomialMod2> >::operator []" | fullword wide |
| $s17 | texto | "DL_ElgamalLikeSignatureAlgorithm: this signature scheme does not support message recovery" | fullword ascii |
| $s18 | texto | "std::vector<struct CryptoPP::ECPPoint,class std::allocator<struct CryptoPP::ECPPoint> >::operator []" | fullword wide |
| $s19 | texto | "std::vector<struct CryptoPP::EC2NPoint,class std::allocator<struct CryptoPP::EC2NPoint> >::operator []" | fullword wide |
| $s20 | texto | "std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class CryptoPP::Integer> > >::_Compat" | fullword wide |
Condición
( uint16( 0 ) == 0x5a4d and filesize < 17000KB and ( 1 of ( $x* ) and 4 of them ) ) or ( all of them )En palabras sencillas (Heurística)
- El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
- El archivo debe ocupar menos de 17000KB (un límite barato que descarta archivos grandes).
- Deben coincidir todos los patrones de la regla.
- Deben coincidir al menos 1 patrones de ( $x* ).
- Deben coincidir al menos 4 patrones de la regla.
Prueba esta regla en tu navegador
Arrastra un archivo para escanearlo con esta regla usando YARA-X compilado a WebAssembly. No se sube nada.
Hashes de muestras
Hashes de las muestras que el autor lista en los metadatos de la regla (búscalos en tu plataforma de threat intelligence).
- 7720aa6eb206e589493e440fec8690ceef9e70b5e6712a9fec9208c03cac7ff0
Licencia y atribución
Autor: Marc Rivero | McAfee ATR Team
Repositorio de origen: Trellix Advanced Research Center @ 1919562a59
Licencia: Apache License 2.0 (licencia del repositorio)
Obtenida a través de YARA Forge 20260927, que añade a los nombres el prefijo de la fuente y campos meta normalizados.
Id de la regla: d18efe09-4b04-5089-84f8-aead63fc19bb
Metadatos
| rule_version | v1 |
|---|---|
| malware_type | ransomware |
| malware_family | Ransom:W32/Loocipher |
| actor_type | Cybercrime |
| actor_group | Unknown |
Etiquetas:RANSOMWAREFILE
Reglas relacionadas
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2026-09-01
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2026-09-01
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-03-17
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-02-23
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-04-06
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-08-11
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-07-19
- MalwareTrellix Advanced Research Center· Marc Rivero | McAfee ATR Team· 2020-07-13