├── 1012 └── 1012.yar ├── 1013 └── 1013.yar ├── 1014 └── 1014.yar ├── 1017 └── 1017.yar ├── 1051 └── 1051.yar ├── 3521 └── 3521.yar ├── 3580 └── 3580.yar ├── 3584 └── 3584.yar ├── 3930 └── 3930.yar ├── 4301 └── 4301.yar ├── 4485 └── 4485.yar ├── 4641 └── 4641.yar ├── 4778 └── 4778.yar ├── 5087 └── 5087.yar ├── 5295 └── 5295.yar ├── 5426 └── 5426.yar ├── 5582 └── 5582.yar ├── 5794 └── 5794.yar ├── 6898 └── 6898.yar ├── 7685 └── 7685.yar ├── 8099 └── 8099.yar ├── 8734 └── 8734.yar ├── 9438 └── 9438.yar ├── 9893 └── 9893.yar ├── 11462 └── 11462.yar ├── 12647 └── 12647.yar ├── 12780 └── 12780.yar ├── 12993 └── 12993.yar ├── 13842 └── 13842.yar ├── 14335 └── 14335.yar ├── 14373 └── 14373.yar ├── 15184 └── 15184.yar ├── 17333 └── 17333.yar ├── 17386 └── 17386.yar ├── 18041 └── 18041.yar ├── 18190 └── 18190.yar ├── 18364 └── 18364.yar ├── 18543 └── 18543.yar ├── 19172 └── 19172.yar ├── 19208 └── 19208.yar ├── 19438 └── 19438.yar ├── 19530 └── 19530.yar ├── 19772 └── 19772.yar ├── 21619 └── 21619.yar ├── 23869 └── 23869.yar ├── 24952 └── 24952.yar ├── 25590 └── 25590.yar ├── 26364 └── 26364.yar ├── 27138 └── 27138.yar ├── 27244 └── 27244.yar ├── 27899 └── 27899.yar ├── .yara-ci.yml ├── LICENSE ├── README.md ├── compilation └── Cobalt Strike, a Defender’s Guide └── index.yar /.yara-ci.yml: -------------------------------------------------------------------------------- 1 | branches: 2 | accept: 3 | - "**" 4 | files: 5 | accept: 6 | - "**.yar" 7 | - "**.yara" 8 | false_positives: 9 | ignore: 10 | - rule: "sig_6898_dcrypt" 11 | - rule: "unlocker" 12 | -------------------------------------------------------------------------------- /1012/1012.yar: -------------------------------------------------------------------------------- 1 | /* 2 | YARA Rule Set 3 | Author: The DFIR Report 4 | Date: 2021-01-10 5 | Identifier: Case 1012 Trickbot Still Alive and Well 6 | Reference: https://thedfirreport.com/2021/01/11/trickbot-still-alive-and-well/ 7 | */ 8 | 9 | /* Rule Set ----------------------------------------------------------------- */ 10 | 11 | import "pe" 12 | 13 | rule cobalt_strike_TSE588C { 14 | meta: 15 | description = "exe - file TSE588C.exe" 16 | author = "The DFIR Report" 17 | reference = "https://thedfirreport.com" 18 | date = "2021-01-05" 19 | hash1 = "32c13df5d411bf5a114e2021bbe9ffa5062ed1db91075a55fe4182b3728d62fe" 20 | strings: 21 | $s1 = "mneploho86.dll" fullword ascii 22 | $s2 = "C:\\projects\\Project1\\Project1.pdb" fullword ascii 23 | $s3 = "AppPolicyGetProcessTerminationMethod" fullword ascii 24 | $s4 = "AppPolicyGetThreadInitializationType" fullword ascii 25 | $s5 = "boltostrashno.nfo" fullword ascii 26 | $s6 = "operator<=>" fullword ascii 27 | $s7 = "operator co_await" fullword ascii 28 | $s8 = "?7; ?<= log2" fullword ascii 36 | $s16 = "\\khk|k|4.fzz~4!!majk d" fullword ascii 37 | $s17 = "network reset" fullword ascii /* Goodware String - occured 567 times */ 38 | $s18 = "wrong protocol type" fullword ascii /* Goodware String - occured 567 times */ 39 | $s19 = "owner dead" fullword ascii /* Goodware String - occured 567 times */ 40 | $s20 = "connection already in progress" fullword ascii /* Goodware String - occured 567 times */ 41 | condition: 42 | uint16(0) == 0x5a4d and filesize < 900KB and 43 | ( pe.imphash() == "bb8169128c5096ea026d19888c139f1a" or 10 of them ) 44 | } 45 | 46 | rule trickbot_kpsiwn { 47 | meta: 48 | description = "exe - file kpsiwn.exe" 49 | author = "The DFIR Report" 50 | reference = "https://thedfirreport.com" 51 | date = "2021-01-05" 52 | hash1 = "e410123bde6a317cadcaf1fa3502301b7aad6f528d59b6b60c97be077ef5da00" 53 | strings: 54 | $s1 = "C:\\Windows\\explorer.exe" fullword ascii 55 | $s2 = "constructor or from DllMain." fullword ascii 56 | $s3 = "esource" fullword ascii 57 | $s4 = "Snapping window demonstration" fullword wide 58 | $s5 = "EEEEEEEEEFFB" ascii 59 | $s6 = "EEEEEEEEEEFC" ascii 60 | $s7 = "EEEEEEEEEEFD" ascii 61 | $s8 = "DINGXXPADDINGPADDINGXXPADDINGPADDINGXXPAD" fullword ascii 62 | $s9 = "EFEEEEEEEEEB" ascii 63 | $s10 = "e[!0LoG" fullword ascii 64 | $s11 = ">*P" fullword ascii 65 | $s12 = "o};k- " fullword ascii 66 | $s13 = "YYh V+ i" fullword ascii 67 | $s14 = "fdlvic" fullword ascii 68 | $s15 = "%FD%={" fullword ascii 69 | $s16 = "QnzwM#`8" fullword ascii 70 | $s17 = "xfbS/&s:" fullword ascii 71 | $s18 = "1#jOSV9\"" fullword ascii 72 | $s19 = "JxYt1L=]" fullword ascii 73 | $s20 = "a3NdcMFSZEmJwXod1oyI@Tj4^mY+UsZqK3>fTg" fullword ascii 89 | $s10 = "SoftPerfect Network Scanner" fullword wide 90 | $s11 = "TREMOTESERVICEEDITFORM" fullword wide 91 | $s12 = "TUSERPROMPTFORM" fullword wide 92 | $s13 = "TREMOTEWMIFORM" fullword wide 93 | $s14 = "TPUBLICIPFORM" fullword wide 94 | $s15 = "TREMOTESERVICESFORM" fullword wide 95 | $s16 = "TREMOTEWMIEDITFORM" fullword wide 96 | $s17 = "TREMOTEFILEEDITFORM" fullword wide 97 | $s18 = "TREMOTEREGISTRYFORM" fullword wide 98 | $s19 = "TPASTEIPADDRESSFORM" fullword wide 99 | $s20 = "TREMOTEREGISTRYEDITFORM" fullword wide 100 | condition: 101 | uint16(0) == 0x5a4d and filesize < 2000KB and 102 | ( pe.imphash() == "e9d20acdeaa8947f562cf14d3976522e" or 8 of them ) 103 | } 104 | -------------------------------------------------------------------------------- /1014/1014.yar: -------------------------------------------------------------------------------- 1 | /* 2 | YARA Rule Set 3 | Author: The DFIR Report 4 | Date: 2021-01-18 5 | Identifier: Case 1014 All That for a Coinminer? 6 | Reference: https://thedfirreport.com/2021/01/18/all-that-for-a-coinminer/ 7 | */ 8 | 9 | /* Rule Set ----------------------------------------------------------------- */ 10 | 11 | import "pe" 12 | 13 | rule miner_exe_svshost { 14 | meta: 15 | description = "exe - file svshost.exe" 16 | author = "The DFIR Report" 17 | reference = "https://thedfirreport.com" 18 | date = "2021-01-18" 19 | hash1 = "ba94d5539a4ed65ac7a94a971dbb463a469f8671c767f515d271223078983442" 20 | strings: 21 | $s1 = "* The error occured in hwloc %s inside process `%s', while" fullword ascii 22 | $s2 = "__kernel void find_shares(__global const uint64_t* hashes,uint64_t target,uint32_t start_nonce,__global uint32_t* shares)" fullword ascii 23 | $s3 = "lSystem.Resources.ResourceReader, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.R" ascii 24 | $s4 = "svshost.exe" fullword wide 25 | $s5 = "Could not read dumped cpuid file %s, ignoring cpuiddump." fullword ascii 26 | $s6 = "%PROGRAMFILES%\\NVIDIA Corporation\\NVSMI\\nvml.dll" fullword ascii 27 | $s7 = "void blake2b_512_process_single_block(ulong *h,const ulong* m,uint blockTemplateSize)" fullword ascii 28 | $s8 = "* the input XML was generated by hwloc %s inside process `%s'." fullword ascii 29 | $s9 = "blake2b_512_process_single_block(hash,m,blockTemplateSize);" fullword ascii 30 | $s10 = "F:\\Apps\\cSharp\\myMinerup\\myM\\myM\\obj\\Debug\\svshost.pdb" fullword ascii 31 | $s11 = "|attrib +h svshost.exe" fullword ascii 32 | $s12 = "Found non-x86 dumped cpuid summary in %s: %s" fullword ascii 33 | $s13 = "GetCurrentProcessorNumberExProc || (GetCurrentProcessorNumberProc && nr_processor_groups == 1)" fullword ascii 34 | $s14 = "__kernel void blake2b_initial_hash(__global void *out,__global const void* blockTemplate,uint blockTemplateSize,uint start_nonce" ascii 35 | $s15 = "* hwloc %s received invalid information from the operating system." fullword ascii 36 | $s16 = "__local exec_t* execution_plan=(__local exec_t*)(execution_plan_buf+(get_local_id(0)/8)*RANDOMX_PROGRAM_SIZE*WORKERS_PER_HASH*si" ascii 37 | $s17 = "__kernel void execute_vm(__global void* vm_states,__global void* rounding,__global void* scratchpads,__global const void* datase" ascii 38 | $s18 = "__kernel void execute_vm(__global void* vm_states,__global void* rounding,__global void* scratchpads,__global const void* datase" ascii 39 | $s19 = "__local exec_t* execution_plan=(__local exec_t*)(execution_plan_buf+(get_local_id(0)/8)*RANDOMX_PROGRAM_SIZE*WORKERS_PER_HASH*si" ascii 40 | $s20 = "__kernel void blake2b_initial_hash(__global void *out,__global const void* blockTemplate,uint blockTemplateSize,uint start_nonce" ascii 41 | condition: 42 | uint16(0) == 0x5a4d and filesize < 19000KB and 43 | 8 of them 44 | } 45 | 46 | rule mimikatz_1014 { 47 | meta: 48 | description = "exe - file mimikatz.exe" 49 | author = "The DFIR Report" 50 | reference = "https://thedfirreport.com" 51 | date = "2021-01-18" 52 | hash1 = "99d8d56435e780352a8362dd5cb3857949c6ff5585e81b287527cd6e52a092c1" 53 | strings: 54 | $x1 = "ERROR kuhl_m_lsadump_getUsersAndSamKey ; kull_m_registry_RegOpenKeyEx SAM Accounts (0x%08x)" fullword wide 55 | $x2 = "ERROR kuhl_m_lsadump_getUsersAndSamKey ; kull_m_registry_RegOpenKeyEx user (%s)" fullword wide 56 | $x3 = "ERROR kuhl_m_lsadump_lsa ; kull_m_process_getVeryBasicModuleInformationsForName (0x%08x)" fullword wide 57 | $x4 = "ERROR kuhl_m_lsadump_getComputerAndSyskey ; kull_m_registry_RegOpenKeyEx LSA KO" fullword wide 58 | $x5 = "ERROR kuhl_m_lsadump_dcsync ; kull_m_rpc_drsr_ProcessGetNCChangesReply" fullword wide 59 | $x6 = "ERROR kuhl_m_lsadump_trust ; kull_m_process_getVeryBasicModuleInformationsForName (0x%08x)" fullword wide 60 | $x7 = "ERROR kuhl_m_lsadump_getUsersAndSamKey ; kuhl_m_lsadump_getSamKey KO" fullword wide 61 | $x8 = "ERROR kuhl_m_lsadump_lsa_getHandle ; OpenProcess (0x%08x)" fullword wide 62 | $x9 = "ERROR kuhl_m_lsadump_netsync ; I_NetServerTrustPasswordsGet (0x%08x)" fullword wide 63 | $x10 = "ERROR kuhl_m_dpapi_chrome ; Input 'Login Data' file needed (/in:\"%%localappdata%%\\Google\\Chrome\\User Data\\Default\\Login Da" wide 64 | $x11 = "ERROR kuhl_m_kernel_processProtect ; Argument /process:program.exe or /pid:processid needed" fullword wide 65 | $x12 = "ERROR kuhl_m_lsadump_getHash ; Unknow SAM_HASH revision (%hu)" fullword wide 66 | $x13 = "ERROR kuhl_m_lsadump_sam ; kull_m_registry_RegOpenKeyEx (SAM) (0x%08x)" fullword wide 67 | $x14 = "ERROR kull_m_rpc_drsr_ProcessGetNCChangesReply_decrypt ; Checksums don't match (C:0x%08x - R:0x%08x)" fullword wide 68 | $x15 = "ERROR kuhl_m_lsadump_enumdomains_users ; /user or /rid is needed" fullword wide 69 | $x16 = "ERROR kuhl_m_lsadump_changentlm ; Argument /oldpassword: or /oldntlm: is needed" fullword wide 70 | $x17 = "livessp.dll" fullword wide /* reversed goodware string 'lld.pssevil' */ 71 | $x18 = "ERROR kuhl_m_lsadump_enumdomains_users ; SamLookupNamesInDomain: %08x" fullword wide 72 | $x19 = "ERROR kuhl_m_lsadump_getComputerAndSyskey ; kuhl_m_lsadump_getSyskey KO" fullword wide 73 | $x20 = "ERROR kuhl_m_lsadump_getKeyFromGUID ; kuhl_m_lsadump_LsaRetrievePrivateData: 0x%08x" fullword wide 74 | condition: 75 | uint16(0) == 0x5a4d and filesize < 3000KB and 76 | ( pe.imphash() == "a0444dc502edb626311492eb9abac8ec" or 1 of ($x*) ) 77 | } 78 | 79 | rule masscan_1014 { 80 | meta: 81 | description = "exe - file masscan.exe" 82 | author = "The DFIR Report" 83 | reference = "https://thedfirreport.com" 84 | date = "2021-01-18" 85 | hash1 = "de903a297afc249bb7d68fef6c885a4c945d740a487fe3e9144a8499a7094131" 86 | strings: 87 | $x1 = "User-Agent: masscan/1.0 (https://github.com/robertdavidgraham/masscan)" fullword ascii 88 | $s2 = "Usage: masscan [Options] -p{Target-Ports} {Target-IP-Ranges}" fullword ascii 89 | $s3 = "GetProcessAffinityMask() returned error %u" fullword ascii 90 | $s4 = "Via: HTTP/1.1 ir14.fp.bf1.yahoo.com (YahooTrafficServer/1.2.0.13 [c s f ])" fullword ascii 91 | $s5 = "C:\\Documents and Settings\\" fullword ascii 92 | $s6 = "android.com" fullword ascii 93 | $s7 = "youtube.com" fullword ascii 94 | $s8 = "espanol.yahoo.com" fullword ascii 95 | $s9 = "brb.yahoo.com" fullword ascii 96 | $s10 = "malaysia.yahoo.com" fullword ascii 97 | $s11 = "att.yahoo.com" fullword ascii 98 | $s12 = "hsrd.yahoo.com" fullword ascii 99 | $s13 = "googlecommerce.com" fullword ascii 100 | $s14 = "maktoob.yahoo.com" fullword ascii 101 | $s15 = "*.youtube-nocookie.com" fullword ascii 102 | $s16 = "# TARGET SELECTION (IP, PORTS, EXCLUDES)" fullword ascii 103 | $s17 = "www.yahoo.com" fullword ascii 104 | $s18 = "x.509 parser failure: google.com" fullword ascii 105 | $s19 = "-- forced options: -sS -Pn -n --randomize-hosts -v --send-eth" fullword ascii 106 | $s20 = "urchin.com" fullword ascii 107 | condition: 108 | uint16(0) == 0x5a4d and filesize < 700KB and 109 | ( pe.imphash() == "9b0b559e373d62a1c93e615f003f8af8" or 10 of them) 110 | } 111 | 112 | rule XMRig_CPU_mine_1014 { 113 | meta: 114 | description = "exe - file XMRig CPU mine.exe" 115 | author = "The DFIR Report" 116 | reference = "https://thedfirreport.com" 117 | date = "2021-01-18" 118 | hash1 = "a8b2e85b3e0f5de4b82a92b3ca56d2d889a30383a3f9283ae48aec879edd0376" 119 | strings: 120 | $s1 = "* The error occured in hwloc %s inside process `%s', while" fullword ascii 121 | $s2 = "__kernel void find_shares(__global const uint64_t* hashes,uint64_t target,uint32_t start_nonce,__global uint32_t* shares)" fullword ascii 122 | $s3 = "Could not read dumped cpuid file %s, ignoring cpuiddump." fullword ascii 123 | $s4 = "%PROGRAMFILES%\\NVIDIA Corporation\\NVSMI\\nvml.dll" fullword ascii 124 | $s5 = "void blake2b_512_process_single_block(ulong *h,const ulong* m,uint blockTemplateSize)" fullword ascii 125 | $s6 = "* the input XML was generated by hwloc %s inside process `%s'." fullword ascii 126 | $s7 = "blake2b_512_process_single_block(hash,m,blockTemplateSize);" fullword ascii 127 | $s8 = "Found non-x86 dumped cpuid summary in %s: %s" fullword ascii 128 | $s9 = "GetCurrentProcessorNumberExProc || (GetCurrentProcessorNumberProc && nr_processor_groups == 1)" fullword ascii 129 | $s10 = "__kernel void blake2b_initial_hash(__global void *out,__global const void* blockTemplate,uint blockTemplateSize,uint start_nonce" ascii 130 | $s11 = "* hwloc %s received invalid information from the operating system." fullword ascii 131 | $s12 = "__local exec_t* execution_plan=(__local exec_t*)(execution_plan_buf+(get_local_id(0)/8)*RANDOMX_PROGRAM_SIZE*WORKERS_PER_HASH*si" ascii 132 | $s13 = "__kernel void execute_vm(__global void* vm_states,__global void* rounding,__global void* scratchpads,__global const void* datase" ascii 133 | $s14 = "__kernel void execute_vm(__global void* vm_states,__global void* rounding,__global void* scratchpads,__global const void* datase" ascii 134 | $s15 = "__local exec_t* execution_plan=(__local exec_t*)(execution_plan_buf+(get_local_id(0)/8)*RANDOMX_PROGRAM_SIZE*WORKERS_PER_HASH*si" ascii 135 | $s16 = "__kernel void blake2b_initial_hash(__global void *out,__global const void* blockTemplate,uint blockTemplateSize,uint start_nonce" ascii 136 | $s17 = "nvml.dll" fullword ascii 137 | $s18 = "__kernel void Groestl(__global ulong *states,__global uint *BranchBuf,__global uint *output,ulong Target,uint Threads)" fullword ascii 138 | $s19 = "__kernel void Blake(__global ulong *states,__global uint *BranchBuf,__global uint *output,ulong Target,uint Threads)" fullword ascii 139 | $s20 = "__kernel void JH(__global ulong *states,__global uint *BranchBuf,__global uint *output,ulong Target,uint Threads)" fullword ascii 140 | condition: 141 | uint16(0) == 0x5a4d and filesize < 19000KB and 142 | ( pe.imphash() == "5c21c3e071f2116dcdb008ad5fc936d4" or 8 of them ) 143 | } 144 | -------------------------------------------------------------------------------- /1051/1051.yar: -------------------------------------------------------------------------------- 1 | /* 2 | YARA Rule Set 3 | Author: The DFIR Report 4 | Date: 2021-03-29 5 | Identifier: Case 1051 Sodinokibi (aka REvil) Ransomware 6 | Reference: https://thedfirreport.com/2021/03/29/sodinokibi-aka-revil-ransomware/ 7 | */ 8 | 9 | /* Rule Set ----------------------------------------------------------------- */ 10 | 11 | import "pe" 12 | 13 | rule Sodinokibi_032021 { 14 | meta: 15 | description = "files - file DomainName.exe" 16 | author = "The DFIR Report" 17 | reference = "https://thedfirreport.com" 18 | date = "2021-03-21" 19 | hash1 = "2896b38ec3f5f196a9d127dbda3f44c7c29c844f53ae5f209229d56fd6f2a59c" 20 | strings: 21 | $s1 = "vmcompute.exe" fullword wide 22 | $s2 = "vmwp.exe" fullword wide 23 | $s3 = "bootcfg /raw /a /safeboot:network /id 1" fullword ascii 24 | $s4 = "bcdedit /set {current} safeboot network" fullword ascii 25 | $s5 = "7+a@P>:N:0!F$%I-6MBEFb M" fullword ascii 26 | $s6 = "jg:\"\\0=Z" fullword ascii 27 | $s7 = "ERR0R D0UBLE RUN!" fullword wide 28 | $s8 = "VVVVVPQ" fullword ascii 29 | $s9 = "VVVVVWQ" fullword ascii 30 | $s10 = "Running" fullword wide /* Goodware String - occured 159 times */ 31 | $s11 = "expand 32-byte kexpand 16-byte k" fullword ascii 32 | $s12 = "9RFIT\"&" fullword ascii 33 | $s13 = "jZXVf9F" fullword ascii 34 | $s14 = "tCWWWhS=@" fullword ascii 35 | $s15 = "vmms.exe" fullword wide /* Goodware String - occured 1 times */ 36 | $s16 = "JJwK9Zl" fullword ascii 37 | $s17 = "KkT37uf4nNh2PqUDwZqxcHUMVV3yBwSHO#K" fullword ascii 38 | $s18 = "0*090}0" fullword ascii /* Goodware String - occured 1 times */ 39 | $s19 = "5)5I5a5" fullword ascii /* Goodware String - occured 1 times */ 40 | $s20 = "7-7H7c7" fullword ascii /* Goodware String - occured 1 times */ 41 | condition: 42 | uint16(0) == 0x5a4d and filesize < 400KB and 43 | ( pe.imphash() == "031931d2f2d921a9d906454d42f21be0" or 8 of them ) 44 | } 45 | 46 | rule icedid_032021_1 { 47 | meta: 48 | description = "files - file skull-x64.dat" 49 | author = "The DFIR Report" 50 | reference = "https://thedfirreport.com" 51 | date = "2021-03-21" 52 | hash1 = "59a2a5fae1c51afbbf1bf8c6eb0a65cb2b8575794e3890f499f8935035e633fc" 53 | strings: 54 | $s1 = "update" fullword ascii /* Goodware String - occured 207 times */ 55 | $s2 = "PstmStr" fullword ascii 56 | $s3 = "mRsx0k/" fullword wide 57 | $s4 = "D$0lzK" fullword ascii 58 | $s5 = "A;Zts}H" fullword ascii 59 | condition: 60 | uint16(0) == 0x5a4d and filesize < 100KB and 61 | ( pe.imphash() == "67a065c05a359d287f1fed9e91f823d5" and ( pe.exports("PstmStr") and pe.exports("update") ) or all of them ) 62 | } 63 | 64 | rule icedid_032021_2 { 65 | meta: 66 | description = "1 - file license.dat" 67 | author = "The DFIR Report" 68 | reference = "https://thedfirreport.com" 69 | date = "2021-03-21" 70 | hash1 = "45b6349ee9d53278f350b59d4a2a28890bbe9f9de6565453db4c085bb5875865" 71 | strings: 72 | $s1 = "+ M:{`n-" fullword ascii 73 | $s2 = "kwzzdd" fullword ascii 74 | $s3 = "w5O- >z" fullword ascii 75 | $s4 = "RRlK8n@~" fullword ascii 76 | $s5 = "aQXDUkBC" fullword ascii 77 | $s6 = "}i.ZSj*" fullword ascii 78 | $s7 = "kLeSM?" fullword ascii 79 | $s8 = "qmnIqD\")P" fullword ascii 80 | $s9 = "aFAeU!," fullword ascii 81 | $s10 = "Qjrf\"Q" fullword ascii 82 | $s11 = "PTpc,!P#" fullword ascii 83 | $s12 = "r@|JZOkfmT2" fullword ascii 84 | $s13 = "aPvBO,4" fullword ascii 85 | $s14 = ">fdFhl^S8Z" fullword ascii 86 | $s15 = "[syBE0\\" fullword ascii 87 | $s16 = "`YFOr.JH" fullword ascii 88 | $s17 = "C6ZVVF j7}" fullword ascii 89 | $s18 = "LPlagce" fullword ascii 90 | $s19 = "NLeF_-e`" fullword ascii 91 | $s20 = "HRRF|}O" fullword ascii 92 | condition: 93 | uint16(0) == 0x43da and filesize < 1000KB and 94 | 8 of them 95 | } 96 | -------------------------------------------------------------------------------- /12647/12647.yar: -------------------------------------------------------------------------------- 1 | /* 2 | YARA Rule Set 3 | Author: The DFIR Report 4 | Date: 2022-04-24 5 | Identifier: Quantum Ransomware - Case 12647 6 | Reference: https://thedfirreport.com/2022/04/25/quantum-ransomware/ 7 | */ 8 | 9 | /* Rule Set ----------------------------------------------------------------- */ 10 | 11 | import "pe" 12 | 13 | rule docs_invoice_173 { 14 | meta: 15 | description = "IcedID - file docs_invoice_173.iso" 16 | author = "The DFIR Report" 17 | reference = "https://thedfirreport.com/2022/04/25/quantum-ransomware/" 18 | date = "2022-04-24" 19 | hash1 = "5bc00ad792d4ddac7d8568f98a717caff9d5ef389ed355a15b892cc10ab2887b" 20 | strings: 21 | $x1 = "dar.dll,DllRegisterServer!%SystemRoot%\\System32\\SHELL32.dll" fullword wide 22 | $x2 = "C:\\Windows\\System32\\rundll32.exe" fullword ascii 23 | $s3 = "C:\\Users\\admin\\Desktop\\data" fullword wide 24 | $s4 = "Desktop (C:\\Users\\admin)" fullword wide 25 | $s5 = "AppPolicyGetProcessTerminationMethod" fullword ascii 26 | $s6 = "1t3Eo8.dll" fullword ascii 27 | $s7 = ")..\\..\\..\\..\\Windows\\System32\\rundll32.exe" fullword wide 28 | $s8 = "DAR.DLL." fullword ascii 29 | $s9 = "dar.dll:h" fullword wide 30 | $s10 = "document.lnk" fullword wide 31 | $s11 = "DOCUMENT.LNK" fullword ascii 32 | $s12 = "6c484a379420bc181ea93528217b7ebf50eae9cb4fc33fb672f26ffc4ab464e29ba2c0acf9e19728e70ef2833eb4d4ab55aafe3f4667e79c188aa8ab75702520" ascii 33 | $s13 = "03b9db8f12f0242472abae714fbef30d7278c4917617dc43b61a81951998d867efd5b8a2ee9ff53ea7fa4110c9198a355a5d7f3641b45f3f8bb317aac02aa1fb" ascii 34 | $s14 = "d1e5711e46fcb02d7cc6aa2453cfcb8540315a74f93c71e27fa0cf3853d58b979d7bb7c720c02ed384dea172a36916f1bb8b82ffd924b720f62d665558ad1d8c" ascii 35 | $s15 = "7d0bfdbaac91129f5d74f7e71c1c5524690343b821a541e8ba8c6ab5367aa3eb82b8dd0faee7bf6d15b972a8ae4b320b9369de3eb309c722db92d9f53b6ace68" ascii 36 | $s16 = "89dd0596b7c7b151bf10a1794e8f4a84401269ad5cc4af9af74df8b7199fc762581b431d65a76ecbff01e3cec318b463bce59f421b536db53fa1d21942d48d93" ascii 37 | $s17 = "8021dc54625a80e14f829953cc9c4310b6242e49d0ba72eedc0c04383ac5a67c0c4729175e0e662c9e78cede5882532de56a5625c1761aa6fd46b4aefe98453a" ascii 38 | $s18 = "24ed05de22fc8d3f76c977faf1def1d729c6b24abe3e89b0254b5b913395ee3487879287388e5ceac4b46182c2072ad1aa4f415ed6ebe515d57f4284ae068851" ascii 39 | $s19 = "827da8b743ba46e966706e7f5e6540c00cb1205811383a2814e1d611decfc286b1927d20391b22a0a31935a9ab93d7f25e6331a81d13db6d10c7a771e82dfd8b" ascii 40 | $s20 = "7c33d9ad6872281a5d7bf5984f537f09544fdee50645e9846642206ea4a81f70b27439e6dcbe6fdc1331c59bf3e2e847b6195e8ed2a51adaf91b5e615cece1d3" ascii 41 | condition: 42 | uint16(0) == 0x0000 and filesize < 600KB and 43 | 1 of ($x*) and 4 of them 44 | } 45 | 46 | rule quantum_license { 47 | meta: 48 | description = "IcedID - file license.dat" 49 | author = "The DFIR Report" 50 | reference = "https://thedfirreport.com/2022/04/25/quantum-ransomware/" 51 | date = "2022-04-24" 52 | hash1 = "84f016ece77ddd7d611ffc0cbb2ce24184aeee3a2fdbb9d44d0837bc533ba238" 53 | strings: 54 | $s1 = "W* |[h" fullword ascii 55 | $s2 = "PSHN,;x" fullword ascii 56 | $s3 = "ephu\"W" fullword ascii 57 | $s4 = "LwUw9\\" fullword ascii 58 | $s5 = "VYZP~pN," fullword ascii 59 | $s6 = "eRek?@" fullword ascii 60 | $s7 = "urKuEqR" fullword ascii 61 | $s8 = "1zjWa{`!" fullword ascii 62 | $s9 = "YHAV{tl" fullword ascii 63 | $s10 = "bwDU?u" fullword ascii 64 | $s11 = "SJbW`!W" fullword ascii 65 | $s12 = "BNnEx1k" fullword ascii 66 | $s13 = "SEENI3=" fullword ascii 67 | $s14 = "Bthw?:'H*" fullword ascii 68 | $s15 = "NfGHNHC" fullword ascii 69 | $s16 = "xUKlrl'>`" fullword ascii 70 | $s17 = "gZaZ^;Ro2" fullword ascii 71 | $s18 = "JhVo5Bb" fullword ascii 72 | $s19 = "OPta)}$" fullword ascii 73 | $s20 = "cZZJoVB" fullword ascii 74 | condition: 75 | uint16(0) == 0x44f8 and filesize < 1000KB and 76 | 8 of them 77 | } 78 | 79 | rule quantum_p227 { 80 | meta: 81 | description = "Cobalt Strike - file p227.dll" 82 | author = "The DFIR Report" 83 | reference = "https://thedfirreport.com/2022/04/25/quantum-ransomware/" 84 | date = "2022-04-24" 85 | hash1 = "c140ae0ae0d71c2ebaf956c92595560e8883a99a3f347dfab2a886a8fb00d4d3" 86 | strings: 87 | $s1 = "Remote Event Log Manager4" fullword wide 88 | $s2 = "IIdRemoteCMDServer" fullword ascii 89 | $s3 = "? ?6?B?`?" fullword ascii /* hex encoded string 'k' */ 90 | $s4 = "<*=.=2=6=<=\\=" fullword ascii /* hex encoded string '&' */ 91 | $s5 = ">'?+?/?3?7?;???" fullword ascii /* hex encoded string '7' */ 92 | $s6 = ":#:':+:/:3:7:" fullword ascii /* hex encoded string '7' */ 93 | $s7 = "2(252<2[2" fullword ascii /* hex encoded string '"R"' */ 94 | $s8 = ":$;,;2;>;F;" fullword ascii /* hex encoded string '/' */ 95 | $s9 = ":<:D:H:L:P:T:X:\\:`:d:h:l:p:t:x:|:" fullword ascii 96 | $s10 = "%IdThreadMgr" fullword ascii 97 | $s11 = "AutoHotkeys3F3f3m3t3}3" fullword ascii 167 | $s15 = "3\"3(3<3]3o3" fullword ascii 168 | $s16 = "9 9*909B9" fullword ascii 169 | $s17 = "9.979S9]9a9w9" fullword ascii 170 | $s18 = "txf9(tsf9)tnj\\P" fullword ascii 171 | $s19 = "5!5'5-5J5Y5b5i5~5" fullword ascii 172 | $s20 = "<2=7=>=E={=" fullword ascii 173 | condition: 174 | uint16(0) == 0x5a4d and filesize < 200KB and 175 | ( pe.imphash() == "68b5e41a24d5a26c1c2196733789c238" or 8 of them ) 176 | } 177 | -------------------------------------------------------------------------------- /12780/12780.yar: -------------------------------------------------------------------------------- 1 | rule miner_batch { 2 | meta: 3 | description = "file kit.bat" 4 | author = "TheDFIRReport" 5 | reference = "https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/" 6 | date = "2022/07/10" 7 | hash1 = "4905b7776810dc60e710af96a7e54420aaa15467ef5909b260d9a9bc46911186" 8 | strings: 9 | $a1 = "%~dps0" fullword ascii 10 | $a2 = "set app" fullword ascii 11 | $a3 = "cd /d \"%~dps0\"" fullword ascii 12 | $a4 = "set usr=jood" fullword ascii 13 | $s1 = "schtasks /run" fullword ascii 14 | $s2 = "schtasks /delete" fullword ascii 15 | $a5 = "if \"%1\"==\"-s\" (" fullword ascii 16 | condition: 17 | uint16(0) == 0xfeff and filesize < 1KB and 18 | 3 of ($a*) and 1 of ($s*) 19 | } 20 | 21 | rule file_ex_exe { 22 | meta: 23 | description = "files - file ex.exe.bin" 24 | author = "TheDFIRReport" 25 | reference = "https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/" 26 | date = "2022/07/10" 27 | hash1 = "428d06c889b17d5f95f9df952fc13b1cdd8ef520c51e2abff2f9192aa78a4b24" 28 | strings: 29 | $s1 = "d:\\Projects\\WinRAR\\rar\\build\\unrar32\\Release\\UnRAR.pdb" fullword ascii 30 | $s2 = "rar.log" fullword wide 31 | $s3 = " " fullword ascii 32 | $s4 = " processorArchitecture=\"*\"" fullword ascii 33 | $s5 = "%c%c%c%c%c%c%c" fullword wide /* reversed goodware string 'c%c%c%c%c%c%c%' */ 34 | $s6 = " version=\"1.0.0.0\"" fullword ascii 35 | $s7 = "%12ls: RAR %ls(v%d) -m%d -md=%d%s" fullword wide 36 | $s8 = " hp[password] " fullword wide 37 | $s9 = " %s - " fullword wide 38 | $s10 = "yyyymmddhhmmss" fullword wide 39 | $s11 = "-------- %2d %s %d, " fullword wide 40 | $s12 = " Type Descriptor'" fullword ascii 41 | $s13 = "\\$\\3|$4" fullword ascii /* hex encoded string '4' */ 42 | $s14 = " processorArchitecture=\"*\"" fullword ascii 43 | $s15 = " constructor or from DllMain." fullword ascii 44 | $s16 = "----------- --------- -------- ----- ----" fullword wide 45 | $s17 = "----------- --------- -------- ----- -------- ----- -------- ----" fullword wide 46 | $s18 = "%-20s - " fullword wide 47 | $s19 = " publicKeyToken=\"6595b64144ccf1df\"" fullword ascii 48 | $s20 = " version=\"6.0.0.0\"" fullword ascii 49 | condition: 50 | uint16(0) == 0x5a4d and filesize < 900KB and 51 | 8 of them 52 | } 53 | 54 | rule smss_exe { 55 | meta: 56 | description = "files - file smss.exe.bin" 57 | author = "TheDFIRReport" 58 | reference = "https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/" 59 | date = "2022/07/10" 60 | hash1 = "d3c3f529a09203a839b41cd461cc561494b432d810041d71d41a66ee7d285d69" 61 | strings: 62 | $s1 = "mCFoCRYPT32.dll" fullword ascii 63 | $s2 = "gPSAPI.DLL" fullword ascii 64 | $s3 = "www.STAR.com" fullword wide 65 | $s4 = "4;#pMVkWTSAPI32.dll" fullword ascii 66 | $s5 = " " fullword ascii 67 | $s6 = "dYDT.Gtm" fullword ascii 68 | $s7 = "|PgGeT~^" fullword ascii 69 | $s8 = "* IiJ)" fullword ascii 70 | $s9 = "{DllB8qq" fullword ascii 71 | $s10 = "tfaqbjk" fullword ascii 72 | $s11 = "nrvgzgl" fullword ascii 73 | $s12 = " " fullword ascii 74 | $s13 = "5n:\\Tk" fullword ascii 75 | $s14 = " " fullword ascii 76 | $s15 = "HHp.JOW" fullword ascii 77 | $s16 = " " fullword ascii 78 | $s17 = " " fullword ascii 79 | $s18 = "Wr:\\D;" fullword ascii 80 | $s19 = "px:\"M$" fullword ascii 81 | $s20 = " " fullword ascii 82 | condition: 83 | uint16(0) == 0x5a4d and filesize < 23000KB and 84 | 8 of them 85 | } 86 | 87 | rule WinRing0x64_sys { 88 | meta: 89 | description = "files - file WinRing0x64.sys.bin" 90 | author = "TheDFIRReport" 91 | reference = "https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/" 92 | date = "2022/07/10" 93 | hash1 = "11bd2c9f9e2397c9a16e0990e4ed2cf0679498fe0fd418a3dfdac60b5c160ee5" 94 | strings: 95 | $s1 = "d:\\hotproject\\winring0\\source\\dll\\sys\\lib\\amd64\\WinRing0.pdb" fullword ascii 96 | $s2 = "WinRing0.sys" fullword wide 97 | $s3 = "timestampinfo@globalsign.com0" fullword ascii 98 | $s4 = "\"GlobalSign Time Stamping Authority1+0)" fullword ascii 99 | $s5 = "\\DosDevices\\WinRing0_1_2_0" fullword wide 100 | $s6 = "OpenLibSys.org" fullword wide 101 | $s7 = ".http://crl.globalsign.net/RootSignPartners.crl0" fullword ascii 102 | $s8 = "Copyright (C) 2007-2008 OpenLibSys.org. All rights reserved." fullword wide 103 | $s9 = "1.2.0.5" fullword wide 104 | $s10 = " Microsoft Code Verification Root0" fullword ascii 105 | $s11 = "\\Device\\WinRing0_1_2_0" fullword wide 106 | $s12 = "WinRing0" fullword wide 107 | $s13 = "hiyohiyo@crystalmark.info0" fullword ascii 108 | $s14 = "GlobalSign1+0)" fullword ascii 109 | $s15 = "Noriyuki MIYAZAKI1(0&" fullword ascii 110 | $s16 = "The modified BSD license" fullword wide 111 | $s17 = "RootSign Partners CA1" fullword ascii 112 | $s18 = "\\/.gJ&" fullword ascii 113 | $s19 = "14012709" ascii 114 | $s20 = "140127110000Z0q1(0&" fullword ascii 115 | condition: 116 | uint16(0) == 0x5a4d and filesize < 40KB and 117 | 8 of them 118 | } 119 | -------------------------------------------------------------------------------- /12993/12993.yar: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | YARA Rule Set 4 | Author: The DFIR Report 5 | Date: 2022-06-06 6 | Identifier: Case 12993 Will the Real Msiexec Please Stand Up? Exploit Leads to Data Exfiltration 7 | Reference: https://thedfirreport.com/2022/06/06/will-the-real-msiexec-please-stand-up-exploit-leads-to-data-exfiltration/ 8 | 9 | */ 10 | 11 | /* Rule Set ----------------------------------------------------------------- */ 12 | 13 | rule case_12993_cve_2021_44077_msiexec { 14 | meta: 15 | description = "Files - file msiexec.exe" 16 | author = "The DFIR Report" 17 | reference = "https://thedfirreport.com/2022/06/06/will-the-real-msiexec-please-stand-up-exploit-leads-to-data-exfiltration/" 18 | date = "2022-06-06" 19 | hash1 = "4d8f797790019315b9fac5b72cbf693bceeeffc86dc6d97e9547c309d8cd9baf" 20 | strings: 21 | $x1 = "C:\\Users\\Administrator\\msiexec\\msiexec\\msiexec\\obj\\x86\\Debug\\msiexec.pdb" fullword ascii 22 | $x2 = "M:\\work\\Shellll\\msiexec\\msiexec\\obj\\Release\\msiexec.pdb" fullword ascii 23 | $s2 = "..\\custom\\login\\fm2.jsp" fullword wide 24 | $s3 = "Qk1QDQo8JUBwYWdlIGltcG9ydD0iamF2YS51dGlsLnppcC5aaXBFbnRyeSIlPg0KPCVAcGFnZSBpbXBvcnQ9ImphdmEudXRpbC56aXAuWmlwT3V0cHV0U3RyZWFtIiU+" wide 25 | $s4 = "Program" fullword ascii /* Goodware String - occured 194 times */ 26 | $s5 = "Encoding" fullword ascii /* Goodware String - occured 809 times */ 27 | $s6 = "base64EncodedData" fullword ascii /* Goodware String - occured 1 times */ 28 | $s7 = "System.Runtime.CompilerServices" fullword ascii /* Goodware String - occured 1950 times */ 29 | $s8 = "System.Reflection" fullword ascii /* Goodware String - occured 2186 times */ 30 | $s9 = "System" fullword ascii /* Goodware String - occured 2567 times */ 31 | $s10 = "Base64Decode" fullword ascii /* Goodware String - occured 3 times */ 32 | $s11 = "$77b5d0d3-047f-4017-a788-503ab92444a7" fullword ascii 33 | $s12 = " 2021" fullword wide 34 | $s13 = "RSDSv_" fullword ascii 35 | $s14 = "503ab92444a7" ascii 36 | $s15 = "q.#z.+" fullword wide 37 | condition: 38 | uint16(0) == 0x5a4d and filesize < 90KB and 39 | 1 of ($x*) and 4 of them 40 | 41 | } 42 | 43 | rule case_12993_cve_2021_44077_webshell { 44 | meta: 45 | description = "Files - file fm2.jsp" 46 | author = "The DFIR Report" 47 | reference = "https://thedfirreport.com/2022/06/06/will-the-real-msiexec-please-stand-up-exploit-leads-to-data-exfiltration/" 48 | date = "2022-06-06" 49 | hash1 = "8703f52c56b3164ae0becfc5a81bfda600db9aa6d0f048767a9684671ad5899b" 50 | strings: 51 | $s1 = " Process powerShellProcess = Runtime.getRuntime().exec(command);" fullword ascii 52 | $s2 = "out.write((\"User:\\t\"+exec(\"whoami\")).getBytes());" fullword ascii 53 | $s3 = "return new String(inutStreamToOutputStream(Runtime.getRuntime().exec(cmd).getInputStream()).toByteArray(),encoding);" fullword ascii 54 | $s4 = "out.println(\"
\"+exec(request.getParameter(\"cmd\"))+\"
\");" fullword ascii 55 | $s5 = "out.println(\"  Command execution:\");" fullword ascii 57 | $s7 = " String command = \"powershell.exe \" + request.getParameter(\"cmd\");" fullword ascii 58 | $s8 = "shell(request.getParameter(\"host\"), Integer.parseInt(request.getParameter(\"port\")));" fullword ascii 59 | $s9 = "out.write(exec(new String(b,0,a,\"UTF-8\").trim()).getBytes(\"UTF-8\"));" fullword ascii 60 | $s10 = "static void shell(String host,int port) throws UnknownHostException, IOException{" fullword ascii 61 | $s11 = " powerShellProcess.getErrorStream()));" fullword ascii 62 | $s12 = "encoding = isNotEmpty(getSystemEncoding())?getSystemEncoding():encoding;" fullword ascii 63 | $s13 = " // Executing the command" fullword ascii 64 | $s14 = ".getName()+\"\\\">download\"+new SimpleDateFormat(\"yyyy-MM-dd hh:mm:ss\").format(" ascii 65 | $s15 = "String out = exec(cmd);" fullword ascii 66 | $s16 = "static String exec(String cmd) {" fullword ascii 67 | $s17 = " powerShellProcess.getInputStream()));" fullword ascii 68 | $s18 = "response.setHeader(\"Content-Disposition\", \"attachment; filename=\"+fileName);" fullword ascii 69 | $s19 = "out.println(\"
\"+auto(request.getParameter(\"url\"),request.getParameter(\"fileName\"),request.getParameter(\"cmd\"))+\"ASCII_Hex_DigitAccept" ascii
 37 |       $x19 = "span set block with unpopped elements found in resettls: received a session ticket with invalid lifetimetls: server selected uns" ascii
 38 |       $x20 = "bad defer entry in panicbad defer size class: i=bypassed recovery failedcan't scan our own stackcertificate unobtainablechacha20" ascii
 39 |    condition:
 40 |       uint16(0) == 0x5a4d and filesize < 14000KB and
 41 |       1 of ($x*)
 42 | }
 43 | 
 44 | rule case_15184_dontsleep {
 45 |    meta:
 46 |       description = "15184_ - file dontsleep.exe"
 47 |       author = "The DFIR Report"
 48 |       reference = "https://thedfirreport.com/2022/11/28/emotet-strikes-again-lnk-file-leads-to-domain-wide-ransomware/"
 49 |       date = "2022-11-28"
 50 |       hash1 = "f8cff7082a936912baf2124d42ed82403c75c87cb160553a7df862f8d81809ee"
 51 |    strings:
 52 |       $s1 = "shell32.dll,Control_RunDLL" fullword ascii
 53 |       $s2 = "powrprof.DLL" fullword wide
 54 |       $s3 = "CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST \"res\\\\APP.exe.manifest\"" fullword ascii
 55 |       $s4 = "msinfo32.exe" fullword ascii
 56 |       $s5 = "user32.dll,LockWorkStation" fullword wide
 57 |       $s6 = "DontSleep.exe" fullword wide
 58 |       $s7 = "UMServer.log" fullword ascii
 59 |       $s8 = "_Autoupdate.exe" fullword ascii
 60 |       $s9 = "BlockbyExecutionState: %d on:%d by_enable:%d" fullword wide
 61 |       $s10 = "powrprof.dll,SetSuspendState" fullword wide
 62 |       $s11 = "%UserProfile%" fullword wide
 63 |       $s12 = " 2010-2019 Nenad Hrg SoftwareOK.com" fullword wide
 64 |       $s13 = "https://sectigo.com/CPS0C" fullword ascii
 65 |       $s14 = "https://sectigo.com/CPS0D" fullword ascii
 66 |       $s15 = "?http://crl.usertrust.com/USERTrustRSACertificationAuthority.crl0v" fullword ascii
 67 |       $s16 = "Unable to get response from Accept Thread withing specified Timeout ->" fullword ascii
 68 |       $s17 = "3http://crt.usertrust.com/USERTrustRSAAddTrustCA.crt0%" fullword ascii
 69 |       $s18 = "Unable to get response from Helper Thread within specified Timeout ->" fullword ascii
 70 |       $s19 = "   " fullword ascii
 71 |       $s20 = "_selfdestruct.bat" fullword wide
 72 |    condition:
 73 |       uint16(0) == 0x5a4d and filesize < 700KB and
 74 |       8 of them
 75 | }
 76 | 
 77 | rule case_15184_FilesToHash_locker {
 78 |    meta:
 79 |       description = "15184_ - file locker.dll"
 80 |       author = "The DFIR Report"
 81 |       reference = "https://thedfirreport.com/2022/11/28/emotet-strikes-again-lnk-file-leads-to-domain-wide-ransomware/"
 82 |       date = "2022-11-28"
 83 |       hash1 = "6424b4983f83f477a5da846a1dc3e2565b7a7d88ae3f084f3d3884c43aec5df6"
 84 |    strings:
 85 |       $s1 = "plugin.dll" fullword ascii
 86 |       $s2 = "oL$0fE" fullword ascii /* Goodware String - occured 1 times */
 87 |       $s3 = "H9CPtgL9{@tafD9{8tZD" fullword ascii
 88 |       $s4 = "expand 32-byte k" fullword ascii /* Goodware String - occured 1 times */
 89 |       $s5 = "oD$@fD" fullword ascii /* Goodware String - occured 3 times */
 90 |       $s6 = "oF D3f0D3n4D3v8D3~" fullword ascii
10 |       $s2 = "3~\"0\\25" fullword ascii /* hex encoded string '0%' */
11 |       $s3 = "X'BF:\"" fullword ascii
12 |       $s4 = "  " fullword ascii
13 |       $s5 = "