I hereby claim:
- I am shellcromancer on github.
- I am shellcromancer (https://keybase.io/shellcromancer) on keybase.
- I have a public key ASAd-lIOgtX3Pl3J20Y6R1D6kB1nFpxnYxBWfW4bXqK5pQo
To claim this, I am signing this object:
#include <sys/mman.h> | |
#include <unistd.h> | |
#include <sys/types.h> | |
#include <stdbool.h> | |
#include <stdio.h> | |
#include <stdlib.h> | |
int backdoor = 0; | |
struct node { |
#include <sys/mman.h> | |
#include <unistd.h> | |
#include <sys/types.h> | |
typedef struct { | |
int data; | |
void (*fp)(int); | |
} obj1; | |
typedef struct { |
I hereby claim:
To claim this, I am signing this object:
#!/usr/bin/env python3 | |
from collections import defaultdict | |
import io | |
import os | |
import requests | |
import sys | |
from typing import Dict, List | |
import zipfile |
rule alg_salsa20 { | |
meta: | |
desc = "Identify code for the Salsa20 cryptographic algorithm." | |
author = "@shellcromancer <[email protected]>" | |
version = "0.1" | |
last_modified = "2022-01-02" | |
reference = "https://www.goggleheadedhacker.com/blog/post/reversing-crypto-functions" | |
strings: | |
$const16 = "expand 16-byte k" ascii | |
$const32 = "expand 32-byte k" ascii |
rule alg_crypto_rc4 { | |
meta: | |
descrption = "Identify code for the (A)RC4 cryptographic algorithm." | |
author = "@shellcromancer <[email protected]>" | |
version = "0.1" | |
date = "2022-01-03" | |
reference = "https://www.goggleheadedhacker.com/blog/post/reversing-crypto-functions#identifying-rc4-in-assembly" | |
reference = "https://0xc0decafe.com/detect-rc4-encryption-in-malicious-binaries/" | |
reference = "https://blog.talosintelligence.com/2014/06/an-introduction-to-recognizing-and.html" | |
strings: |
#!/bin/bash | |
matched_yara_fn() { | |
match_w_rz_cmds=$(yara -s "$1" "$2" | awk -F ':' '/1/ {printf "%s,aac; afi. @ $(?P %s)\n", $2, $1}'); | |
IFS=$'\n'; while IFS= read -r line; do | |
oIFS=$IFS | |
IFS=',' read -r match rzcmd <<< "${line}" | |
echo "$(rizin -qc "$rzcmd" "$2") contains match for $match"; |
rule alg_crypto_aes { | |
meta: | |
descrption = "Identify code/constants for the AES cryptographic algorithm." | |
author = "@shellcromancer <[email protected]>" | |
version = "0.1" | |
date = "2022-01-03" | |
reference = "https://www.goggleheadedhacker.com/blog/post/reversing-crypto-functions-aes" | |
strings: | |
// T-Table value | |
$c1 = { a5 63 63 c6 } |
rule alg_crypto_crc32 { | |
meta: | |
descrption = "Identify constants in the CRC32 cryptographic algorithm." | |
author = "@shellcromancer <[email protected]>" | |
version = "0.1" | |
creation_date = "2022-01-06" | |
reference = "https://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRC-32_algorithm" | |
reference = "http://www.woodmann.com/fravia/crctut1.htm" | |
hash = "c4f370622b7c8da5247e78a22e04a7778bd6712dbb84a05e60136b8defca4eed" | |
location = "0x00401b50" |
rule obfus_stackstring_imov { | |
meta: | |
descrption = "Identify stack-strings obfuscation via indirect moves." | |
author = "@shellcromancer <[email protected]>" | |
version = "0.1" | |
date = "2022-01-07" | |
reference = "https://www.mandiant.com/resources/automatically-extracting-obfuscated-strings" | |
strings: | |
$mov_r = { c6 4? ?? 72 } // mov byte [rdi + ?], 0x72 ; 'r' | |
$mov_s = { c6 4? 0? 73 } // mov byte [rdi + ?], 0x73 ; 's' |