YARA Detection Rule: winnti_dropper_x64_libtomcrypt_fns
Repository: Neo23x0/signature-base
Detects: Designed to catch winnti 4.0 loader and hack tool x64
Author: CarbonBlack Threat Research
Reference: https://www.carbonblack.com/2019/09/04/cb-tau-threat-intelligence-notification-winnti-malware-4-0/

Pattern signatures:
// fn_register_libtomcrypt
      $0x140001820 = { 48 83 EC 28 83 3D ?? ?? ?? ?? 00 }
      $0x140001831 = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x140001842 = { B8 0B 00 E0 0C 48 83 C4 28 C3 }
      $0x14000184c = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x140001881 = { B8 0C 00 E0 0C 48 83 C4 28 C3 }
      $0x14000188b = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x1400018e4 = { B8 0D 00 E0 0C 48 83 C4 28 C3 }
      $0x1400018ee = { 48 8D 0D ?? ?? ?? ?? 48 8D 15 ?? ?? ?? ?? 41 B8 A0 01 00 00 E8 ?? ?? ?? ?? C7 05 ?? ?? ?? ?? 01 00 00 00 }
      $0x140001911 = { 33 C0 48 83 C4 28 C3 }
      // fn_decrypt_PE
      $0x14000167

Detection condition:
all of them

Full rule:
rule winnti_dropper_x64_libtomcrypt_fns : TAU CN APT {
   meta:
      author = "CarbonBlack Threat Research" // tharuyama
      date = "2019-08-26"
      description = "Designed to catch winnti 4.0 loader and hack tool x64"
      rule_version = 1
      yara_version = "3.8.1"
      Confidence = "Prod"
      Priority = "High"
      TLP = "White"
      reference = "https://www.carbonblack.com/2019/09/04/cb-tau-threat-intelligence-notification-winnti-malware-4-0/"
      exemplar_hashes = "5ebf39d614c22e750bb8dbfa3bcb600756dd3b36929755db9b577d2b653cd2d1"
      sample_md5 = "794E127D627B3AF[PII_REDACTED]A35AF1C"

      id = "080d837c-248f-5718-b4a2-290495cd3b38"
   strings:
      // fn_register_libtomcrypt
      $0x140001820 = { 48 83 EC 28 83 3D ?? ?? ?? ?? 00 }
      $0x140001831 = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x140001842 = { B8 0B 00 E0 0C 48 83 C4 28 C3 }
      $0x14000184c = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x140001881 = { B8 0C 00 E0 0C 48 83 C4 28 C3 }
      $0x14000188b = { 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 F8 FF }
      $0x1400018e4 = { B8 0D 00 E0 0C 48 83 C4 28 C3 }
      $0x1400018ee = { 48 8D 0D ?? ?? ?? ?? 48 8D 15 ?? ?? ?? ?? 41 B8 A0 01 00 00 E8 ?? ?? ?? ?? C7 05 ?? ?? ?? ?? 01 00 00 00 }
      $0x140001911 = { 33 C0 48 83 C4 28 C3 }
      // fn_decrypt_PE
      $0x140001670 = { 40 55 56 57 41 55 41 56 41 57 B8 38 12 00 00 E8 ?? ?? ?? ?? 48 2B E0 48 8B 05 ?? ?? ?? ?? 48 33 C4 48 89 84 24 10 12 00 00 48 8B AC 24 90 12 00 00 4C 8B B4 24 A0 12 00 00 45 33 FF 44 39 3D ?? ?? ?? ?? 49 8B F1 41 0F B7 F8 4C 8B EA 44 8B D9 66 44 89 7C 24 40 }
      $0x1400016c8 = { B8 01 00 E0 0C }
      $0x140001