๊ณผ๊ฑฐ์ ๊ณต๊ฒฉ์์ (์ฝ.. 10๋
์ ..?) exe ๋๋ dll ํ์ฅ์ ํ์ผ์ ํตํด ํจ์ ํธ์ถ ๋ณ์๋ฅผ ํตํ C&C์์๋ก์ ๊ณต๊ฒฉ์ ๊ฐํํจ
ํ์ง๋ง ์ํฐ๋ฐ์ด๋ฌ์ค์์ ๋ค ๊ฒ์ถ๋๊ธฐ์ ํ์ฌ๋ ์ด๋ฐ ์ฌ๋์ ํํ๋ก ๊ณต๊ฒฉ์ ๊ฐํํ์ง ์์.
๊ทธ๋์ LotL(Living of the Land) ๊ณต๊ฒฉ๊ธฐ๋ฒ --> ๊ธฐ์กด์ ์๋ ์๋ฃ๋ค์ ํตํด ๊ณต๊ฒฉ์ ๊ฐํํ๋ ๊ธฐ๋ฒ
wscrpite.exe, certutil.exe ๋ฑ ๊ธฐ์กด์ Windows Built in ์ค์น ํ์ผ์ ํตํ ๊ณต๊ฒฉ ๊ฐํ ํํ๋ก ์์ ๋ณํ
์ต๊ทผ ๊ณต๊ฒฉ ํํ์ ์์
1.์
์ฑ ๋ฌธ์ ํ์ผ ์์ฑ
2.๊ณต๊ฒฉ์๋ Victim PC ์ ์
์ฑ๋ฌธ์ ์ ๋ฌ
3. maleware.hwp ๋ฌธ์ํ์ผ ํตํด ํ๊ธ ์คํผ์ค ํ๋ก๊ทธ๋จ ์คํ๋จ
maleware.hwp ์คํ ์,
์ ๊ด๋ dll ํ์ผ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํจ (๋ฌด์ํ ๋ง์ dll ์ ํธ์ถํ๋ฉฐ ํ๋ก์ธ์ฑ์ ํจ)
์ด ์์ ์์ dllํ์ผ์ ํธ์ถํ๋๊ฒ ์๋ ๊ฑด๋๋ฐ๊ณ ๋ค๋ฅธ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ํตํด Powershell ํธ์ถํจ
โป ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ
( ์ปค๋ ๋ฉ๋ชจ๋ฆฌ - ์ฃผ์ ์๋ฃ ์์ญ๊ตฌ์ญ / ์ ์ ๋ฉ๋ชจ๋ฆฌ ์์ญ - ๊ฐ๊ฐ์ ํ๋ก์ธ์ค๋ค์ด ๊ฐ์์ ๊ฒฉ๋ฆฌ๋ ์์ญ์ ๊ฐ์ )
๋ฉ๋ชจ๋ฆฌ๊ฐ ํ์ฉํ๋ ๋งํผ ๊ฐ์์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ง
ํด๋น๋ฌธ์์ ๋ด๋ถ์๋ ์์ฝ๋(์ ์ฑ์ฝ๋)๊ฐ ์ฝ์ ๋์ด ๊ณต๊ฒฉ์์ C&C ์๋ฒ์ ํต์ ํ๋ฉฐ ๊ณต๊ฒฉ์์ ํ๋ฆ๋๋ก ์์ง์.
๊ณต๊ฒฉ์์ฝ๋ : ์ธํฐ๋ท ๊ฒฝ๋ก์ ์ด๋์ด๋๋ก๊ฐ๋ฉด script๊ฐ ์์ด ๊ทธ๊ฑธ ํธ์ถํด
์ ์์ ์ธ ํ๋ก์ธ์ค explore.exe ์ ๋คํํ
code injection์ ์ค์
๋ค๋ฅธ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ์์๋ค๊ฐ ์
์ฑํ๋ก์ธ์ค๋ฅผ ์ฃผ์
๊ทธ๋ผ ์
์ฑํ๋ก์ธ์ค๊ฐ C&C ์๋ฒ์ ํต์ ํจ (์ด๋ Powershell ์ 0.1์ด๋ง ์ ๊น ์คํ๋์๋ค๊ฐ ๋ซํ )
์ฌ์ฉ์ ์
์ฅ์์๋ ๋ณํ ์ฒด๊ฐ ๋ชปํจ
์ด๊ฒ์ ์ฐ๋ฆฌ๋ ํ์ผ๋ฆฌ์ค ๊ณต๊ฒฉ( Fileleass Attack )์ด๋ผ๊ณ ๋ถ๋ฆ
๊ฐ์ผ PC๋ก ์์ฌ๋๋ฉด ๋ค์๊ณผ ๊ฐ์ ํ๋์ด ํ์ํจ.
๐ 1. ์ํฐํฉํธ (๋์งํธ ์ฆ๊ฑฐ) ์์ง
์ปฌ๋ ์ ๋๊ตฌ๋ฅผ ์ธ์ฅ USB๋ฅผ ํตํด Victim PC ์ ์ฎ๊ฒจ๋
๊ทธ ๋ด์ฉ์ ๊ฐ์ง๊ณ ์ ๋ถ์๊ด PC ๋ก ์ฎ๊ฒจ ํผํด๋ด์ฉ ๋ถ์ ์งํ
โป ํผํด PC์์๋ ๊ฐ๊ธ์ ์ด๋ฉด ๋ถ์ํ์ง X
--> ๊ทธ ์ด์ ๋ Victim PC์ ํ๋ก์ธ์ค ํจ์ ํธ์ถ์ ํ๋ฉฐ ๋ฉ๋ชจ๋ฆฌ ๋ณํ ์์คํ
๋ณํ๊ฐ ์ผ์ด๋๊ธฐ ๋๋ฌธ์
ํด๋น PC์ ์ํ๋ณํ๋ฅผ ์ด๊ตฌํจ, ์ต๋ํ ํด๋น PC๋ฅผ ์์ํ๋ก ๋๊ธฐ ์ํจ์.
ํ๋ก์ธ์ค ๋ฆฌ์คํธ ํ๋ณด
tasklist /SVC > tasklist.txt
๋ชจ๋ ํ๋ก์ธ์ค๋ ์คํ ํ ๋ฐ๋์ ์๋น์ค๋ฅผ ์ฑ ์์ ธ์ผํจ
์๋น์ค๋ฅผ ์ฑ ์์ง๋ ํ๋ก์ธ์ค๊ฐ ์๋ค ( EX. N/A๋ก ํ์๋๋ค๋ฉด ์ ์ฑ์ฝ๋์ผ ํ๋ฅ ์ด ๋์ )
listdlls ํ๋ก๊ทธ๋จ ํตํ DLLํ์ผ ํ๋ณด ( sysinternals suite )
sysinternals ์์ ๋ง๋ฌ
listdlls -u
--> u ์ต์ ์ unsigned ๋ DLL ๋ง ํ์ธํ์ฌ ๊ฒ์ถํจ
์ด ์ต์ ๋๋ฌธ์ sysinternal ์ ์ฐ๋๊ฑฐ์ ( ์๋ช ์ ๋ณด๊ฐ ์๊ฑฐ๋ ๋๋ฝ๋ ํ์ผ์ ํ์ธ ํ๊ธฐ ์ํจ์ )
ํ์ผ์ ์คํํ ๋ ์๋ช ์ ๋ณด๊ฐ ์กด์ฌํ์ง ์๋๋ค๋ฉด ๊ฒฝ๊ณ ๊ฐ ์ฌ๋ผ์ด
MS ํํ ์ ์ฑ์ฝ๋๋ฅผ ๋งค๋ฒ ์๋ช ์ ๋ณด๋ฅผ ๋ฐ์์ค๊ธฐ๋ ํ๋ค๊ธฐ ๋๋ฌธ์ ํด๋น ํ์ผ์ ์์งํ๋๊ฑฐ์
Persistence (์ ์ด์ง์์ ๋ณด)
๊ณต๊ฒฉ์๋ ์ํ๋ ์๊ฐ์ ๊ณต๊ฒฉํ๊ธธ ํฌ๋งํจ
๊ทธ๋์ ์ง์์ ์ผ๋ก ๊ณต๊ฒฉ์๊ฐ ์๋์ผ๋ก ์์๋๊ฒ ๋ง๋ ํ๋ก์ธ์ค๋ฅผ ์ฐพ์์ผํจ..!
sysinternals - Autoruns ํตํด ํ์ธ
ํ์ผ ์์คํ
๊ด๋ จ ์ฆ๊ฑฐ ์์ง ( HBGary's fget ๋๊ตฌ ํ์ฉ )
โป ํ๊ฒฝ๋ณ์์ ์ค์ ํด์ฃผ์ด์ ํธํ๊ฒ ์คํํ์ !!!
raw ํ ํ์ผ์์คํ ํ์ด ๊ฐ๋ฅ
Windows Prefetch ํ์ผ ์คํ ์ด๋ ฅ ํ์ธ
pf ๋ชฉ๋ก์ด์ ํ์ธํ๋ฉด exeํ์ผ์ ํ์ผ๋ค์ด ๋์ด
ํด๋น ํ์ผ๋ค์ ํ๋ฒ์ด๋ผ๋ ์ด PC์์ ์คํํ๋ ํ์ผ๋ช ์ด๋ผ๊ณ ์์์์
Memory Dump
Dumpit.exe ํ์ผ ์คํ ํ ๋ฉ๋ชจ๋ฆฌ ๋คํ๋ฅผ ๋ฐ ์ ์์
Registry ์์ ๋ด์ฉ ํ์ธ
๋ฆฌ๋ ์ค์ /etc ํด๋์ ๊ฐ์์ญํ ์
์์คํ ์ ์ ๋ฐ์ ์ธ ํ๊ฒฝ๋ณ์ ์ค์ ๋ค์ ๋ด๊ณ ์์
C:\Windows\System32\config ์ ํด๋น ์ค์ ํ์ผ๋ค์ด ์์
SAM --> ์๋์ฐ์ ๋น๋ฐ๋ฒํธ
ํ์ผ์ด๋
ํ๋ก์ธ์ค๋ค์ด ๋ก๋ฉํ ๋ชฉ๋ก๋ค์ด ๋์ด
๐ 2. ๋ถ์ ๋ด๋น์ PC์์ ํ์ธ
volatility ํ์ผ ํตํด ๋ฉ๋ชจ๋ฆฌ๋คํ ํ์ธ
์ฒ์ ์ฌ์ฉ์ OS ๋ฒ์ ์ ํ์ธ์์ผ์ค์ผํจ
ํด๋น ๋ฉ๋ชจ๋ฆฌ ๋คํ๋ฅผ ํตํด PID // PPID ํ์ธ ๊ฐ๋ฅ
โป PPID : ๋ถ๋ชจ ํ๋ก์ธ์ค
pslist
DLLList
Netscan
## ๋ฉ๋ชจ๋ฆฌ ๋คํ๋ฅผ ํตํด OS ์๋์ฐ ์ด๋ฏธ์ง ์ ๋ณด ํ์ธ ##
vola -f memory.raw imageinfo
vola -f memory.raw --profile=Win7SP0X86 pslist > .\volataility_pslist.txt
vola -f memory.raw --profile=Win7SP0X86 netscan > .\volataility_netscan.txt
vola -f memory.raw --profile=Win7SP0X86 dlllist > .\volataility_dlllist.txt
์๊ธฐ 3๊ฐ์ ๋ช ๋ น์ด๋ฅผ ํตํด Windows Built-In ํ์ผ ์ค ์ ๋ Network ํธ๋์ญ์ ์ด ์ผ์ด๋์ง ์์์ผํ ํ์ผ์ด ํต์ ์ด ์ด๋ฃจ์ด์ง ์ด๋ ฅ์ด ์๋ค๋ฉด ํด๋น ํ์ผ์ ์ฝ๋์ธ์ ์ ์ด ์ผ์ด๋ฌ์ ์ ์๋ค๋ ๊ฐ๋ฅ์ฑ์ ์ ๊ธฐ ํ ์ ์์.
AnalyzeMFT.py ํตํ mft.raw ํ์ผ๋ถ์
python analyzeMFT.py -l -f mft.raw -o -mft.csv
๐ฃ 3. ๋ถ์ (Interpretation)
์ ์ฑ ํ๋ก์ธ์ค ์๋ณ ๋ฐฉ๋ฒ
1) ์ ์ ํ๋ก์ธ์ค์ ์ ์ฌํ ์ด๋ฆ์ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค๊ฐ ์กด์ฌํ๋์ง
2) ํ๋ก์ธ์ค์ ๋ถ๋ชจ์์ ๊ด๊ณ์์ ์ด์์งํ๊ฐ ๋ณด์ด๋์ง
3) ์๋น์ค๋ฅผ ์ ๊ณตํด์ผ ํ ํ๋ก์ธ์ค๊ฐ ์๋น์ค๋ฅผ ์ ๊ณตํ์ง ์๋์ง
4) ์คํ ๊ฒฝ๋ก๊ฐ ์ผ๋ฐ์ ์ด์ง ์์ ๊ฒฝ์ฐ๊ฐ ์๋์ง
C:/Windows --> ์ ์ ๊ฒฝ๋ก
C:/Windows/system32/explorer.exe --> ์๋ชป๋ ๊ฒฝ๋ก // ์ ์ฑ์ฝ๋ ์์ฌ
C:/Users/์ฌ์ฉ์๋ช /AppData/Local/Temp/ --> ์์ ๊ฒฝ๋ก // ์ ์ฑ์ฝ๋ ์์ฌ
์ผ๋ฐ์ ์ผ๋ก C:/Windows or C:\Program Files ์ ๊ฒฝ๋ก์์ ๋๋ถ๋ถ์ ํ๋ก๊ทธ๋จ๋ค์ด ์คํ์ด ๋จ.
๊ทธ๋ ๋ค๋ฉด ๊ทธ๋ ์ง ์์๊ฒฝ๋ก์์ ํ๋ก๊ทธ๋จ์ด ์คํ๋ ์ด๋ ฅ์ด ์๋์ง ๊ฒ์ถ ํ๋ฉด ๋จ.
5) ๋ณธ๋์ ๊ธฐ๋ฅ๊ณผ๋ ๋ค๋ฅด๊ฒ ๋คํธ์ํฌ ํต์ ์ ์ํํ๋ ํ๋ก์ธ์ค๊ฐ ์๋์ง
์๋์ฐ ์ด์์ฒด์ ์์๋ Network ํต์ ์ ํ์ง ์๋ ํ๋ก์ธ์ค๋ค์ด ์์.
--> ํด๋น ๋ด์ฉ์ ํ์ธ ํด๋ณด๊ธธ
6) ์ ์์ ์ธ ํ๋ก์ธ์ค์ด์ง๋ง ์ข ๋ฃ ๋์ด ์์ด์ผ ํจ์๋ ๋์ํ๊ณ ์๋ ํ๋ก์ธ์ค๊ฐ ์๋์ง
EX) userinit.exe (์ฌ์ฉ์ ๋ก๊ทธ์ธ ํ ํ๊ฒฝ ์ด๊ธฐํ ํ ๋ฐ๋ก ์ข ๋ฃํจ, ํด๋น ํ๋ก์ธ์ค๊ฐ explorer.exe ํธ์ถ)
7) ์๋ช ์ด ๋์ด ์์ง ์์ exe or DLL ์ด ์คํ๋๊ณ ์๋ ๊ฒฝ์ฐ๊ฐ ์๋์ง
listdlls_unsigned ํตํด ์๋์ ์์ฌ์ค๋ฌ์ ํ์ธ
C:\Program Files\SearchNQ\SearchNQ.exe
C:\Windows\system32\svcnet.exe
โป ์ ์ฑ์ฝ๋ ๋ถ์์ ๊ฒฉ๋ฆฌ๋ ํ๊ฒฝ์์ ์ํํ๊ณ , ๋ถ์๊ด์ ์ ์ฑ์ฝ๋ Malicious File ์ ๋ณดํต Hash๊ฐ์ผ๋ก ๋ณ๊ฒฝํจ
์ ์ฑ ํ๋ก์ธ์ค ์๋ณ ๋ฐฉ๋ฒ
1) ์ ์ ํ๋ก์ธ์ค์ ์ ์ฌํ ์ด๋ฆ์ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค๊ฐ ์กด์ฌํ๋๊ฐ
svchost.exe (O)
svch0st.exe (X)
scvhost.exe (X)
--> ์ฌ์ฉ์๋ฅผ ๋์์ ํ๊ธฐ์ํจ
์ ์ํ๋ก์ธ์ค์ ๋ํ ํ๋ณ์ ?
์๋์ ํ๊ธฐ ๋ฌธ๊ฑด์ ์ฐธ์กฐํ๋ฉด ๋จ
๋งํฌ์ฐธ์กฐ : Hunt Evil | SANS Poster
KALILINUX ์ ์๋ฐ์ ์ผ๋ก ๋ฐฉ์ด์ฉ ์ฐ๋ถํฌ OS ๋ถ์์ฉ OS๋ REMNux ํจํค์ง ์คํ์์ค๊ฐ ์์
๋งํฌ : REMnux: A Linux Toolkit for Malware Analysts
๋ชจ๋ฐ์ผ ๋ฐฉ์ด ๋ฐ ์ทจ์ฝ์ ๋ถ์์ ์๋์
๋งํฌ : Download · Santoku Linux (santoku-linux.com)
์๊ธฐ์ ๋ฐฐํฌ์ฉ ํจํค์ง OS๋ SANS๋ผ๋ ๋ณด์ํ์ฌ์์ ๋ง๋ค์์
2) ํ๋ก์ธ์ค์ ๋ถ๋ชจ์์ ๊ด๊ณ์์ ์ด์์งํ๊ฐ ๋ณด์ด๋์ง
Services.exe - svchost.exe ( ์ ์ )
explorer.exe - cmd.exe ( ์ ์ )
rundll32.exe - powershell.exe ( ๋น์ ์ )
powershell.exe - dllhost.exe ( ๋น์ ์ )
DLLHOST์ ๋ถ๋ชจํ๋ก์ธ์ค๋ svchost.exe ์.
svchost.exe - dllhost.exe ( ์ ์ )
## svchost์ ํ๋ก์ธ์ค ๋ฆฌ์คํธ ##
C:\Users\fsiedu>tasklist /SVC | findstr svchost | more
svchost.exe ํ๋ก์ธ์ค๊ฐ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ณ ์์ง ์๋์ง ํ์ธ
svchost.exe ํ๋ก์ธ์ค๊ฐ ํ๋ผ๋ฏธํฐ๋ฅผ ๊ฐ์ง์ง ์๋์ง ํ์ธ
-k Parameter๋ฅผ ํตํด svchsot์ ์๋น์ค๋ฅผ ์ ์ฌํ๊ณ ์๋น์ค๊ฐ ํ๋ก์ธ์ฑ๋จ
์ด๋ฐ Parameter๊ฐ ์๋ค๋ฉด ์ ์ฑ์ฝ๋๋ก ํ๋จํ ์ ์์.
explorer.EXE --> GUI ์ ์ธํฐํ์ด์ค๋ฅผ ๊ด์ฅํ๋ ์ ธ ํ๋ก์ธ์ค
์ด๊ฒ์ ์์๋ก ๋ถ์ํ๊ธฐ ์ํด์๋ EDR ์๋ฃจ์ ์ด ํ์ํจ.
์ ์ด ์ ์ง ๋ฐฉ์
1. Registry ( ๋ ์ง์คํธ๋ฆฌ )
๋ ์ง์คํธ๋ฆฌ ๋ชฉ๋ก ๊ตฌ์กฐ / ์ญํ ๋ค์ ์์์ผํจ
2. Task schedule ( ์์ ์ค์ผ์ค๋ฌ )
3. ์์ ํด๋
- Win + R > shell:startup
์ํธ๋ฆฌํฌ์ธํธ๋ ๋ฌด์์ธ๊ฐ..?
ํ์ผ๊ตฌ์กฐ๋ [VBR / MFT / DATA] --> ์ด๋ฐ ๊ตฌ์กฐ
MFT ( Master File Table )์์๋
[MFT / MFT Entry / ]
WinprefetchView --> ํตํด ์ต๊ทผ ์คํ ํ์ผ ํ์ ํ์ธ
Run Count : 1
๋ณดํต ์ ์ฑ์ฝ๋๋ ์ต์ด 1~2ํ ์คํ๋๋ ํ์ธํด๋ณผ๊ฒ
Missing Process
ํ์ฌ ๊ทธํ์ผ์ด ์กด์ฌํ๋์ง ์ฌ๋ถ ํ์ธ
Yes : ์์ด์ง
No : ํ์ฌ๋ ์กด์ฌ
[UserAssist]
์ฌ์ฉ์๊ฐ ์ค์ ๋ก ์คํํ ํ์ผ
NirSoft - freeware utilities: password recovery, system utilities, desktop utilities
๋ฉ๋ชจ๋ฆฌ ๋คํ
vlola.exe -f mft.raw --profile=[์ด์์ฒด์ _Version] [์ถ์ถํ ๋ฐ์ดํฐ] > [์ถ์ถ๋ฐ์ดํฐ].txt
vlola.exe -f mft.raw --profile=Win7SPx86 dlllist > dlllist.txt
vlola.exe -f mft.raw --profile=Win7SPx86 malfind > malfind.txt
vlola.exe -f mft.raw --profile=Win7SPx86 pslist > pslist.txt
OpenProcess(PID) : ํ์ ํ๋ก์ธ์ค ํธ๋คํ๋ณด
VirtualAllocEx(200) : ํ์ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น
WriteProcessMemory() : ํ์ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฑ ๋ฐ์ดํฐ ์ฐ๊ธฐ
CreateRemoteThread() : ํ์ ํ๋ก์ธ์ค์ ์ฐ๋ ๋ ์์ฑ
๋ฉ๋ชจ๋ฆฌ๋คํ ๊ณต๋ถํ๊ธฐ
--> vola ํตํด์ ํด๋น ๋ฉ๋ชจ๋ฆฌ ๋คํ ํ์ธ๊ฐ๋ฅ
ํ๋ก์ธ์ค ์ธ์ ์ ๊ณต๋ถ
์๋ํ ๋๊ตฌ
Live Response Collection – Cedarpelta Build
- ์ฌ๋ฌ๊ฐ์ ์คํ ๋ ์ผ๋ก ์คํ ํ์ผ์ ๋ฐฐ์น ์คํฌ๋ฆฝํธ๋ฅผ ํตํด ์คํ
- ๋ ธ์ด์ฆ๊ฐ ์ฌํ๋ค๋ ๋จ์ ์ํฐํฉํธ ์๋ณธ์ ์ถฉ์คํ๊ฒ ํ๋ณดํจ
- Collection + Extraction(์ผ๋ถ) ๊น์ง ์ํํจ
Fireeye's Redline
-๋ณ๋์ ์ํฐํฉํธ๋ฅผ ์์ง ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํจ
-์์ง๋ ์ํฐํฉํธ๋ฅผ ๋์์ผ๋ก ๋ถ์ํ์ฌ GUI ๋ก ๋ณด์ฌ์ค
- ๊ทผ๋ฐ ๋๋ฆผ..
'๐ป๋ชจ์ํดํน > Microsoft' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ์ผ ์ญ์ ํ์ ์ฐพ๊ธฐ (NTFS) #nagoona (0) | 2022.06.27 |
---|---|
MFT Parsing ๋๊ตฌ - analyzeMFT (0) | 2022.06.27 |
Windows Registry ์นจํด ๋์ ๋ถ์ (0) | 2022.06.27 |
๐Window Froensic Tool List (0) | 2022.06.22 |
[CVE-2022-30190] MS Offfice ์ ๋ก๋ฐ์ด ์ทจ์ฝ์ ๋ถ์ & MSDT-Follina ์ทจ์ฝ์ ๋ถ์ (0) | 2022.06.22 |