Презентация - Реверс-инжиниринга обфусцированного и виртуализированного приложения


Реверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложенияРеверс-инжиниринга обфусцированного и виртуализированного приложения
На весь экран

Слайды и текст этой презентации

Слайд 1

Методы РЕВЕРС-ИНЖИНИРИНГА ОБФУСЦИРОВАННОГО и ВИРТУАЛИЗИРОВАННОГО ПРИЛОЖЕНИЯ Алюшин Виктор

Слайд 2

СПОСОБЫ Защиты приложений Упаковка / шифрование всего файла Обфускация отдельных строк / машинного кода Виртуализация кода Обнаружение отладчиков/эмуляторов/песочниц/виртуалок

Слайд 3

Dro PPER – STAGE 1

Слайд 4

Dro PPER – STAGE 1 https:// upx.github.io/ upx –d packed.exe – o unpacked.exe

Слайд 5

Dropper – stage 2

Слайд 6

DROPPER – STAGE2 Olly Dbg Cmdbar / x64dbg / Immunity Debugger bp Virtual Alloc bp Virtual Protect bp Virtual Free bp Write Process Memory

Слайд 7

DROPPER – STAGE2

Слайд 8

DROPPER – STAGE3

Слайд 9

DROPPER – STAGE3

Слайд 10

DROPPER – STAGE3

Слайд 11

dropper – stage3

Слайд 12

Dropper – stage3 data 0x00410e24 - relocs ? data 0x004718b4 - some strings archive data 0x00471c33 - hashed import table

Слайд 13

DROPPER – STAGE3 - ARCHIVE

Слайд 14

UNPACKING ARCHIVE 6 files !!! BIOS IMAGE 16-bit shellcode (3x) Driver x32 Driver x64

Слайд 15

Driv ER Search for hash1 and exe search 16bytes by hash functions

Слайд 16

DRIVER – VIRTUAL CODE

Слайд 17

STRINGS ENCRYPTED WITH 4-BYTE keys For some encrypted strings could not find XREFs and decryption keys! MAYBE they are decrypted from virtual code?

Слайд 18

INTERPRETER CODE OBFUSCATED a ND SPLITED INTO MABY CHUNKS

Слайд 19

VIRTUAL INSTRUCTIONS 4-byte arguments xored with 0x69B00B7A 2-byte arguments xored with 0x13F1 1-byte arguments xored with 0x57

Слайд 20

SEARCHING FOR XREFS IN VIRTUAL CODE Prepare disassembler module for IDA – too long and complex XOR string address with 0x69B00B7A, search this in virtual code, and try nearby XORED 4-bytes blocks as decryption keys easy profit FINALLY DECRYPTED CC-server address and PORT

Слайд 21

DGA algorithm SEEMS DGA ALROTITHM ALSO EXISTS NO XREFS FROM NATIVE CODE TO DGA strings TODO – time to make IDA PRO processor module

Слайд 22

Thanks! QUESTIONS ?