qakbot 5

[Qakbot ๋ถ„์„ (5)] C2 ํ†ต์‹  ๊ณผ์ •๊ณผ ํƒ์ง€ ํšŒํ”ผ ๋ฐ ์ง€์†์„ฑ ํ™•๋ณด

Qakbot ์•…์„ฑ์ฝ”๋“œ ๋ถ„์„ ๋งˆ์ง€๋ง‰ ํฌ์ŠคํŒ…์ž…๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์•…์„ฑ์ฝ”๋“œ๊ฐ€ C2 ํ†ต์‹ ํ•˜๋Š” ๊ณผ์ •๊ณผ ํƒ์ง€ ํšŒํ”ผ ๋ฐ ์ง€์†์„ฑ์„ ํ™•๋ณดํ•˜๋Š” ๋ถ€๋ถ„์„ ๋ถ„์„ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ƒ˜ํ”Œ ํ•ด์‹œ(SHA256)๋Š” 73e4969db4253f9aeb2cbc7462376fb7e26cc4bb5bd23b82e2af0eaaf5ae66a8์ž…๋‹ˆ๋‹ค.   [๊ณต๊ฐœํ‚ค ๋ณตํ˜ธ]๋ถ„์„ ์ค‘ ์•…์„ฑ์ฝ”๋“œ๊ฐ€ Crypto API๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ถ€๋ถ„์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.ํ•ด๋‹น ์„œ๋ธŒ๋ฃจํ‹ด์ธ sub_100084AF์— ๋“ค์–ด๊ฐ€๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. sub_100084AF ์„œ๋ธŒ๋ฃจํ‹ด ๋‚ด๋ถ€์—์„œ ์•”ํ˜ธ ๊ด€๋ จ API๋“ค์„ ํ˜ธ์ถœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. CryptDecodeObjectEx์ฃผ์–ด์ง„ ์ธ์ฝ”๋”ฉ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง€์ •๋œ ๊ตฌ์กฐ์ฒด ํ˜•์‹์œผ๋กœ ๋””์ฝ”๋”ฉํ•˜๋Š”๋ฐ ์‚ฌ์šฉCryptDecodeObjectEx ํ•จ์ˆ˜ ๊ตฌ์กฐBOOL CryptDecodeObjec..

[Qakbot ๋ถ„์„ (4)] ๋ฆฌ์†Œ์Šค ๋ณตํ˜ธํ™” ๋ฃจํ‹ด ํŒŒ์•… ๋ฐ ์ •๋ณด ์ถ”์ถœ

