ì ì ë¶ì(Static analysis)ìŽë?
- ìì¬ì€ë¬ìŽ íìŒì ì€ííì§ ìê³ ë¶ìíë êž°ë²
- ìì¬ì€ë¬ìŽ ë°ìŽë늬ìì ì ì©í ì 볎 ì¶ì¶íŽ ìŽë»ê² ë¶ë¥/ë¶ìí ì§ì ìŽí ë¶ìì ìŽì ìŽëì ëì§ ê²°ì íêž° ìí ìŽêž° ë¶ì ë°©ë²
íŽë¹ ì¥ììë íìŒì ëí ë€ìí ì 볎륌 ë°ê²¬í ì ìë ì¬ë¬ êž°ë²ì ì€ëª íš.
몚ë ë°©ë²ì ë°ë¥Œ íìë ììŒë©°, ìì륌 ì§í¬ íìë ìë€.
1. íìŒ ì í íì
ë¶ìí ë ìì¬ì€ë¬ìŽ ë°ìŽë늬ì íìŒ ì íì 구ë¶íë ê²ì ì ì±ìœëì 목í ìŽì ìì€í 곌 ìí€í ì² ìë³ì ëììŽ ëë€.
공격ìë ì ì ê° íŽë¹ íìŒì ì€ííëë¡ íêž° ìíŽ íìŒ íì¥ì륌 ìì íê±°ë ìžíì ë°ê¿.
→ íìŒ íì¥ì ëì íìŒ ìê·žëì²(File signature)륌 ìŽì©íŽ íìŒ ì íì 구ë¶í ì ìë€.
*íìŒ ìê·žëì²: íìŒ í€ëì ìì±ëë ë°ìŽížì ë í¹í ë°°ìŽ ìì
1-1. ììì ì íµí íìŒ ì í ìë³
í¥ì¬ ížì§êž°(hex editor)ë¡ íìŒì ìŽìŽ íìŒ ìê·žëì²ë¥Œ ì°Ÿì ì ìë€.
*í¥ì¬ ížì§êž°: íìŒì ê° ë°ìŽížë¥Œ êŽì°°í ì ìë ë구. íìŒ ë¶ìì ëìì 죌ë ì¬ë¬ êž°ë¥ì ì ê³µ (ex. HxD)
늬ë ì€ìì íìŒ ìê·žëì²ë¥Œ ì°Ÿê³ ì íë€ë©Ž xxd ëª ë ¹ìŽë¥Œ ì¬ì©í ì ìë€.
1-2. ë구륌 ìŽì©í íìŒ ì í ìë³
늬ë ì€ ìì€í ììë file ì ížëŠ¬í°ë¥Œ ìŽì©íŽ íìŒì ìë³í ì ìì.
첫 ë²ì§ž íìŒ(mini)ì íì¥ìê° ìììë 32ë¹íž ì€í íìŒ(PE32)ëŒë ê²ì 볎ì¬ì€.
ë ë²ì§ž íìŒ(notepad.exe)ì 64ë¹íž(PE32+)ëŒë ì¬ì€ì 볎ì¬ì€.
ìëì°ììë ìµì€íë¡ë¬ ì€ìížì í¬íšë CFF Explorer륌 ìŽì©íŽ íìŒ ì íì 구ë¶í ì ìì.
íìŒ ì íì 구ë¶íë ê²ìë§ ì íëì§ ìê³ ì€í íìŒ(32ë¹ížì 64ë¹íž)ì ì¡°ì¬íê±°ë PE ëŽë¶ 구조 ê²ì¬íê³ íë ìì íê±°ë 늬ìì€ ì¶ì¶ ê°ë¥.
1-3. íìŽì¬ì ìŽì©í íìŒ ì í 구ë¶
íìŽì¬ìì python-magic 몚ëì ìŽì©íŽ íìŒ ì íì 구ë¶í ì ìì.
ìëì°ì python-magic 몚ë ì€ì¹íë €ë©Ž http://github.com/ahupp/python-magicì ì€ëª ë ì ì°š ë°ë¥Žë©Ž ëë€.
python-magic ì€ì¹ ì, ì€í¬ëŠœížì í¬íšë ì ëª ë ¹ìŽ ìŽì©íŽ íìŒ ì í êµ¬ë¶ ê°ë¥
ë§ìœ ìë 묞ìì²ëŒ 볎ìŽêž° ìíŽ íì¥ì륌 .exeìì .doc.exeë¡ ë³ê²œí íìŒì 겜ì°,
'ìëì° íŽë 볎Ʞ ìµì 'ìì Ʞ볞ì ìŒë¡ íì±íë 'ìë €ì§ íìŒ ì íì íì¥ì ìšêž°êž°'륌 ì ì©íš.
→ CFF Explorerìì íìŒì ìŽë©Ž ìì ê°ìŽ íŽë¹ íìŒìŽ 32ë¹íž ì€í íìŒë, ìë íìŒë ìëë ì¬ì€ìŽ ëë¬ëš.
2. ì ì±ìœë ìë³
ìë³(Fingerprinting)íêž°: ìì¬ì€ë¬ìŽ ë°ìŽë늬ì ëŽì©ì ë°íìŒë¡ ìíž íŽì ê°ì ìì±íë íëì í¬íš.
MD5, SHA1, SHA256 ë±ì ìíž íŽì ìê³ ëŠ¬ìŠì ì ì±ìœë ìíì íìŒ íŽì륌 ìì±í ë ì¬ì€ì íì€ìŒë¡ ìê°ëš.
íìŒëª (ìì¡° ê°ë¥) êž°ì€ìŒë¡ ì ì±ìœë ìí ìë³íë ëì , íìŒ ëŽì©ì êž°ë°íŽ ìì±ë ìíž íŽì(ì ìŒí ìë³ì)ë¡ íìŒì êµ¬ë¶ ê°ë¥
ì ì±ìœë ìíì ìíž íŽìë ìë¡ê² ëë¡/ë³µì¬ë ìíìŽ ì볞 ìí곌 ëìŒíì§ ì¬ë¶ ìë³ ê°ë¥
íìŒ íŽìë ì ì±ìœë ìíìŽ ìšëŒìž ëë ë€ì€ ë°±ì ì€ìºë ìë¹ì€ì ë°ìŽí°ë² ìŽì€ë¥Œ ê²ìíŽ ìŽì ì íì§ë ì ìëì§ë¥Œ íëší ë ì¬ì©
2-1. ë구륌 ìŽì©í ìíž íŽì ìì±
늬ë ì€ììë md5sum, sha256sum, sha1sum ë구륌 ìŽì©íŽ íìŒ íŽì ìì± ê°ë¥.
ìëì°ì© íìŒ íŽì ìì± ë구ë ìšëŒìžìì ë€ìíê² ë°ê²¬ ê°ë¥.
2-2. íìŽì¬ìì ìíž íŽì íì
íìŽì¬ììë hashlib 몚ëì ì¬ì©íŽ íìŒ íŽì륌 ìì±í ì ìë€.
3. ë€ì€ ë°±ì ì€ìºë
ìì¬ì€ë¬ìŽ ë°ìŽë늬륌 ë€ì€ ë°±ì ì€ìºëë¡ ì€ìºëíë©Ž ìì¬ì€ë¬ìŽ íìŒì ì ì±ìœë ìê·žëì²ê° ì¡Žì¬íëì§ íìž ê°ë¥
í¹ì íìŒì ìê·žëì² ìŽëŠ íµíŽ íìŒê³Œ ê·ž êž°ë¥ì ëí ì¶ê° ì 볎 ì»ì ì ìì
3-1. ë°ìŽë¬ì€í ížì ìŽì©í ìì¬ ë°ìŽë늬 ì€ìºë
ë°ìŽë¬ì€í íž: ì¹ êž°ë° ì ì±ìœë ì€ìºë ìë¹ì€. íìŒ ì ë¡ëíë©Ž ë€ìí ë°±ì ì€ìºëë¡ ì€ìºëíê³ ê²°ê³Œë¥Œ 볎ì¬ì€
ë°ìŽë¬ì€í íž ë°ìŽí° ì§í©ì êž°ë°ìŒë¡ 구ì¶í ë°ìŽë¬ì€í íž ê·žëí(ë±ë¡í íìŒê³Œ ëë©ìž, IP 죌ì, URL곌 ê°ì êŽë š ì§í ì¬ìŽì êŽê³ ìê°í ê°ë¥) êž°ë¥ë ì ê³µíš.
ì ì±ìœë ë°ìŽë늬ì ëíŽ íì§í ìŽëŠì 볎ì¬ì£Œë©°
67ê° ë°±ì ìì§ìŒë¡ ë°ìŽë늬륌 ì€ìºíìì 볎ì¬ì€.
3-2. ë°ìŽë¬ì€í íž ê³µê° API륌 ìŽì©í íŽì ê° ì§ì
ë°ìŽë¬ì€í ížì ê³µê° API륌 íµíŽ ì€í¬ëŠœíž ìì±í ì ìë êž°ë¥ë ì ê³µ.
íìŒ ë±ë¡ ìëí, íìŒ/URL ì€ìº 늬í¬íž ê²ì, ëë©ìž/IP 늬í¬íž ê²ìì ì ê³µ.
íìŽì¬ ë°ìŽë¬ì€í íž ê³µê° API륌 볎ì¬ì£Œë íìŽì¬ ì€í¬ëŠœíž.
ì ë ¥ê°ìŒë¡ íŽìê°ì ë°ì ë°ìŽë¬ì€í íž ë°ìŽí°ë² ìŽì€ë¥Œ ì§ì.
ë€ë¥ž ë°©ë²ìŒë¡ë pestudio ëë PPEE ê°ì PE ë¶ì ëêµ¬ê° ìì.
ë°ìŽë늬 ë¡ë©íë©Ž ë°ìŽë늬ì íŽì ê°ã 륎 ë°ìŽë¬ì€í íž ë°ìŽí°ë² ìŽì€ë¡ ìë ì§ì í 결곌륌 볎ì¬ì€.
4. 묞ììŽ ì¶ì¶
묞ììŽ(String): íìŒì í¬íšë ì¶ë ¥ ê°ë¥í ASCIIì ì ëìœëì ìì°šì ìž ë¬žì ì§í©.
묞ììŽ ì¶ì¶ì íë¡ê·žëš êž°ë¥ê³Œ ìì¬ ë°ìŽë늬 êŽë š ì§íì ëí ëšì륌 ì ê³µ.
4-1. ë구륌 ìŽì©í 묞ììŽ ì¶ì¶
늬ë ì€ ìì€í ìì strings ì ížëŠ¬í°ë¥Œ ì¬ì©í ì ìì.
strings ëª ë ¹ìŽë Ʞ볞ì ìŒë¡ ìµì 4묞ì ìŽìì ASCII 묞ììŽì ì¶ì¶íš.
-a ìµì ì ìŽì©íë©Ž ì 첎 íìŒìì 묞ììŽ ì¶ì¶ ê°ë¥.
ë°ìŽë늬ìì ì ì©í ì 볎륌 ì»ìŒë €ë©Ž ASCIIì ì ëìœë 묞ììŽ ëªšë륌 ì¶ì¶íŽìŒ íš.
strings ëª ë ¹ìŽë¥Œ ìŽì©í ì ëìœë ì¶ì¶ì -el ìµì ì ì¬ì©íë©Ž ëš.
ìëì° í겜ììë ASCIIì ì ëìœë 묞ììŽ ëªšë륌 íííŽ ì£Œë pestudioëŒë ë구 ìŽì© ê°ë¥.
4-2. FLOSS륌 ìŽì©í ëë íë 묞ììŽ ëìœë©
ëë¶ë¶ì ê²œì° ì ì±ìœë ì ììë íì§ ííŒíê³ ì ê°ëší 묞ììŽ ëë í êž°ë²ì ì¬ì©.
ëë íë 묞ììŽì strings ì ížëŠ¬í°ì ë€ë¥ž ì¶ì¶ë구륌 ìŽì©íŽ ì¶ì¶ìŽ ë¶ê°ë¥.
FLOSS(FireEye Labs Obfuscated String Solver): ì ì±ìœëìì ëë íë 묞ììŽ ìëìŒë¡ ì¶ì¶íê³ ìë³íê³ ì ëììžë ë구.
5. íìŒ ëë í íì
ì ì±ìœë ì ììë ëë í륌 íµíŽ ì ì±ìœë ëŽë¶ì ëìì 볎ì ì°êµ¬ì, ì ì±ìœë ë¶ìê°, 늬ë²ì€ ìì§ëìŽë¡ë¶í° 볎íž.
ëë í êž°ì ì ë°ìŽë늬륌 íì§/ë¶ìíêž° ìŽë µê² íêž° ë묞ì ì¶ì¶í ì ìë 묞ììŽì ë³ë¡ ëì§ ììŒë©° 묞ììŽ ëë¶ë¶ 몚íž.
ë°±ì 곌 ê°ì 볎ì ì íì íì§ ííŒíê³ ì íšì»€(Packer)ì í¬ëŠœí°(Cryptor) ê°ì íë¡ê·žëš ì죌 ì¬ì©.
5-1. íšì»€ì í¬ëŠœí°
íšì»€: ì€í íìŒì ì ë ¥ìŒë¡ ë°ì ì€í íìŒì ëŽì©ì ìì¶íŽ ëë ííë íë¡ê·žëš.
í¬ëŠœí°: íšì»€ì ì ì¬íì§ë§, ì€í íìŒì ëŽì© ëë ííê³ ì ìì¶ ëì ìíží륌 ì¬ì©.
5-2. Exeinfo PE륌 ìŽì©í íìŒ ëë í íì§
ì ìì ìž ì€í íìŒ ëë¶ë¶ì íìŒ ëŽì©ì ëë ííì§ ìì§ë§, ìŒë¶ë ìêž°ë€ì ìœë ì¡°ì¬íì§ ëª»íëë¡ ëë í íêž°ë íš.
íší¹í ìí ë°ê²¬íë€ë©Ž ì ì±ìœëìŒ íë¥ ëì.
ìëì°ìì íšì»€ íì§íê³ ì Exeinfo PEì ê°ì ë¬Žë£ ë구륌 ì¬ì©í ì ìì.
íšì»€ ëë í¬ëŠœí° íì§ ê°ë¥, ìíì ìžíší¹ ë°©ë²ì ëí ì 볎/ì°žê³ ì 볎륌 ì ê³µíš
6. PE í€ë ì 볎 ì¡°ì¬
ìëì° ì€í íìŒì PE/COFF륌 ë°ëì ì€ìíŽìŒ íš.
PE íìŒ í¬ë§·ì ìëì° ì€í íìŒìŽ ì¬ì©íë©°, ìŽë¬í íìŒì PE(Portable Excutable) íìŒìŽëŒê³ ë¶ëŠ.
PE íìŒì ìŽì ìì€í ìŽ ë©ëªšëŠ¬ë¡ ë¡ë©í ë íìí ì 볎륌 ê°ì§ ìŒë šì 구조첎ì íì 컎í¬ëížì.
ì€í íìŒì 컎íìŒíë©Ž íŽë¹ 구조첎륌 ì€ëª íë í€ë(PE í€ë)륌 í¬íš.
ë°ìŽë늬 ì€ííë©Ž ìŽì ìì€í ë¡ëë PE í€ëìì 구조첎 ì 볎 ìœì í ë°ìŽë늬 ëŽì© íìŒìì ìœìŽ ë©ëªšëŠ¬ë¡ ë¡ë©.
PE í€ë: ì€í íìŒìŽ ë©ëªšëŠ¬ ìŽëì ë¡ë©ëìŽìŒ í ì§, ì€í íìŒì ìììŽ ìŽëì§, ì í늬ìŒìŽì ìŽ ìì¡Žíë ëŒìŽëžë¬ëŠ¬/íšì 목ë¡, ë°ìŽëëŠ¬ê° ì¬ì©íë 늬ìì€ ë±ì ì 볎륌 í¬íš.
PE 구조ì íì 컎í¬ëíž ê²ì¬/ìì í ì ìë ë구ë€:
- CFF Explorer
- PE Internals
- PPEE
- PEBrowseProfessional
6-1. íìŒ ìì¡Žì±ê³Œ ìí¬íž ì¡°ì¬
ìŒë°ì ìž ì ì±ìœëë íìŒ, ë ì§ì€ížëŠ¬, ë€ížìí¬ ë±ê³Œ ìížìì©.
ìížìì© ìííê³ ì ì ì±ìœëë ìŽì ìì€í ìì ì ê³µíë íšìì ë§ìŽ ìì¡Ž.
ìëì°ë API(Application Programming Interface)ë¡ ë¶ëŠ¬ë íšì륌 ìí¬ížíê³ ìì, ìížìì© ìíŽì DDL(Dynamic Link Library) íìŒìŽ íì.
ì€í íìŒì ìŒë°ì ìŒë¡ ë€ë¥ž êž°ë¥ ì ê³µíë ë€ìí DLLìì ìŽë° íšì ìí¬ížíê±°ë ížì¶
ì ì±ìœëê° ìì¡Ž ì€ìž DLL곌, DLLìŽ ìí¬ížíê³ ìë API íšì ì¡°ì¬íë©Ž ì ì±ìœëì êž°ë¥, ì±ë¥, ì€í ì€ ììí ì ìë êž°ë¥ ì ì ìì.
ìëì° ì€í íìŒì íìŒ ìì¡Žì±ì PE íìŒ êµ¬ì¡°ì ìí¬íž í ìŽëžì ì ì¥ëš.
ì ì±ìœë êž°ë¥ íì íë ê² ìžìë ìí¬ížë ì ì±ìœë ìíì ëë í ì¬ë¶ íì§ì ëìì ì€.
6-2. ìµì€í¬íž ì¡°ì¬
ì€í íìŒê³Œ DLLì ë€ë¥ž íë¡ê·žëšìì ì¬ì©í ì ìë íšì륌 ìµì€í¬íž(export) í ì ìì.
ìŒë°ì ìŒë¡ DLLì ì€í íìŒìŽ ìí¬íží ì ìë íšì(ìµì€í¬íž)륌 ë žì¶.
DLLì ëšë ì€í ë¶ê° → ížì€íž íë¡ìžì€ íµíŽ ì€í
공격ìë ì ìì íšì ìµì€í¬ížíë DLLì ì죌 ìì±íš.
DLL ìì ë€ë¥ž ëŒìŽëžë¬ëŠ¬(DLL)ìì íšì ìí¬ížíŽ ìì€í ì°ì° ìí ê°ë¥.
íìŽì¬ìì peflie 몚ë ìŽì©íŽ ìµì€í¬íž íšì ëìŽ ê°ë¥.
6-3. PE ì¹ì í ìŽëžê³Œ ì¹ì ì¡°ì¬
PE íìŒì ì€ì ëŽì©ì ì¹ì (section)ìŒë¡ 구ë¶.
ì¹ì ì PE í€ë ë°ë¡ ë€ìì ì¡Žì¬íš.
ì¹ì ì ìœë ëë ë°ìŽí° ëíëŽë©°, ìœêž°/ì°êž°ì ê°ì ë©ëªšëŠ¬ ëŽë¶ ìì±ì ê°ì§.
PE íìŒì ê³µíµ ì¹ì ìŒë¶:
ì¹ì ëª ì ì¬ëì ìí ê²ìŒë¡ ìŽì ìì€í ììë ì¬ì© X
→ 공격ì ëë ëë í ìíížìšìŽê° ì¹ì ëª ì ë€ë¥ž ìŽëŠìŒë¡ ë³ê²œ ê°ë¥íë€ë ì믞.
ì¹ì ì ëí ì 볎(ì¹ì ëª , ì¹ì ìì¹, í¹ì§)ë PE í€ëì ìë ì¹ì í ìŽëžì ì¡Žì¬.
ì¹ì í ìŽëž ì¡°ì¬íë©Ž ì¹ì 곌 ì¹ì ì í¹ì§ ì 볎 ì»ì ì ìì.
pestudioì ì€í íìŒ ë¡ë ì sections íŽëŠíë©Ž ì¹ì í ìŽëžìì ì¶ì¶í ì¹ì ì 볎ì ê·ž ìì±ì íì.
íë | ì€ëª |
ìŽëŠ(Names) | ì¹ì ëª ì íì |
ê°ì-í¬êž°(Virtual-Size) | ë©ëªšëŠ¬ ë¡ë©í ë ì¹ì ì í¬êž° ëíë |
ê°ì-죌ì(Virtual-Address) | ì¹ì ì ë©ëªšëŠ¬ ìŽëìì ì°Ÿì ì ìëì§ ëíëŽë ìëì ê°ì 죌ì |
ìì-í¬êž°(Raw-size) | íŽë¹ ì¹ì ìŽ ëì€í¬ì ì¡Žì¬í ëì í¬êž° ëíë |
ìì-ë°ìŽí°(Raw-data) | íìŒìì íŽë¹ ì¹ì ì°Ÿì ì ìë ì€íì |
ìížëŠ¬ í¬ìžíž(Entry-point) | ìœëê° ì€í ììíë RVA(Relative Virtual Address, ìëì ê°ì 죌ì). |
ì¹ì í ìŽëž ê²ì¬ë PE íìŒì ìŽì ìë³íë ë° ëìì ì€.
ì íìŽì¬ ì€í¬ëŠœížë pefile 몚ëì íµíŽ ì¹ì 곌 ì¹ì ì í¹ì§ 볎ì¬ì€.
6-4. 컎íìŒ íìì€í¬í ì¡°ì¬
PE í€ëë ë°ìŽëëŠ¬ê° ì»ŽíìŒë ë ìì±ëë ì 볎륌 í¬íš.
ìŽ íë ì¡°ì¬íë©Ž ì ì± ìœëê° ìžì ì²ì ìì±ëëì§ ì ì ììŽì, 공격 íëì íìëŒìž ìì±í ë ëìì ì€.
공격ìê° ì€ì íìì€í¬í ì ì ìëë¡ íìì€í¬í ìì íŽë²ëŠŽ ìë ìì.
ì íìŽì¬ ëª ë ¹ìŽ ì¬ì©íŽ 컎íìŒ íìì€í¬í륌 ì ì ìì.
6-5. PE 늬ìì€ ì¡°ì¬
ììŽìœ, ë©ëŽ, ëíìì, 묞ììŽ ë± ì€í íìŒì íìí 늬ìì€ë ì€í íìŒì 늬ìì€ ì¹ì (.rsrc)ì ì ì¥.
ëëë¡ ê³µê²©ìë ì¶ê° ë°ìŽë늬, 믞ëŒ(decoy) 묞ì, ì€ì ë°ìŽí° ë±ì ì 볎륌 늬ìì€ ì¹ì ì ì ì¥íš.
늬ìì€ ì¹ì ì ê·Œìì§, íì¬ëª , íë¡ê·žëš ì ìì ìžë¶ ì 볎, ì ìê¶ êŽë š ì 볎 ë žì¶í ì ìë ë²ì ì 볎ë í¬íš
늬ìì€ íŽì»€: ìì¬ ë°ìŽë늬ìì 늬ìì€ ì¡°ì¬íê³ íìž í ì¶ì¶í ì ìë ë구
7. ì ì±ìœë ë¹êµì ë¶ë¥
ìì¬ ë°ìŽë늬륌 ìŽì ë¶ì ìí ëë ê³µê°/ì¬ì€ ì ì¥ìì ì ì¥ë ìí곌 ë¹êµ ì ì ì±ìœëêµ°, ì ì±ìœëì í¹ì§, ìŽì ë¶ì ìí곌ì ì ì¬ì± íì ê°ë¥.
7-1. íŒì§ íŽì±ì ìŽì©í ì ì±ìœë ë¶ë¥
íŒì§ íŽì±(fuzzy hashing)ì íìŒ ì ì¬ë륌 ë¹êµíë ë°©ë².
ssdeep: ìíì ëí íŒì§ íŽì륌 ìì±íë ë구. ìí ê°ì ì ì¬ì± ë¹ìš íì íë ë° ëìì ì€.
ìì¬ ë°ìŽë늬ì ì ì¥ìì ìíë€ ë¹êµíŽ ì ì¬í ìí ìë³ì ì ì©, ëìŒí ì ì±ìœëêµ° ëë ëìŒ ê³µê²©ì 귞룹ì ìíë ìí ìë³ì ëìì ì€ë€.
늬ë ì€ VMì ssdeepì ì€ì¹ í ìë ëª ë ¹ìŽë¥Œ ì€ííë©Ž ìíì íŒì§ íŽì륌 íìž ê°ë¥.
ssdeepì ìë ììž ìŒì¹ 몚ë(-p ìµì ) ì¬ì©íŽ ì ì¬ë륌 ì ì ìì.
7-2. ìí¬íž íŽì륌 ìŽì©í ì ì±ìœë ë¶ë¥
ìí¬íž íŽì±(import hashing)ì ì°êŽì± ìë ìí곌 ëìŒí 공격ì 귞룹ìì ì¬ì©í ìíì ìë³íë ë° ì¬ì©í ì ìë ë€ë¥ž êž°ì .
ìí¬íž íŽì(imphash)ë ì€í íìŒì ìë ëŒìŽëžë¬ëŠ¬/ìí¬íž íšìëª ê³Œ í¹ì ì ìì륌 ë°íìŒë¡ íŽì ê°ì ê³ì°íë êž°ì .
ëìŒí ìì€, ë°©ììŒë¡ íìŒ ì»ŽíìŒí ê²œì° íŽë¹ íìŒì ëìŒí ìí¬íž íŽìê°ì ê°ë 겜í¥ìŽ ìì.
pestudioë¡ ì€í íìŒ ë¡ëíë©Ž imphash륌 ìì±.
íìŽì¬ììë ìì ê°ìŽ peflie 몚ë ìŽì©íŽ imphash ìì± ê°ë¥.
7-3. ì¹ì íŽì륌 ìŽì©í ì ì±ìœë ë¶ë¥
ìí¬íž íŽìì ì ì¬íê² ì¹ì íŽì±(section hashing)ë êŽë š ìí ìë³íë ë° ëìì ì€ ì ìì.
ì€í íìŒì pestudioì ë¡ëíë©Ž ê° ì¹ì (.text, .data, .rdata ë±)ì MD5륌 ê³ì°.
íìŽì¬ììë ìì ê°ìŽ pefile 몚ë ìŽì©íŽ ì¹ì íŽì 구í ì ìì.
7-4. YARA륌 ìŽì©í ì ì±ìœë ë¶ë¥
YARA: ì ì±ìœë륌 ìë³íê³ ë¶ë¥íë ê°ë ¥í ë구.
ì ì±ìœë ì°êµ¬ìë ì ì±ìœë ìíì í¬íšë í ì€íž ëë ë°ìŽë늬 ì 볎륌 êž°ë°íŽ YARA ê·ì¹ì ìì±í ì ìì.
ìŽ ê·ì¹ì ë¡ì§ì ê²°ì íë 묞ììŽê³Œ ë¶ìž ííìì ì§í©ìŒë¡ 구ì±ëš.
YARA ê·ì¹ ìì±íë©Ž YARA ì ížëŠ¬í° ëë yara-python ì¬ì©íŽ ìì±í ëêµ¬ë¡ íìŒ ì€ìºëí ë íŽë¹ ê·ì¹ ìŽì© ê°ë¥.
YARA ê·ì¹ì ìŒë° í ì€íž ížì§êž° ìŽì©íŽìë ìì± ê°ë¥.
YARA ê·ì¹ì 컎í¬ëíž:
- ê·ì¹ ìë³ì
- ê·ì¹ì ì€ëª íë ìŽëŠ.
- ê·ì¹ ìë³ìë ì묞ì, ì«ì, ë°ì€ íí ê°ë¥íì§ë§ 첫 묞ìë¡ ì«ì륌 ì¬ì©í ì ì ì.
- ëì묞ì륌 구ë¶íê³ 128ì ìŽê³Œí ì ìì.
- 묞ììŽ ì ì
- ê·ì¹ì ìŒë¶ìž 묞ììŽìŽ ì ìëë ì¹ì .
- ê·ì¹ìŽ 묞ììŽì ìì¡Žíì§ ìì ê²œì° ìëµ ê°ë¥.
- ê° ë¬žììŽì ì°ìë ì묞ì, ì«ì, ë°ì€ìŽ ë€ë°ë¥Žë $ 묞ìë¡ êµ¬ì±ë ìë³ì륌 ê°ì§.
- 조걎 ì¹ì
- ê·ì¹ì ë¡ì§ìŽ ìì¹íë ê³³.
- ê·ì¹ìŽ ìŒì¹íê±°ë ìŒì¹íì§ ìë 조걎 ì§ì íë ë¶ìž ííì í¬íšíŽìŒ íš.
ê·ì¹ ì€ë¹ ìŽíìë yara ì ížëŠ¬í° ì¬ì©íŽ ê·ì¹ì ë°ëŒ íìŒ ì€ìºíŽìŒ íš.
YARAë 몚ë íìŒì íšíŽì ê°ì§íë ë° ì¬ì© ê°ë¥.
ìë €ì§ ìíì ì ì¥ì륌 ì€ìºíë YARA ê·ì¹ ìì±íë©Ž ëìŒí í¹ì± ê°ì§ ìíì ìë³/ë¶ë¥ ê°ë¥íš.
'SWUFORCE > ì ì±ìœë' 칎í ê³ ëŠ¬ì ë€ë¥ž êž
[ì ì±ìœë ë¶ì ììíêž°] 3ì¥_ëì ë¶ì (0) | 2025.04.08 |
---|---|
[ë Œë¬ž 늬뷰] ëšžì ë¬ë êž°ë° ì ì± URL íì§ êž°ë² (0) | 2025.04.02 |
[ì ì±ìœë ë¶ì ììíêž°] 1ì¥_ì ì±ìœë ë¶ì ìê° (0) | 2025.03.25 |