Tải bản đầy đủ (.pdf) (6 trang)

Mật khẩu Windows có thể bị crack như thế nào – Phần 1 pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (152.34 KB, 6 trang )

M t kh u Windows có th b crack nhậ ẩ ể ị ư
th nào – Ph n 1ế ầ
C p nh t lúc 17h00' ngày ậ ậ 04/04/2010
• B n inả
• G i cho b n bèử ạ
• Ph n h iả ồ
Xem thêm: windows, hash, m t kh uậ ẩ , password, lm, ntlmv2
Qu n tr m ngả ị ạ – Trong bài này chúng tôi s gi i thi u cho các b n cách Windowsẽ ớ ệ ạ
t o và l u các hash m t kh u và cách các hash m t kh u đó b crack nh thạ ư ậ ẩ ậ ẩ ị ư ế
nào.
Gi i thi uớ ệ
M t kh u (Password) th ng là con đ ng ch đ o trong vi c phòng ch ng s xâmậ ẩ ườ ườ ủ ạ ệ ố ự
nh p b a bãi. Tuy v y dù m t k t n công không có truy c p v t lý (tr c ti p) đ nậ ừ ậ ộ ẻ ấ ậ ậ ự ế ế
máy tính, chúng v n có th truy v p vào máy ch thông qua giao th c máy tr m t xaẫ ể ậ ủ ứ ạ ừ
(remote desktop) ho c xác th c m t d ch v thông qua m t ng d ng web bên ngoài.ặ ự ộ ị ụ ộ ứ ụ
M c đích c a bài vi t này nh m gi i thi u cho các b n cách Windows t o và l u cácụ ủ ế ằ ớ ệ ạ ạ ư
hash m t kh u và cách các hash m t kh u đó b crack nh th nào. Sau khi gi i thi uậ ẩ ậ ẩ ị ư ế ớ ệ
cách crack m t kh u Windows, chúng tôi s cung c p cho các b n m t s m o đ b oậ ẩ ẽ ấ ạ ộ ố ẹ ể ả
v b n tránh đ c các l h ng trong các ki u t n công này.ệ ạ ượ ỗ ổ ể ấ
Windows l u m t kh u nh th nàoư ậ ẩ ư ế
Windows s d ng hai ph ng pháp hash m t kh u ng i dùng, c hai đ u có nh ngử ụ ươ ậ ẩ ườ ả ề ữ
đi m m nh và đi m y u riêng. Đó là LAN Manager (LM) và NT LAN Manager versionể ạ ể ế
2 (NTLMv2). Hàm hash (hash function) là hàm m t chi u mà n u đ a m t l ng dộ ề ế ư ộ ượ ữ
li u b t kì qua hàm này s cho ra m t chu i có đ dài c đ nh đ u ra.ệ ấ ẽ ộ ỗ ộ ố ị ở ầ
Hash m t kh u LAN Manager (LM)ậ ẩ
Hash LAN Manager là m t trong nh ng thu t toán hash m t kh u đ u tiên đ c sộ ữ ậ ậ ẩ ầ ượ ử
d ng b i các h đi u hành Windows, ch có m t phiên b n duy nh t đ c h tr choụ ở ệ ề ỉ ộ ả ấ ượ ỗ ợ
t i khi xu t hi n NTLMv2 s d ng trong Windows 2000, XP, Vista và Windows 7. Cácớ ấ ệ ử ụ
h đi u hành m i này v n h tr s d ng các hash LM đ có kh năng t ng thích.ệ ề ớ ẫ ỗ ợ ử ụ ể ả ươ
M c dù v y, nó đã b vô hi u hóa m c đ nh trong Windows Vista và Windows 7.ặ ậ ị ệ ặ ị
Hash m t kh u lo i này đ c tính b ng m t quá trình 6 b c sau:ậ ẩ ạ ượ ằ ộ ướ


