DANH MỤC TÀI LIỆU
Phương pháp phân tích mã độc
PH NG PHÁP PHÂN TÍCH MÃ Đ CƯƠ Ộ
Phân tích mã đ c g m hai ph ng pháp chính là phân tích tĩnh và ồ ươ
phân tích đ ng. Trong bài này, chúng ta s tìm hi u v nh ng công c , ể ề
ph ng pháp phân tích mã đ c, d a trên n n t ng c th Windows.ươ ề ả ụ ể
Phân tích đ ng mã đ c là gì?ộ ộ
Nó là ph ng pháp phân tích cách ho t đ ng c a mã đ c khi mã đ c đ c ươ ạ ộ ượ
th c thi, xem xét mã đ c ho t đ ng ra sao, lây lan nh th nào, nó k t n i ạ ộ ư ế ế ố
đ n đâu, cài đ t nh ng gì vào h th ng, thay đ i thành ph n nào nh m ế ệ ố
m c đích ngăn ch n vi c lây nhi m, t o ra các d u hi u nh n d ng hi u ậ ạ
qu .
Vi c phân tích mã đ c đòi h i quá trình theo dõi liên t c và l p đi l p l i. ặ ạ
N u th c hi n trên h th ng thi t b th t s m t r t nhi u công s c và ế ệ ố ế ị ậ ẽ ấ
th i gian. Nó cũng có th gây thi t h i l n cho c h th ng c a b n. Vì ệ ạ ệ ố
th , b n c n ph i thi t l p m t môi tr ng an toàn cho vi c ch y mã đ c ế ế ậ ườ
đ có th thu th p thông tin v mã đ c m t cách t t nh t.ể ể ề ộ
Process Monitor
Process Monitor là m t công c giám sát tiên ti n cho Windows hi n th h ế ị ệ
th ng t p tin theo th i gian th c, ho t đ ng c a Registry và process / ạ ộ
thread. Nó k t h p các tính năng c a hai ti n ích Sysinternals là Filemon ế ợ
(giám sát file) và Regmon (giám sát registry), Process Monitor có c ch l cơ ế ọ
khá ph c t p mà không s d ng c ch l c đ n gi n theo chu i . Các tính ơ ế ọ ơ
năng m nh m đ c nh t c a nó s làm cho Process Monitor tr thành m t ẽ ộ
ti n ích c b n trong b công c x lý s c và b công c tìm ki m ph n ơ ự ố ế
m m đ c h i. ộ ạ
WireShark
Wireshark là m t công c theo dõi , ki m tra và phân tích các lo i mã đ c, ạ ộ
thông tin m ng đ c phát tri n b i Gerald Combs. WireShark v t tr i v ượ ượ ộ ề
kh năng h tr các giao th c (kho ng 850 lo i). Giao di n c a Wireshark ỗ ợ
là m t trong nh ng giao di n ph n m m phân tích gói d dùng nh t do đó ầ ề
nó thân thi n v i ng i dùng. Vì nó có th b t đ ng đi c a gói tin, nên ườ ể ắ ườ
nosconf đ c ng d ng vào quá trìnhượ ứ phân tích l h ng, mã đ c.ỗ ổ
Tuy nhiên, đi m y u l n nh t c a nó khi ế ấ ủ phân tích các mã đ c là không
cho bi t chính xác ng d ng nào t o ra gói tin g i đi, mà ch bi t gói tin đó ế ỉ ế
có thành ph n gì, g i t đâu, và đ n đâu… Vì th , c n k t h p v i nh ng ử ừ ế ế ế
công c khác nh Process Monitor.ụ ư
OllyDBG
OllyDBG hay còn g i t t là Olly là công c debug 32-bit r t ph bi n cho ọ ắ ế
Microsoft Windows. Nh n m nh vào phân tích mã nh phân làm cho nó đ c ấ ạ
bi t h u ích trong tr ng h p ngu n không có s n. B n có th t i v ườ ể ả
s d ng nó mi n phí.ử ụ
Nh giao di n tr c quan và d s d ng nên Olly phù h p v i ng i dùng ễ ử ư
m i trình đ khác nhau. Nó h tr debug file th c thi và file th vi n. Thêm ỗ ợ ư
vào đó, script và b plug-in c a nó r t phong phú vì có m t c ng đ ng s ộ ộ
d ng đông đ o. M t s plug-in quan tr ng đó là ộ ố Olly
Advanced, PhantOm,StrongOD. Chúng cung c p các c ch anti-anti debug, ơ ế
hook vào m t s hàm quan tr ng, n ti n trình-tên c a s Ollydbg … nh mộ ố ế
làm cho ch ng trình b debug không bi t mình đang b debug.ươ ị ế
Immunity Debugger
Cũng gi ng nh OllyDbg, tuy nhiên ngôn ng k ch b n mà ư ữ ị Immunity
Debugger h tr là Python, m t ngôn ng r t m nh, t đ ng debug và ữ ấ
đ c gi i b o m t, phân tích th ng dùng. Nó gi m nh và debug nhanh ượ ớ ả ườ
đ tránh b fail trong quá trìnhể ị phân tích mã đ c ph c t p. Immunity ứ ạ
Debugger cũng có giao di n đ n gi n, d hi u. ơ ễ ể
Windbg
Windbg: là m t công c debug m nh m đ c phát hành b i Microsoft. ượ ở
Nó có kh năng debug trên c user-mode và kernel-mode . WinDbg cung ả ả
c p debug cho h t nhân Windows, trình đi u khi n ch đ h t nhân, và ế ộ ạ
d ch v h th ng, cũng nh các ng d ng ch đ ng i dùng và trình đi u ụ ệ ư ế ộ ườ
khi n.
WinDbg có th xem mã ngu n, thi t l p các đi m ng t, xem các bi n (bao ế ậ ế
g m c các đ i t ng C ++), ngăn x p d u v t, và b nh . C a s ố ượ ế ế
Debugger Command c a nó cho phép ng i dùng th c hi n ườ nhi u l nh. ề ệ
Tuy nhiên đ s d ng đ c WinDbg đòi h i có nhi u kinh nghi m v ể ử ượ
Reverse Engineering cũng nh programming.ư
GDB
GDB, trình g l i D án GNU, cho phép b n xem nh ng gì đang di n ra ỡ ỗ
bên trong m t ch ng trình khác trong khi nó th c hi n – ho c m t ch ngộ ươ ự ệ ặ ộ ươ
trình khác đang làm gì vào lúc nó r i.ơ
GDB có th th c thi b n b c (c ng v i nh ng th khác đ h tr nh ng ư ể ỗ
đi u này) đ giúp b n b t l i trong quá trình ắ ỗ phân tích các mã đ c
– B t đ u ch ng trình c a b n, xác đ nh b t c đi u gì có th nh ươ ể ả
h ng đ n ho t đ ng c a nó.ưở ế ạ ộ
– Hãy d ng ch ng trình c a b n theo các đi u ki n quy đ nh. ươ ủ ạ
– Ki m tra nh ng gì đã x y ra, khi ch ng trình c a b n đã d ng l i. ươ ủ ạ
– Thay đ i m i th trong ch ng trình c a b n, do đó b n có th th ươ ể ử
nghi m v i vi c đi u ch nh hi u ng c a m t l i và ti p t c tìm hi u v ệ ề ủ ộ ế
m t l i khác.ộ ỗ
Ch ng trình đ c debug có th đ c vi t b ng Ada, C, C ++, Objective-ươ ượ ể ượ ế
C, Pascal (và nhi u ngôn ng khác). Nh ng ch ng trình này có th đ c ươ ể ượ
th c hi n trên cùng m t máy nh GDB ự ệ ư ho c trên m t máy khác (t xa). ặ ộ
GDB có th ch y trên ph bi n nh t c a UNIX và Microsoft Windows ế ấ ủ
bi n thế ể
V i s phát tri n không ng ng c a các ngành công ngh thông tin nh hi nớ ự ư
nay vi c b o v thông tin cá nhân, t ch c, qu c gia, các h th ng máy tính ệ ố
trong công nghi p… kh i mã đ c tr nên r t c p thi t. Bài vi t này đã gi i ấ ấ ế ế
thi u v i v các ph ng pháp, công cươ ụ phân tích mã đ c. Nh nh ng ờ ữ
ph ng pháp y, b n có th hi u rõ h n v các lo i mã đ c. T đó rút ra ươ ể ể ơ
cách phòng ch ng và di t chúng. Hi v ng nó giúp ích đ c cho b n. ượ ạ
thông tin tài liệu
Phân tích mã độc gồm hai phương pháp chính là phân tích tĩnh và phân tích động. Trong bài này, chúng ta sẽ tìm hiểu về những công cụ, phương pháp phân tích mã độc, dựa trên nền tảng cụ thể là Windows.
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×