Skip to content

Commit 6a0d506

Browse files
add encrypt-data-using-hc-256 (#1097)
1 parent a4411ed commit 6a0d506

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
rule:
2+
meta:
3+
name: encrypt data using HC-256
4+
namespace: data-manipulation/encryption/hc-256
5+
authors:
6+
- wballenthin@hex-rays.com
7+
scopes:
8+
static: function
9+
dynamic: unsupported # requires mnemonic and operand features
10+
att&ck:
11+
- Defense Evasion::Obfuscated Files or Information [T1027]
12+
mbc:
13+
- Defense Evasion::Obfuscated Files or Information::Encryption-Standard Algorithm [E1027.m05]
14+
references:
15+
- https://github.com/peterferrie/hc256/blob/master/hc256.c
16+
- https://en.wikipedia.org/wiki/HC-256
17+
- https://blu3eye.gitbook.io/malware-insight/moonstone-sleet-trojaned-putty
18+
examples:
19+
- f59035192098e44b86c4648a0de4078edbe80352260276f4755d15d354f5fc58:14006DA50
20+
features:
21+
- and:
22+
- basic block:
23+
# from: hc128_generate:
24+
#
25+
# x0[i] += x0[i10] +
26+
# (ROTR32(x0[i3], 10) ^ ROTL32(x0[i1023], 9)) +
27+
# x1[(x0[i3] ^ x0[i1023]) & 0x3ff];
28+
#
29+
# .text:000000014006DAF5 41 C1 C8 0A ror r8d, 0Ah
30+
# .text:000000014006DAF9 81 E2 FF 03 00 00 and edx, 3FFh
31+
# .text:000000014006DAFF C1 C0 09 rol eax, 9
32+
# .text:000000014006DB02 44 33 C0 xor r8d, eax
33+
- and:
34+
- instruction:
35+
- mnemonic: ror
36+
- operand[1].number: 0xA
37+
- instruction:
38+
- mnemonic: and
39+
- operand[1].number: 0x3FF
40+
- instruction:
41+
- mnemonic: rol
42+
- operand[1].number: 0x9
43+
- characteristic: nzxor

0 commit comments

Comments
 (0)