1. M t kh u ng i dùng đ c chuy n đ i thành t t c các ký t in hoa.ậ ẩ ườ ượ ể ổ ấ ả ự
2. M t kh u đ c b sung thêm các ký t 0 vào cho t i khi có đ 14 ký t .ậ ẩ ượ ổ ự ớ ủ ự
3. M t kh u m i đ c chia thành hai hash có 7 ký t .ậ ẩ ớ ượ ự
4. Các giá tr này đ c s d ng đ t o hai khóa mã hóa DES, m i n a đ u đ cị ượ ử ụ ể ạ ỗ ử ề ượ
thêm vào m t bit ch n l đ t o các khóa 64 bit.ộ ẵ ẻ ể ạ
5. M i khóa DES s đ c s d ng đ mã hóa m t chu i ASCII đ nh s n (KGS!ỗ ẽ ượ ử ụ ể ộ ỗ ị ẵ
@#$%), cho k t qu ra trong hai chu i văn b n m t 8-byte.ế ả ỗ ả ậ
6. Hai chu i văn b n m t 8-byte này s đ c k t h p đ t o thành m t giá tr 16-ỗ ả ậ ẽ ượ ế ợ ể ạ ộ ị
byte, giá tr này chính là m t hash LM hoàn ch nh.ị ộ ỉ
Trong th c t , m t kh u “PassWord123” s đ c chuy n đ i nh sau:ự ế ậ ẩ ẽ ượ ể ổ ư
1. PASSWORD123
2. PASSWORD123000
3. PASSWOR and D123000
4. PASSWOR1 and D1230001
5. E52CAC67419A9A22 and 664345140A852F61
6. E52CAC67419A9A22664345140A852F61
Hình 1: M t m t kh u đ c bi n đ i thành m t LM hashộ ậ ẩ ượ ế ổ ộ
Các m t kh u tuân theo ph ng pháp LM hash có m t s nh c đi m. Nh c đi mậ ẩ ươ ộ ố ượ ể ượ ể
đ u tiên c n k đ n là s mã hóa đây d a vào Data Encyrption Standard (DES). DESầ ầ ể ế ự ở ự
kh i đ u t m t d án c a IBM vào nh ng năm 70, d án sau đó b s a đ i b i NIST,ở ầ ừ ộ ự ủ ữ ự ị ử ổ ở
đ c b o tr b i NSA và đ c phát hành nh m t chu n ANSI vào năm 1981. DESượ ả ợ ở ượ ư ộ ẩ
đ c cho là khá an toàn trong nhi u năm sau nh ng nghiên c u k l ng trong nh ngượ ề ữ ứ ỹ ưỡ ữ
năm 90 nh kích th c key 56-bit c a nó. Tuy nhiên đ n đ u năm 1998, Electronicờ ướ ủ ế ầ
Frontier Foundation thông báo là đã có th crack DES trong kho ng th i gian 23 gi .ể ả ờ ờ
T đó, DES đ c xem nh đã l i th i và cũng t đó nó đ c thay th b ng Triple-ừ ượ ư ỗ ờ ừ ượ ế ằ
DES và AES. Tuy nhiên đây cũng là các chu n mã hóa đã có n n nhân thi t m ng v iẩ ạ ệ ạ ớ
s c m nh tính toán hi n đ i và có th b crack m t cách d dàng.ứ ạ ệ ạ ể ị ộ ễ
Có l đi m m nh l n nh t trong LM hash chính là trong quá trình t o các khóa (key)ẽ ể ạ ớ ấ ạ
DES. Trong quá trình này, m t m t kh u đ c c p b i ng i dùng s t đ ng chuy nộ ậ ẩ ượ ấ ở ườ ẽ ự ộ ể
đ i t t c thành in hoa, sau đó đ c chèn thêm thành chu i có đ dài 14 ký t (đây làổ ấ ả ượ ỗ ộ ự

chi u dài t i đa cho m t kh u theo ph ng pháp LM hash), ti p đó đ c chia thành haiề ố ậ ẩ ươ ế ượ
hash 7 ký t . Đây là m t đi m y u khi b n chu i m t mã b chia nh và ch đ c phépự ộ ể ế ạ ỗ ậ ị ỏ ỉ ượ
s d ng các ký t ASCII in hoa. Xét v b n ch t, thu t toán này làm cho vi c s d ngử ụ ự ề ả ấ ậ ệ ử ụ
các ký t khác cũng nh tăng chi u dài m t kh u tr nên vô nghĩa, đó chính là đi u làmự ư ề ậ ẩ ở ề
cho các m t kh u LM tr nên h ng đ i v i các c g ng crack l p l i nhi u l n (brute-ậ ẩ ở ổ ố ớ ố ắ ặ ạ ề ầ
force).
Hash m t kh u NTLMv2ậ ẩ
NT LAN Manager (NTLM) là m t giao th c th m đ nh c a Microsoft, giao th c nàyộ ứ ẩ ị ủ ứ
đ c t o ra đ k v LM. Có nhi u t i ti n, NTLMv2 đ c ch p nh n nh m tượ ạ ể ế ị ề ả ế ượ ấ ậ ư ộ
ph ng pháp th m đ nh m i đáng đ l a ch n và đ c th c thi trong Windows NT 4.ươ ẩ ị ớ ể ự ọ ượ ự
Quá trình t o m t NTLMv2 hash (t lúc này tr v sau chúng ta vi t t t là NT hash) làạ ộ ừ ở ề ế ắ
m t quá trình đ n gi n h n nhi u v i nh ng gì mà h đi u hành th c hi n, nó d aộ ơ ả ơ ề ớ ữ ệ ề ự ệ ự
vào thu t toán hash MD4 đ t o hash nh m t lo t các tính toán toán h c. Thu t toánậ ể ạ ờ ộ ạ ọ ậ
MD4 đ c s d ng ba l n đ t o NT hash. Trong th c t , m t kh u “PassWord123”ượ ử ụ ầ ể ạ ự ế ậ ẩ
s có k t qu là “94354877D5B87105D7FEC0F3BF500B33” sau khi s d ng thu tẽ ế ả ử ụ ậ
toán MD4.
Hình 2: M t kh u đ c chuy n đ i thành m t NTLMv2 hashậ ẩ ượ ể ổ ộ
MD4 đ c coi là m nh h n đáng k so v i DES vì nó cho phép m t kh u có chi u dàiượ ạ ơ ể ớ ậ ẩ ề
dài h n, có s phân bi t gi a các ký t in th ng và in hoa, không chia m t kh u thànhơ ự ệ ữ ự ườ ậ ẩ
các ph n nh h n (đi u t o s d dàng trong vi c crack).ầ ỏ ơ ề ạ ự ễ ệ
Có l phàn nàn l n nh t v i các NTLMv2 hash là r ng Windows không s d ng kẽ ớ ấ ớ ằ ử ụ ỹ
thu t mang tên salting (t m đ c d ch là p mu i). Salting là m t k thu t mà trongậ ạ ượ ị ướ ố ộ ỹ ậ
đó m t s ng u nhiên đ c t o ra đ tính toán hash cho m t kh u. Đi u này có nghĩaộ ố ẫ ượ ạ ể ậ ẩ ề
r ng cùng m t m t kh u có th có hai giá tr hash khác nhau hoàn toàn, đây th c s làằ ộ ậ ẩ ể ị ự ự
đi u lý t ng.ề ưở
Trong tr ng h p này, ng i dùng có kh năng t o nh ng gì đ c g i là các “ườ ợ ườ ả ạ ữ ượ ọ b ngả
c u v ng”ầ ồ (rainbow table). Các b ng c u v ng ả ầ ồ này không ph i ả là các b ngả đ c trangượ
đi m r c r ; mà chúng th c s là các b ng có ch a các giá tr hash cho s l ng m tể ự ỡ ự ự ả ứ ị ố ượ ậ
kh u có th đ i v i m t s l ng ký t nào đó. S d ng ẩ ể ố ớ ộ ố ượ ự ử ụ b ng c u v ngả ầ ồ , b n có thạ ể
l y m t cách đ n gi n giá tr hash đ c trích rút đ c t máy tính m c tiêu và th cấ ộ ơ ả ị ượ ượ ừ ụ ự

hi n m t tìm ki m. Khi giá tr hash đ c tìm th y trong b ng, b n s có m t kh u.ệ ộ ế ị ượ ấ ả ạ ẽ ậ ẩ
Nh nh ng gì b n có th hình dung, m t ư ữ ạ ể ộ b ng c u vòngả ầ th m chí ch v i m t sậ ỉ ớ ộ ố
l ng nh các ký t cũng có th tr thành r t l n, có nghĩa r ng s sinh sôi, l u tr vàượ ỏ ự ể ở ấ ớ ằ ự ư ữ
đánh ch s cho chúng s là m t nhi m v khó khăn.ỉ ố ẽ ộ ệ ụ
K t lu nế ậ
Trong ph n đ u tiên c a lo t bài này, chúng tôi đã gi i thích cho các b n v các hashầ ầ ủ ạ ả ạ ề
m t kh u và các c ch Windows s d ng đ t o và l u tr các giá tr đó. Chúng tôiậ ẩ ơ ế ử ụ ể ạ ư ữ ị
cũng đã gi i thi u nh ng đi m y u c a m i ph ng pháp và nh ng đ i l có thớ ệ ữ ể ế ủ ỗ ươ ữ ạ ộ ể
đ c s d ng đ crack các m t kh u đó. Trong ph n ti p theo c a lo t bài này chúngượ ử ụ ể ậ ẩ ầ ế ủ ạ
tôi s gi i thi u cho các b n v quá trình trích rút và crack các hash này đ minh ch ngẽ ớ ệ ạ ề ể ứ
cho nh ng đi m y u c a nó. Khi đã minh ch ng xong, chúng tôi s cung c p cho cácữ ể ế ủ ứ ẽ ấ
b n m t s l p b o m t b sung và t o m t m t kh u m nh th c s .ạ ộ ố ớ ả ậ ổ ạ ộ ậ ẩ ạ ự ự
HÀM HASH
Hàm hash (hash function) là hàm m t chi u mà n u đ a m t l ng d li u b tộ ề ế ư ộ ượ ữ ệ ấ
kì qua hàm này s cho ra m t chu i có đ dài c đ nh đ u ra.ẽ ộ ỗ ộ ố ị ở ầ
Ví d , t "Illuminatus" đi qua hàm SHA-1 cho k t quụ ừ ế ả
E783A3AE2ACDD7DBA5E1FA0269CBC58D.
Ta ch c n đ i "Illuminatus" thành "Illuminati" (chuy n "us" thành "i") k t quỉ ầ ổ ể ế ả
s tr nên hoàn toàn khác (nh ng v n có đ dài c đ nh là 160 bit)ẽ ở ư ẫ ộ ố ị
A766F44DDEA5CACC3323CE3E7D73AE82.
Hai tính ch t quan tr ng c a hàm này là:ấ ọ ủ
• Tính m t chi u: không th suy ra d li u ban đ u t k t qu , đi u này t ngộ ề ể ữ ệ ầ ừ ế ả ề ươ
t nh vi c b n không th ch d a vào m t d u vân tay l mà suy ra ai là chự ư ệ ạ ể ỉ ự ộ ấ ạ ủ
c a nó đ c.ủ ượ
• Tính duy nh t: xác su t đ có m t v va ch m (hash collision), t c là haiấ ấ ể ộ ụ ạ ứ
thông đi p khác nhau có cùng m t k t qu hash, là c c kì nh .ệ ộ ế ả ự ỏ
M t s ng d ng c a hàm hash:ộ ố ứ ụ ủ
• Ch ng và phát hi n xâm nh p: ch ng trình ch ng xâm nh p so sánh giá trố ệ ậ ươ ố ậ ị
hash c a m t file v i giá tr tr c đó đ ki m tra xem file đó có b ai đó thayủ ộ ớ ị ướ ể ể ị
đ i hay không.ổ

• B o v tính toàn v n c a thông đi p đ c g i qua m ng b ng cách ki m traả ệ ẹ ủ ệ ượ ử ạ ằ ể
giá tr hash c a thông đi p tr c và sau khi g i nh m phát hi n nh ng thay đ iị ủ ệ ướ ử ằ ệ ữ ổ
cho dù là nh nh t. ỏ ấ
• T o chìa khóa t m t kh u.ạ ừ ậ ẩ
• T o ch kí đi n t .ạ ữ ệ ử
SHA-1 và MD5 là hai hàm hash thông d ng nh t và đ c s d ng trong r tụ ấ ượ ử ụ ấ
nhi u h th ng b o m t. Vào tháng 8 năm 2004, t i h i ngh Crypto 2004,ề ệ ố ả ậ ạ ộ ị
ng i ta đã tìm th y va ch m đ i v i MD5 và SHA-0, m t phiên b n y u h nườ ấ ạ ố ớ ộ ả ế ơ
c a hàm hash SHA-1. Không bao lâu sau đó, vào kho ng gi a tháng 2 nămủ ả ữ
2005, m t nhóm ba nhà m t mã h c ng i Trung Qu c đã phát hi n ra m tộ ậ ọ ườ ố ệ ộ
ph ng pháp có th tìm th y va ch m đ i v i SHA-1 ch trong vòng 269 b cươ ể ấ ạ ố ớ ỉ ướ
tính toán (t c là có th nhanh h n brute-force vài nghìn l n).ứ ể ơ ầ
Văn Linh (Theo Windowsecurity)

×