์ง€๋‚œ ํฌ์ŠคํŒ…์— ์ด์–ด Qakbot ์•…์„ฑ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์•…์„ฑ์ฝ”๋“œ์˜ ๋ฆฌ์†Œ์Šค ๋ณตํ˜ธํ™” ๋ฃจํ‹ด์„ ํŒŒ์•…ํ•˜๊ณ  ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์—์„œ ์–ด๋–ค ์ •๋ณด๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ƒ˜ํ”Œ ํ•ด์‹œ(SHA256)๋Š” 73e4969db4253f9aeb2cbc7462376fb7e26cc4bb5bd23b82e2af0eaaf5ae66a8์ž…๋‹ˆ๋‹ค.   ๊ณ„์† ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด sub_1000FB74 ์„œ๋ธŒ๋ฃจํ‹ด์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.๋ฌธ์ž์—ด ํ…Œ์ด๋ธ” ๋””์ฝ”๋”(mw_decode_string_table_2)๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ง€๋‚œ๋ฒˆ ์ž‘์„ฑํ•œ IDA Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ์ฃผ์„์œผ๋กœ ์ถ”๊ฐ€ํ•ด์ฃผ๊ฒ ์Šต๋‹ˆ๋‹ค.(์Šคํฌ๋ฆฝํŠธ ๋‚ด์šฉ์€ '๋ฐ”์ด๋„ˆ๋ฆฌ์—์„œ ์•”ํ˜ธํ™”๋œ ๋ฌธ์ž์—ด ์ถ”์ถœ(๋ณตํ˜ธํ™”)ํ•˜๊ธฐ'์— ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต..

[Qakbot ๋ถ„์„ (3)] ์ค‘์ฒฉ ๊ตฌ์กฐ์ฒด/์—ด๊ฑฐํ˜•(enum) ์ƒ์„ฑ ๋ฐ mersenne twister

์ง€๋‚œ ํฌ์ŠคํŒ…์— ์ด์–ด Qakbot ์•…์„ฑ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ค‘์ฒฉ ๊ตฌ์กฐ์ฒด์™€ ์—ด๊ฑฐํ˜•(Enum)์„ ์ถ”๊ฐ€ํ•˜๊ณ , mersenne twister์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ƒ˜ํ”Œ ํ•ด์‹œ(SHA256)๋Š” 73e4969db4253f9aeb2cbc7462376fb7e26cc4bb5bd23b82e2af0eaaf5ae66a8์ž…๋‹ˆ๋‹ค.   [๊ตฌ์กฐ์ฒด ์ƒ์„ฑ]์ง€๋‚œ๋ฒˆ mw_iat_construction(sub_1000606C)๊นŒ์ง€ ๋ถ„์„์„ ์™„๋ฃŒํ•˜์˜€์Šต๋‹ˆ๋‹ค. mw_iat_construction ์„œ๋ธŒ๋ฃจํ‹ด์€ ์„ธ ๋ฒˆ ํ˜ธ์ถœ๋˜๋Š”๋ฐ ๊ทธ ์ค‘ sub_10005FBC๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.  sub_10005FBC  sub_10005FBC ์„œ๋ธŒ๋ฃจํ‹ด ๋‚ด๋ถ€ 8๋ฒˆ์งธ ์ค„์˜ sub_10000D1C9์— ๋จผ์ € ๋“ค์–ด๊ฐ€๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.  sub_10000D1C9 ์„œ๋ธŒ๋ฃจํ‹ด์€..

[Qakbot ๋ถ„์„ (1)] ์–ธํŒจํ‚น(Unpacking) - ๋งคํ•‘๊ณผ ์–ธ๋งคํ•‘(Mapping&Unmapping)

Qakbot ์•…์„ฑ์ฝ”๋“œ๋ฅผ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ถ„์„ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ํŒจํ‚น๋˜์–ด ์žˆ๋Š” ํŒŒ์ผ์„ ์–ธํŒจํ‚นํ•˜๊ณ , ์–ธ๋งคํ•‘๋œ ํ˜•์‹๊ณผ ๋งคํ•‘๋œ ํ˜•์‹์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์ƒ˜ํ”Œ ํ•ด์‹œ(SHA256)๋Š” 73e4969db4253f9aeb2cbc7462376fb7e26cc4bb5bd23b82e2af0eaaf5ae66a8์ž…๋‹ˆ๋‹ค.  [ํŒŒ์ผ ์ •๋ณด ๋ถ„์„ ๋ฐ ์ถ”์ถœ]VirusTotal์—์„œ ํ™•์ธํ•ด๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์˜ค๋ฒ„๋ ˆ์ด(overlay)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.Qakbot ์•…์„ฑ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.์ด์ƒํ•œ ์ด๋ฆ„์˜ ์„น์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.์•„๋งˆ ํŒจํ‚น๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.  DIE๋กœ ํ™•์ธํ•˜๋ฉด ์ด ์ƒ˜ํ”Œ์ด Borland Delphi๋กœ ์ปดํŒŒ์ผ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PE-bear๋กœ ํ™•์ธํ•ด๋ณด๋ฉด export ํ•จ์ˆ˜๊ฐ€ ํ•˜๋‚˜(DLLRegistreServer)๋งŒ ..

Malware Analysis Series (MAS) – Article 2

Alexandre Borges์˜ ๋ธ”๋กœ๊ทธ Exploit Reversing์˜ ์•…์„ฑ์ฝ”๋“œ ๋ถ„์„ ์‹œ๋ฆฌ์ฆˆ 'Malware Analysis Series(MAS)'๋ฅผ ๋ฆฌ๋ทฐํ•˜๋ฉฐ ๊ณต๋ถ€ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์•„ํ‹ฐํด์€ API ๋ฆฌ์กธ๋น™, C++ ๊ตฌ์กฐ์ฒด์— ๋Œ€ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.  Malware Analysis Series (MAS) – Article 2 [Instruction]์ด๋ฒˆ ์•„ํ‹ฐํด์—์„œ๋Š” ๊ฐ„๋‹จํ•œ ์•…์„ฑ์ฝ”๋“œ Qakbot์„ ๋ถ„์„ํ•˜๋ฉฐ ๋ฌธ์ž์—ด ๋ณตํ˜ธํ™”, API ๋ฆฌ์กธ๋น™, C++ ๊ตฌ์กฐ์ฒด ๊ทธ๋ฆฌ๊ณ  C2 ๋ฐ์ดํ„ฐ ์ถ”์ถœ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์š”์ฆ˜์—๋Š” ํŒจํ‚น๋˜์ง€ ์•Š์€ ์•…์„ฑ์ฝ”๋“œ๊ฐ€ ๊ฝค ๋“œ๋ฌผ๊ธฐ ๋•Œ๋ฌธ์— ๋„ค์ดํ‹ฐ๋ธŒ(native) ์ฝ”๋“œ๋ฅผ ์–ธํŒจํ‚นํ•  ๋•Œ breakpoint๋ฅผ ์„ค์ •ํ•ด์•ผํ•  API์— ๋Œ€ํ•ด ์•Œ์•„๋‘๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. API ๋ชฉ๋ก์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.CreatePr..