CHÔM PASSWORD VÀ ĐỌC LÉN MAIL CỦA SẾP (PHẦN 3)

Vụ án 3 : Thằng Ếch chôm luôn password của Tư Nòng Nọc

Sau vụ án số 2, thằng Ếch đã hai lần vào đọc trộm email của Sếp Hai Nhái thì Sếp sáng mắt hẳn ra. Lúc này Sếp Hai Nhái mới thấy vai trò quan trọng của một người quản trị mạng và cơ sở hạ tầng mạng. Sau này Sếp Hai Nhái đâm ra thích thằng Ếch bởi vì cá tính của nó (có trách nhiệm và không chịu an phận) nên đi đâu cũng dắt nó theo từ việc ký hợp đồng tới ăn nhậu.

Vào một buổi cuối tuần đẹp trời, Sếp Hai Nhái dẫn theo thằng Ếch, Sếp Ba Cóc dẫn theo Tư Nòng Nọc cùng ra quán Xuân Vàng (quán bên bờ kè ở Phan Thiết) nhậu vài ve thư giãn. Sau một hồi chuyện trên trời dưới đất, anh Ba Cóc cứ khoe được cấp trên tài trợ nhiều kinh phí đầu tư cơ sở vật chất :

– Nào là máy tính mới, máy chủ mới, máy in mới …. kể cả con "xế hộp" mới … nên cơ quan tôi cứ như đổi mới hẳn ra. Nghe đâu cấp trên sắp cấp cho một khu đất có địa lý đẹp để xây mới và chuyển cơ quan về đó ….

Còn Tư Nòng Nọc thì cũng dâng lên theo cao trào của Sếp mà nói với thằng Ếch Con là :

– Chú mày cố gắng đọc sách nhiều một chút, nếu cần thì cứ liên hệ với anh mày, anh mày sẽ cho chú mượn máy quyển "1001 thủ thuật registry" và "Quản trị Windows Server 2003 Tiếng Việt" … thì chú mày sẽ khỏe re như anh. Setup mạng theo như sách xong thì chỉ có việc ngồi đọc báo vì mọi thứ hết sức bảo mật. Chú có thể chôm được password của Sếp chú trong hệ thống mạng của công ty chú chứ qua cơ quan anh thì hông có cửa đâu, anh bảo mật chặt chẽ lắm … khà khà.

Thằng Ếch cũng chỉ cười và cụng ly và cảm ơn cho có lệ vì thực chất nó đã đọc mấy quyển Training kit 290 (Managing and Maintaining a Microsoft Windows Server 2003 Environment) và 291 (Implementing, Managing, and Maintaining a Windows Server 2003 Network Infrastructure) rồi. Theo nó thì mấy quyển quản trị Windows bằng tiếng Việt đọc vào chỉ không hiểu thêm vì có rất nhiều từ trong chuyên nghành nên giữ lại thì tác giả dịch sát ván thành tiếng Việt luôn, thành ra nó không hiểu gì. Sếp Hai Nhái cũng không ưu gì cái thói khoe khoang đó nên nói nhỏ với nó "bữa nào chú mày sang đó quậy nó một phen đi, tao ghét mấy thằng yếu mà ra gió".

Vào một ngày nọ, Sếp Hai Nhái nhờ sang cơ quan Ba Cóc lấy giúp một số phim tư liệu vì làm quảng cáo, thằng Ếch hí hửng vì cơ hội đã tới liền quơ ngay cái laptop compaq của nó bỏ vào balô và sang cơ quan của Ba Cóc & Tư Nòng Nọc. Tới cơ quan nó đợi Tư Nòng Nọc burn đĩa liền xin một sợi cable mạng để ra net đỡ buồn, nó mở laptop và "chít" cable mạng vào và khởi động Cain & Abel (laptop của thằng Ếch lúc nào cũng được cài đặt sẵn các Hack tools như : Cain & Abel, Nmap, Wireshark, Metasploit Framework, Pwdump … để đụng đâu là đánh đó.

Thằng Ếch đã scan được 2 host và bắt đầu tiến hành ARP Poison

picture021 

picture022

Tiến trình Poison đang bắt đầu, thằng Ếch liền mở Yahoo Messenger lên để ngụy trang (ngụy trang kiểu Úc, hehe)

picture023

Thật là vô phúc cho anh Tư Nòng Nọc, anh ta không hay biết là thằng Ếch đang có dã tâm chôm password và đang sniff nên cứ vô tư truy cập sang máy sếp Ba Cóc để lấy dữ liệu.

picture024

picture025

Thằng Ếch mừng thầm vì cái nó đợi đã đây rồi, chết chưa Tư Nòng Nọc.

picture026

Nó liền gởi gói SMB (Server Message Block) mà nó đã sniff được sang tab Cracker để tiền hành giải mã.

picture027

Nó dùng cách Brute-Froce Attack để giải mã cái "đống bùi nhùi" mà nó sniff được.

picture028

Nó nhấn Start và chờ đợi

picture029

Bùm beng, password đã được giải mã rồi, thằng Ếch xém chút là hô to lên vì đã có password Admin của thằng cha Tư Nòng Nọc rồi.

picture030

Đố các bạn sau khi chú Ếch nhà ta đưa cái password này cho anh Tư Nòng Nọc thì cảm giác của anh Tư Nòng Nọc sẽ như thế nào ? Phần này tui xin để cho các bạn tự hình dung, còn tui thì đi ngủ đây. hehe

Have a good day.

CHÔM PASSWORD VÀ ĐỌC LÉN MAIL CỦA SẾP (PHẦN 2)

Vụ án 2 : Thằng Ếch Con cười haha vì lại một lần nữa đọc trộm email của Sếp Hai Nhái

Sau chiêu đăng nhập và ghi nhớ password của Tư Nòng Nọc chỉ cho Sếp Hai Nhái thì kế hoạch sniff lúc Sếp đăng nhập của thằng Ếch đã thất bại. Vậy làm thế nào đây ? Nó liền lục lọi các kiến thức mà nó đã biết để sắp xếp một cách logic quyết lấy được một xuất đi học bảo mật mà nó hằng mơ ước.

Đối với HTTP, sau việc đăng nhập thành công, để không phải hỏi lại nhiều lần thông tin đăng nhập. Web server sẽ lưu xuống máy client những thông tin cần thiết để kiểm tra lại, các thông tin lưu này được gọi cookie. Các cookie sẽ khác nhau ở từng website và do người lập trình thiết lập. Và ngoài thông tin xác thực user cookie còn có thể mang nhiều giá trị khác mà người thiết kế muốn.

Mỗi cookie lưu trên máy Client gồm các thông tin: Name, Content, Domain, Path, Expire date. Vậy nếu có được các cookie có giá trị, ta có thể kết nối đến Server với tư cách user sở hữu cookie đó.

Nghĩ đến đây rồi thì Ếch bắt đầu tiến hành, để làm được việc này nó cần phải chuẩn bị nhiều đồ nghề.

– Công cụ Cain & Abel để ARP spoofing.

– Sniff cookie với ferret

– Trình duyệt FireFoxadd-on Cookie Editor

Sau khi mọi thứ đồ nghề đã download sẵn hết rồi thì chú Ếch nhà ta mới hí hửng chuẩn bị … hành sự (tiếp tục con đường tội ác, hehe)

– Ếch ta vào CMD nhảy tới folder chứa ferret và gõ lệnh ferret.exe -W để xem thông tin chương trình cũng như số thứ tự card mạng mà nó muốn tiến hành sniffer.

– Sau khi xác định card mạng nó gõ lệnh ferret.exe -i 2 để tiến hành sniffer trên card số 2 và lướt web âm thầm đợi ông sếp check mail (thiệt là ác quá đi, hehe)

picture015

– Vừa được nửa lon Pepsi (chú ếch nhà ta có tật nghiện pepsi, thiếu pepsi là cái đầu nó ngu hẳn ra, hihi) thì nó nhận được khá nhiều thông tin HTTP GET, toàn bộ các thông tin này sẽ được lưu trong file hamster.txt ở cùng thư mục với ferret

picture016

– Ếch mở file hamster.txt ra thì đập vào mắt nó là "linh tinh hầm bà lằng" giá trị, nhưng nó chỉ để ý đến 2 giá trị "Y" & "T".

– Nó mở FireFox, truy cập http://mail.yahoo.com và chọn Cookie Editor để xóa tất cả các giá trị đăng lưu. Nó nhập vào đó 2 giá trị "Y" & "T" mà nó sniff được và save lại.

picture017

– Tất cả đã hoàn tất, nó lại truy cập http://mail.yahoo.com và "úm ba la sì bùa", nó đã đăng nhập được vào hộp thư [email protected] của sếp dựa vào cookie mà nó sniff được.

picture018 

– Nó lại tiếp tục đem kết quả này trình Sếp thì lúc này Sếp mới thật sự quan tâm. Sếp đã quyết định tài trợ cho Ếch Con đi học một khóa bảo mật và khi nó học xong thì sẽ tiến hành dự án nâng cấp hệ thống mạng của công ty Frog Co cho tốt hơn.

– Qua bài học này Sếp Hai Nhái rút ra được kết luận là

+ Cần lắng nghe các tâm tư nguyện vọng của nhân viên, xét thấy phù hợp thì nên triển khai để tránh gặp trường hợp "có hối cũng không kịp".

+ Khoan hẵn nghe lời "xàm tấu" của những người được gọi là "chiên gia".

Giải pháp chống sniffer

Việc detect sự hiện diện của sniffer trong LAN là một việc không đơn giản tí nào bởi vì sniffing là một hành động passive (thụ động), nó không trực tiếp tác động và gây thay đổi (cụ thể) nào để có thể nhận ra nó một cách dễ dàng. Không có một software nào có thể detect được sniffer một cách nhanh chóng và chính xác. Vì vậy để giảm thiểu Sniff thì ta nên áp dụng các phương pháp sau :

– Giải pháp cho việc chống bị sniff thì có: gán Static Mac-Address, dùng SSL, VPN,VLAN, Switch (hỗ trợ DHCP snooping, monitor port ).

– Detect sniff thì có hai cách nền tảng: detect promiscuous mode của NIC (từng host) và theo dõi tình trạng nội mạng (trọn bộ LAN).

picture019

Ảnh : Gán Static Mac-Address cho máy Sếp

picture020

Ảnh : Trình Sniffer sẽ không bắt được thông tin đăng nhập

Và đối với việc an toàn thông tin, điều đầu tiên và quan trọng nhất là quy định về an toàn thông tin. Nếu quy định đưa ra một cách rõ ràng và cụ thể cho mức độ vi phạm (như bị kỷ luật, cho nghỉ việc, bị truy tố trước pháp luật….) thì cơ hội thực hiện các hành động xâm phạm thông tin bất hợp pháp sẽ giảm thiếu ở mức tối đa. Không ai muốn đón nhận cái hiểm họa đến với mình nếu như hiểm họa ấy không đủ để đánh đổi điều mình cần lấy.

CHÔM PASSWORD VÀ ĐỌC LÉN MAIL CỦA SẾP

Lưu ý : Bài viết này là demo chứng minh cho tầm quan trọng của việc quản trị mạng chứ không phải hướng dẫn các bạn đi "chôm" pasword ! Đối với vai trò 1 Administrator thì không phải build up một network cho chạy là xong, mà phải kiểm soát và phải có phương hướng bảo mật cho network của mình. (Các tên nhân vật và tình huống câu chuyện là do tôi hư cấu)

Vụ án xảy ra tại công ty Frog Co ltd, có chú Ếch Con là IT chịu trách nhiệm chính của công ty Frog Co, công ty hoạt động ngày càng phát triển mạnh mẽ mà Sếp (Hai Nhái) vẫn không tăng lương cho chú Ếch nhà ta (nhân viên làm tại công ty Frog Co luôn có tiêu chí là "thêm việc chứ không thêm lương"). Công ty dùng mạng workgroup (mạng ngang hàng) và đều sử dụng thiết bị thuộc hàng "cổ lổ sỉ" (còn dùng Hub), chú Ếch muốn đề xuất mua một cái gì hoặc xin đi học cái gì đều bị Sếp bác bỏ bởi vì sếp ta luôn có một quan niệm : "cái gì còn sài được thì cứ sài". Sau nhiều ngày sống trong "áp bức và bốc lột" (e hèm !!! nói hơi quá, hihi) nên chú Ếch nhà ta muốn làm một cái gì đó để chứng tỏ mô hình mạng đang dùng hoàn toàn không an toàn, cần phải mua thêm thiết bị mới và triển khai các mô hình mạng Domain/Firewall/IDS …. để an toàn hơn và cũng như để chứng tỏ mình làm được nhiều việc mà tại sao Sếp lại …. không tăng lương.

Vậy chú Ếch nhà ta phải làm gì để tạo tiếng vang, để chứng minh cho Sếp thấy là mạng hiện tại không an toàn ? Có nhiều phương án hiện ra trong đầu Ếch : cài trojan chôm password Sếp ? Lấy dữ liệu trong laptop Sếp ? … và phương án cuối cùng nó nghĩ ra là dùng chương trình sniff để đọc lén email của Sếp cũng như …. chôm password email của Sếp. Chương trình Sniff mà Ếch chọn là Cain & Abel.

Vụ án 1 : Ông Sếp khóc huhu vì thằng Ếch biết được password email

Mô hình mạng công ty Frog Co như sau :

SnifferYahoo

– Trên máy tính của Ếch cài đặt phần mềm Cain & Abel.

picture001

– Phần mềm Cain đòi hỏi phải có WinPcap (WinPcap là một phần trong bộ tool packet sniffer, dùng để capture các gói tin trên mạng)

picture002

– Ếch ta vào CMD, dùng lệnh net view để xem các host đang kết nối trong mạng của mình.

picture003

– Sau khi đã biết được hostname của ông Sếp (hostname : DAODUYHIEU) thì chú Ếch liền ping để xem IP là gì.

picture004

– Ếch khởi động chương trình Cain và chọn card mạng để sniffer.

picture005

– Ếch chạy Mac Address Scanner để xem MAC và IP đang kết nối trong host

picture006

– Kết quả đã hiện ra, Ếch đã thấy được IP : 192.168.7.251 ứng với hostname của sếp nó là DAODUYHIEU.

picture007

– Ếch tiến hành bắt gói tin từ máy sếp tới router (router ở đây với IP : 192.168.7.200)

picture008

– Quá trình sniffer đã bắt đầu, chú Ếch lúc này cười hehe và chit chat đợi chờ Sếp ta check mail (thiệt là ác quá đi, hehe)

picture009

– Sếp ta vẫn không hay biết có một thằng Ếch đang có dã tâm "chôm" password của mình và cứ đăng nhập để check mail.

picture010

– Sếp đã đăng nhập vào mail và đọc mail.

picture011

– Lúc này chú Ếch nhà ta mới mở Cain lên và xem "tiến độ" như thế nào. E hèm, trong tab ARP đã bắt được các gói ARP-Cert và ARP-HTTPS rồi. Hehe, Ếch ta cười thầm trong bụng.

picture012

picture013

– Ếch chuyển sang tab Password thì … oh yeah !!! Tất cả mọi thứ nó cần đã ở đây, mục đích của nó đã thành công rồi. Theo như kết quả của nó thu thập được thì email của ông Sếp là [email protected] và password là MatKhau.

picture014

Chú  Ếch liền thông báo với Sếp là đã biết password của Sếp. Sếp ta không nói gì nhưng thật sự hoang mang vì chỉ mới hôm qua tới nay nó đã lấy được password của mình rồi. Trong một buổi nhậu chiều tại quán Thu Nở – 17 Võ Thị Sáu – Phan Thiết (Quán này tui hay nhậu hải sản nên giới thiệu luôn, hehe) Sếp (Hai Nhái) đã bày tỏ "tâm sự" này với anh Ba Cóc (anh Ba Cóc cán bộ của một cơ quan nhà nước, cũng là hàng Sếp) sự tình, vậy theo anh là có nên nâng cấp hệ thống của mình lên không ? Có nên cho thằng Ếch đi học cái khóa học gọi là bảo mật gì đó không ? Anh Ba Cóc trầm ngâm suy nghĩ (thực chất anh Ba Cóc mù tịt, nhưng cũng làm ra vẻ … trầm ngâm), đột nhiên Ba Cóc liền nhớ ra thằng Tư Nòng Nọc đệ tử của mình trên cơ quan liền giới thiệu với Hai Nhái đại khái là "thằng Tư Nòng Nọc trên cơ quan tui khá lắm, nó được tui cho đi học ở nước ngoài hoài, và cũng nghe nói là một héc cờ (hacker) gì đó nha". Hai Nhái như mở cờ trong bụng liền xin số và gọi ngay cho "chiên" gia Tư Nòng Nọc xin ý kiến, "chiên" gia Tư Nòng Nọc suy nghĩ liền phán rằng "Anh Hai Nhái khi vào email nhớ chọn ghi nhớ vào máy luôn thì không ai làm gì được đâu". Sếp Hai Nhái vui mừng liền sáng mai áp dụng chiêu này rồi bảo với Ếch rằng "tui mới được chiên gia bảo mật hướng dẫn cách phòng chống rồi, nếu chú vào được email tui lần nữa thì tui sẽ duyệt dự án nâng cấp của chú và cho chú đi học một khóa bảo mật".

Sau tuyệt chiêu của Tư Nòng Nọc chỉ cho Sếp Hai Nhái thì làm sao Ếch sniff được User/Password mà vào hộp thư của Sếp? Vậy dự án của Ếch có được thực hiện hay không ? Ếch có được đi học bảo mật hay không ? Hồi sau sẽ rõ.

Reset password Admin không cần hirenboot

Tý và Tèo là sinh viên và ở chung 1 phòng trọ. Tý có máy tính mà không cho Tèo sài ké, Tèo chỉ được ké máy khi có Tý ở cùng (Tý đặt password cho Adminin và tắt giao diện welcome screen, không cho boot từ CD và đặt password bios). Vậy thì khi Tý đi vắng thì Tèo làm thế nào để có thể dùng máy ? Tèo đã áp dụng chiêu này và "bùa" trước cái máy trong khi Tý cho phép sài ké.
Lợi dụng lúc Tý không chú ý, Tèo gõ lệnh :

 

cd C:\WINDOWS\system32
copy cmd.exe sethc.exe

picture1608_1

Sau khi Tèo đi vắng thì Tý boot máy, tới giao diện đăng nhập thì Tèo nhấn phím Shift 5 lần để gọi CMD.
– Sau khi có được cmd thì Tèo gõ lệnh sau để reset password thành 123

 

net user DaoDuyHieu 123

– Để tránh trường hợp Tý phát hiện là đã bị đổi pass, Tèo add thêm user tên mình và gán vào group Administrators

 

net user teo 123 /add
net localgroup Administrators teo /add

picture1608_2

Lúc này thì Tèo đã có thể dùng máy thoải mái khi Tý đi vắng 😀

Introduction to Cryptography (Hashes – Digital Signatures)

HASH1

Ở đây không phải tôi muốn trình bày về các chuyện làm loạn thần kinh2. Các thuật toán hash rất thường được sử dụng trong khoa học máy tính, và dường như là giải pháp thông dụng nhất để tăng tốc quá trình xử lý index trong các database hoặc các mảng dữ liệu lớn. Mặc dù chúng phổ dụng như thế, nhưng nhiều người vẫn không biết hash là cái quỷ gì. Trước khi chúng ta có thể bàn về chữ ký điện tử (digital signatures), bạn cần phải tìm hiểu về hash.

Thuật toán hash sẽ lấy ra một khối dữ liệu lớn và tinh giản nó thành một fingerprint 3, hay còn gọi là digest 4 của dữ liệu ban đầu. Nếu bạn đang là một khoa học gia máy tính, xin bạn vui lòng bỏ qua một hoặc hai đoạn tiếp theo đây, vì e rằng các mô tả về hash của tôi sẽ làm bạn chán. Tôi nghĩ rằng đưa ra hai ví dụ sau đây là cách đơn giản nhất để giải thích về thuật toán hash.

Một là, nếu tôi đưa cho bạn con số 483.820 và bắt bạn phải chia cho 4, bạn sẽ báo kết quả là 120.955. Như vậy, ta nói 120.955 là fingerprint của phép toán (483.820 / 4). Dù bạn có làm bài toán này bao nhiêu lần đi nữa, thương số vẫn sẽ là 120.955. Nhưng nếu bạn thay bất kỳ số hạng nào trong bài toán này bằng một con số khác, thương số sẽ không còn là 120.955 nữa.

Nhưng nếu tôi trao cho bạn con số 120.955 và không cho bạn biết thêm một thông tin nào khác, bạn sẽ không thể nói chắc chắn với tôi phép toán nguyên thủy là gì, vì rằng có một số vô hạn các phép chia có thể có thương số là 120.955.

Trên nhiều phương diện, các đặc điểm vừa nêu rất giống với những điều có liên quan đến thuật toán hash. Để hash, bạn sẽ lấy ra một khối dữ liệu lớn và tiến hành tính toán một phép tính nào đó trên toàn bộ khối dữ liệu đó. Kết quả thu được sau khi hash sẽ là một giá trị nhỏ hơn dữ liệu nguyên thủy. Nếu bạn thay đổi dữ liệu nguyên thủy, dù chỉ một bit thôi, giá trị hash được sẽ khác đi. Cũng như phép chia vừa nêu ở trên, sẽ có rất nhiều tập hợp dữ liệu khác nhau cùng tính ra chung một giá trị hash.

Hai là tôi muốn nói đến giá trị CRC (cyclic redundancy check)5. Giá trị này thường được gắn vào sau đa số các message khi chúng đi trên đường truyền.

CRC

Ảnh 1 : CRC

Khi message sắp được gửi lên đường truyền, thường sẽ có một đa thức duyệt qua tất cả các byte của message. Đa thức này sẽ cho kết quả là mã CRC (CRC code). Mã này sẽ được gắn vào sau message rồi gửi đi. Khi message đến đích, hệ thống ở nơi nhận sẽ duyệt bằng cùng một đa thức qua toàn bộ message (dĩ nhiên là trừ CRC nguyên thủy) và thu được bản CRC thứ hai (ta gọi là CRC’ như trong hình). Sau đó phần mềm sẽ so sánh CRC’ với CRC nguyên thủy. Nếu hai CRC trùng nhau, ta có thể tin chắc rằng message đã không hề bị sửa đổi khi gửi qua mạng.

CRC hoạt động như một fingerprint hay một digest của message, dùng để kiểm tra lại message khi nhận. Nhiều message có thể sản sinh ra cùng một giá trị CRC, và nếu chỉ một bit của message bị thay đổi, giá trị CRC sẽ thay đổi. CRC phô bày tất cả các thuộc tính tương đồng với các thuộc tính của hash.

Các thuật toán hash được dùng trong mã hóa đều được thiết lập với một số thuộc tính đặc biệt sau:

– Bạn không thể cho hash duyệt ngược để tìm lại bất kỳ clear text 6 nguyên thủy nào.

– Digest được tạo ra sẽ không thể cho bạn biết bất kỳ điều gì về clear text nguyên thủy.

– Không thể tính toán để tạo lại clear text được từ một giá trị cụ thể đã hash ra. Điều này làm cho khi attacker tráo văn bản sẽ gây ra việc không trùng khớp digest.

Có nhiều thuật toán hash để mã hóa. MD2 là thuật toán hash của nhóm RSA7, tạo digest 128 bit dùng tốt cho bộ vi xử lý cấp thấp 8 bit. MD5 cũng tạo ra digest 128 bit, dùng tốt cho bộ xử lý 32 bit. Thuật toán hash SHA-1 cũng dùng tốt cho các bộ xử lý cao cấp và tạo ra digest 160 bit.

 

Ghi chú:

Trong thực tế, các đa thức tạo CRC sẽ được xây dựng theo cách sao cho khi hệ thống ở nơi nhận duyệt bằng cùng một đa thức, sẽ không chỉ duyệt trên phần message, mà cả trên phần CRC nguyên thủy được đính kèm. Nếu message chưa bị xâm hại, CRC sẽ “cancel”việc tính toán một cách ngon lành và kết quả duyệt lần này của đa thức sẽ được gán bằng 0. Nếu có bất kỳ bit nào trong message hoặc CRC bị thay đổi, kết quả cho ra của đa thức sẽ khác 0. Điều này làm cho việc kiểm tra tính toàn vẹn (intergrity) của message trở nên nhanh chóng mà không phải dùng đến một phép toán so sánh hiện (explicit compare operation).

 

CHỮ KÝ ĐIỆN TỬ (Digital Signatures)

Bây giờ bạn đã là chuyên gia về thuật toán hash, hãy xem xem ta dùng chúng cách nào. Trong ví dụ này, tôi muốn thay đổi bài toán của chúng ta một chút. Hãy giả định rằng ở mục này tôi lại không quan tâm việc có ai đọc trộm Bí kíp nấu ăn của Bà Cụ (BKNA) hay không. Nếu vậy, BKNA có thể được gửi đi như một clear text. Việc để cho BKNA ở dạng clear text sẽ làm đơn giản hóa về mặt hình ảnh và sẽ cho phép ta tập trung hơn vào việc xử lý chữ ký điện tử.

Tuy nhiên, tôi rất muốn bảo đảm rằng BKNA là phải do chị tôi gửi đến. Tôi rất muốn ngăn ngừa một vấn đề đã từng được giải thích trước đây, đó là một hacker nào đó cố tình giúi cho tôi một BKNA khác.

Ở ảnh 2 trình bày thuật toán hash như một cái phễu. Bản clear text lớn sẽ được cho đi qua phễu và dưới phễu ta sẽ thu được digest.

Tao_chu_ki_dien_tu

Ảnh 2 : Tạo chữ ký điện tử

Như trong hình minh họa, ta bắt đầu với BKNA ở dạng clear text. Tại đây một thuật toán hash thích hợp đã được chọn để xử lý clear text BKNA , tạo ra một digest. Tiếp theo, key riêng của người gửi sẽ được dùng để mã hóa digest này. Digest đã mã hóa sẽ được gắn vào với clear text BKNA nguyên thủy và gửi đến người nhận qua đường Internet.

Kiem_tra_1_chu_ki_dien_tu

Ảnh 3 : Kiểm tra một chữ ký điện tử

————-

1 [hash] băm; (làm cho, mớ) lộn xộn.

2 Neuro-toxic substances

3 dấu tay-nên hiểu là cái đặc trưng-ND

4 bảng tóm tắt, bảng liệt kê

5 công cụ kiểm tra tính dư thừa tuần hoàn-nên hiểu là công cụ kiểm tra tính toàn vẹn của dữ liệu, và có thể dùng đi dùng lại nhiều lần-ND

6 bạch văn-văn bản đọc được, chưa bị mã hóa

7 Nhóm 3 người ở Học viện Kỹ thuật MIT (Rivest, Shamir và Adleman) đã sáng tạo ra thuật toán mã hóa công khai.

————-

Tài liệu tham khảo : PKI Implementing and Managing E-Security (Andrew Nash, William Duane, Celia Joseph, and Derek Brink)

Hacking Techniques for Attacks (Part 4)

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần 4 : Lừa đảo DNS (DNS Spoofing)

Có những kiểu tấn công DoS khác lại hoạt động gián tiếp. Những kiểu tấn công này thường không tập trung vào server mà thay vào đó, mục tiêu sẽ là client. Trong trường hợp này, máy tính client sẽ bị đánh lừa về nơi mà nó muốn đi lấy thông tin. Ví dụ, nếu bạn nghĩ rằng máy tính của bạn sẽ đi đến www.yahoo.com, nhưng hóa ra lại đi đến trang na ná như Yahoo! của hacker, thì có thể vô tình bạn đã cung cấp cho hacker password và những thông tin cá nhân của mình.

Bình thường, một máy tính client sẽ dùng query để hỏi DNS server, khi nó muốn đổi một tên domain hay một địa chỉ trang Web ra thành một địa chỉ IP. Có chuyện này, bởi vì máy tính client cần địa chỉ IP để định vị Web server hay email server dùng tên domain nó đang quan tâm. Quá trình này được tiến hành qua ba bước như sau :

1.Client hỏi DNS server địa chỉ IP ứng với tên domain là bao nhiêu.

2. DNS server sẽ dùng các query để tên domain đã được hỏi.

3. Client kết nối với Web server theo địa chỉ IP đã được DNS server cung cấp.

Domain_Name_System

Ảnh 5 : Hệ thống Domain Name (Domain Name System)

Tuy vậy, quá trình này có thể dễ dàng bị lợi dụng để đẩy các user cả tin đến những trang Web tầm bậy, hoặc hướng dẫn email đi (outgoing email) phải đi qua những máy tính bất lương. Việc này được thực hiện bằng cách ghi các địa chỉ IP sai vào database của DNS server . Khi điều này xảy ra, hầu như client không thể nhận ra được là đang có vấn đề. Khả năng bại lộ duy nhất chỉ có khi các entry của DNS sever được kiểm tra một cách đặc biệt, hoặc server của hacker bị down.

DNS_gia_mao

Ảnh 6 : DNS giả mạo

Trong trường hợp một entry của DNS server bị hack, chỉ có những email đi mới bị gửi đến khu vực lừa đảo, trừ phi mail server sử dụng cùng một DNS server với client. Trong trường hợp tệ hại như thế, cả email đi lẫn email đến (incoming email) đều bị hướng dẫn phải đi qua một máy tính bất lương. Tuy nhiên, trong ví dụ của chúng ta, giả định rằng mail server đang dùng một DNS server rất an ninh để phân giải tên các domain.

Trong trườnghợp DNS server bị hack thì :

1. Client B hỏi địa chỉ IP của “youremail.com”

2. DNS server đã bị hack sẽ trả lời lại một địa chỉ IP đã bị giả mạo là 192.168.0.10

3. Client B kết nối với mail server giả mạo và gửi mail đi.

4. Server giả mạo sẽ tạo bản email copy rồi gửi đến mail server thật.

5. Mail server thật-dùng một DNS server an ninh-sẽ gửi mail đến client như bình thường.

Kịch bản như trên có thể sẽ cung cấp cho hacker một số thông tin có giá trị. Ví dụ như, nếu client B là một bác sĩ hay một luật sư, hacker sẽ có thể truy xuất các hồ sơ nhạy cảm. Nếu client B đang làm việc trong một dự án tối mật, hacker có thể bán các thông tin cho một công ty cạnh tranh. Hoặc nếu như client đang được dùng như một trang Web bán hàng trực tuyến, hacker có thể chộp được từng email xác nhận (confirmation email), trong đó có đầy đủ địa chỉ khách hàng hoặc/và số của thẻ tín dụng.

Như bạn cũng thấy, một màn lừa đảo DNS có khả năng phá hoại rất rộng lớn. Khi hacker muốn biến mất một trang Web hay muốn chộp các email, hắn ta chỉ việc từ chối dịch vụ những ai dùng trúng DNS server đã bị hack. Tuy nhiên cũng có một cách giải quyết vấn đề này.

Các DNS server có thể được cấu hình sao cho an ninh hơn. Thực tế đánh giá cho thấy có khoảng một nửa đến ba phần tư số DNS server là chẳng có an ninh gì cả. Đây là vấn đề đã biết, vì vậy nếu bạn quan ngại rằng có khả năng các DNS server của bạn cũng chẳng an ninh, hãy tiếp xúc với ISP (Internet Service Provider : nhà cung cấp dịch vụ Internet) của mình và phỏng vấn họ về những software họ đã dùng; cũng như có an toàn không nếu bị tấn công theo kiểu lừa đảo. Hy vọng rằng, họ sẽ biết bạn đang nói về cái gì và sẽ cho bạn các câu trả lời xác đáng.

Qua 4 phần của bài viết này tại DaoDuyHieu’s Blog, tôi vừa giải thích một số cách hacker dùng để vô hiệu hoá hoặc làm sụp đổ các hệ thống tiêu mà không cần phải xâm nhập. Với các kỹ thuật làm tràn ngập kết nối giả mạo, làm sụp đổ do tràn bộ nhớ đệm hay lừa đảo DNS, các hacker có thể làm cho cuộc sống của bạn trở nên khốn đốn. Hơn nữa, mặc dù trong những kiểu tấn công này, hacker không thể xâm nhập được, nhưng nếu chúng được dùng kết hợp với những kiểu tấn công khác, các hacker có thể chiếm được quyền truy cập trái phép. Ví dụ, một hacker có thể sẽ nã dồn dập (hammer) firewall của bạn, đảm bảo giữ cho firewall của bạn trở nên quá bận bịu với việc sắp xếp các dữ liệu để trả lời vô ích. Điều này về lý thuyết đã cho phép hacker truy cập thoải mái hệ thống của bạn.

Về mặt thống kê mà nói, có nhiều khả năng tấn công những máy khác, hơn là tấn công máy tính của bạn như một mục tiêu. Tuy vậy, cũng có điều an ủi nho nhỏ. Nhiều user thích trực diện chiến đấu với các cuộc tấn công hơn là trở thành một nô lệ. May thay, bây giờ bạn đã có đủ kiến thức để hiểu cái gì xảy ra ở sau sân khấu. Các bài tiếp theo của mình sẽ được xây dựng từ những hiểu biết này sẽ cho phép bạn tự phòng thủ hiệu quả hơn và sẽ cập nhật tại DaoDuyHieu’s Blog, các bạn đón theo dõi nha.

Hacking Techniques for Attacks (Part 3)

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần 3 : Làm quá tải hệ thống (System Overloads)

Một kiểu tấn công DoS khác là tấn công các phần mềm đang chạy trên máy tính mục tiêu. Trong các chương trình máy tính, cứ trung bình khoảng 1000 dòng lệnh sẽ có một lỗi (glitch, bug), mà một chương trình thì có thể dài đến cả tỉ dòng, như vậy số lỗi có thể sẽ lên đến cả trăm, cả ngàn. Nếu một hacker biết cách khai thác các lỗi đặc biệt này, anh ta có thể đánh gục được máy tính mục tiêu. Ví dụ, trong một chương trình mua hàng trực tuyến nổi tiếng, người ta đã phát hiện được một lỗi về lập trình có thể làm cho tải của bộ xử lý trung tâm tăng vọt lên đến 100%, như thế cũng có nghĩa là không chương trình nào khác có thể chạy được nữa. Lúc đó chỉ cần gửi đến một yêu cầu đơn giản có dạng chính thức “http://” là có thể cho server mục tiêu sụm bà chè.

Kiểu tấn công này cũng giống như tháo nắp lọ muối. Bình thường, lọ muối hoạt động rất tốt. Nhưng nếu có ai đó hiểu rõ cấu tạo của lọ muối và bí mật tháo lỏng nắp của nó ra. Thế là ô la la, dĩa của bạn ngập đầy muối mặn đắng.

Kiểu tấn công DoS này thường được dùng để khai thác cùng với một vụ làm tràn bộ nhớ đệm. Những kỹ thuật hacker thường dùng để truy cập trái phép (Hacking Techniques for Unauthorized Access), hacker có thể làm tràn bộ nhớ đệm như là một mánh khóe để ép máy tính phải chạy một chương trình bất hảo. Tuy nhiên, kiểu truy xuất này nói chung là khó dùng, bởi vì làm tràn bộ nhớ đệm thường sẽ làm cho máy tính sụm luôn. Như đã giải thích ở phía trước, đoạn chương trình làm tràn sẽ nạp đầy vào một đoạn bộ nhớ đã được xác định trước, sau đó sẽ làm tràn vùng nhớ bên trên, như thế sẽ ghi đè lên dữ liệu của các biến bộ nhớ khác. Lúc đó, nếu có một chương trình nào cần lấy dữ liệu, sẽ đi truy xuất đúng vào các biến bộ nhớ đã bị ghi đè, thế là chương trình “tưng” luôn, và thường là sẽ kéo theo cả máy tính “tưng” luôn cùng với nó.

Các vụ tấn công DoS là mối đe dọa không chỉ đối với các công ty, doanh nghiệp lớn, mà cả đối với các văn phòng nhỏ và người dùng tại nhà. Hiện có sẵn hằng hà sa số các chương trình có thể cho bất kỳ ai khả năng làm tràn một mục tiêu. Chỉ một cái click chuột đơn giản là có thể đổ ầm ầm hàng trăm gói tin SYN xuống thẳng đầu nạn nhân. Nếu bạn nghi là bị tấn công bằng kiểu từ chối dịch vụ, bạn có thể dùng tool NETSTAT để xác định có bị tấn công hay không. Dùng tool này sẽ thấy hiện lên rõ ràng vụ tấn công nếu có. Trong hình dưới trình bày một kết quả của tool NETSTAT cho thấy có một cuộc tấn công SYN. Các dòng ở cột State cho thấy rất rõ hiện đang có một vụ tấn công SYN diễn ra ngầm bên dưới.

SYN_RECV

Ảnh 4 : Các kết nối Internet hiện có (kể cả các server)

Như bạn cũng có thể thấy, các cuộc tấn công DoS cũng không đến nỗi phức tạp lắm. Vì rằng, một hacker có thể dễ dàng tìm được các chương trình tấn công có sẵn, cho nên các cuộc tấn công này cũng đâm ra rất phổ biến. Đến đây có thể bạn sẽ hỏi, “Làm sao để ta có thể ngăn chận các cuộc tấn công DoS?”. Thật đáng tiếc là đến nay cũng chưa thể ngăn chận triệt để các cuộc tấn công như thế.

Vì rằng các cuộc tấn công này dựa trên nguyên lý cơ sở để các máy tính xây dựng nên các liên lạc với nhau, cho nên cách duy nhất để chấm dứt những chuyện bậy bạ này là đi sáng chế ra lại một Internet mới. Đến nay cách thức thực tế duy nhất để làm giảm bớt các cuộc tấn công như vậy là chặn (block) tất cả các traffic đến từ một số vùng đặc biệt của Internet. Dù sao, như chúng tôi đã giải thích, các hacker thường có rất nhiều máy tính nô lệ, thường nằm trong các mạng của các trường đại học hay của các công ty. Nếu một server cấm cửa đối với một địa chỉ rõ ràng đã gây ra vụ tấn công, cũng đồng nghĩa là server này cấm mọi người ở hướng đó truy cập mình. Điều này sẽ giống như đặt một chế độ kiểm dịch lên toàn thành phố chỉ vì một người duy nhất trong thành phố bị bệnh thủy đậu.

Hacking Techniques for Attacks (Part 2)

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần 2 :  Xì trum tấn công (Smurf Attacks)

Một biến thể của tấn công DoS gây tràn ngập là tấn công kiểu Smurf (*). Bạn hãy tưởng tượng một công ty nọ có năm mươi nhân viên chuyên giải đáp thắc mắc của khách hàng bằng email. Mỗi nhân viên này dùng một chương trình trả lời tự động không giới hạn, chương trình này sẽ tự động gửi các mail trả lời lịch sự khi nhận được câu hỏi. Điều gì sẽ xảy ra, nếu có một khách hàng vì bực bội đã gửi một trăm bản email copy cho mỗi người trong số năm mươi nhân viên nói trên, với địa chỉ email trả về (return address) giả mạo? Lúc đó một trăm email đến sẽ làm phát sinh… năm ngàn email đi, mà lại đi tới chỉ… một mailbox duy nhất. Vô phúc cho ai sở hữu địa chỉ bị ông khách hàng quý hóa kia lấy làm địa chỉ giả mạo, mailbox của anh ta sẽ tràn ngập những mail là mail! Điều đau khổ của khổ chủ là phải ngồi duyệt hết đống xà bần đó, để bảo đảm là không bỏ sót một email quan trọng nào do xếp hoặc bạn bè mình gửi đến, hix hix. Tấn công kiểu Smurf cũng tương tự như ví dụ vừa nêu. Kẻ tấn công sẽ gửi một tín hiệu yêu cầu đến một mạng nhiều máy tính, và tất nhiên là mỗi máy tính trong mạng đều sẽ trả lời cho một địa chỉ giả mạo. Các chương trình đặc biệt kết hợp một số kỹ thuật khác sẽ khuếch đại chuyện này cho đến khi một cơn lũ thông tin ập đổ xuống đầu một máy tính tội nghiệp.

Smurf

Ảnh 3: Các tấn công DoS có thể phá hủy ảo cả một hệ thống máy tính.

Như bạn đã biết, một máy tính sẽ bỏ qua tất cả các gói tin không có địa chỉ rõ ràng chính xác. Có một ngoại lệ cho chuyện này nếu máy tính dùng loại card mạng chạy ở mode ngẫu nhiên (promiscuous). Tuy nhiên, có một ngoại lệ khác nữa mà chúng ta vẫn chưa bàn tới.

Công ty của bạn sẽ làm gì nếu muốn chuyển một thông báo quan trọng tới tất cả mọi người trong công ty? Nếu email là một trong các khả năng, công ty sẽ gửi một spam mail nội bộ tới mọi thành viên có địa chỉ email. Mặt khác, công ty có thể thông báo trên hệ thống loa. Hoặc họ có thể đặt một bảng thông báo gần máy bán cà phê tự động. Tất cả những kỹ thuật vừa nêu chỉ nhằm đảm bảo cho hầu hết nhân viên đều có thể nhận được thông tin. Cũng tương tự như vậy trong một mạng máy tính, có rất nhiều lúc server cần gửi thông tin đến từng máy tính thành viên trong mạng. Điều này được hoàn tất bằng cách sử dụng địa chỉ broadcast.

Do cách xây dựng địa chỉ IP bên trong một mạng, luôn luôn có một địa chỉ mà mỗi máy tính đều sẽ trả lời. Địa chỉ này được gọi là địa chỉ broadcast và thường được dùng để cập nhật các danh sách tên và những mục cần thiết khác mà các máy tính đều cần để giữ cho mạng tồn tại và hoạt động được. Mặc dù địa chỉ broadcast là cần thiết trong một số trường hợp, nhưng nó cũng có thể đưa tới cái gọi là cơn bão broadcast.

Một cơn bão broadcast cũng tương tự như một tiếng vọng không bao giờ mất. Còn đặc biệt hơn nữa, nó giống như một tiếng vọng nhưng lại mạnh dần lên cho đến khi bạn không còn có thể nghe thấy gì nữa vì quá ồn. Nếu một máy tính gửi đi một yêu cầu đến hệ thống mạng nhưng lại dùng địa chỉ broadcast và địa chỉ trả về cũng là địa chỉ broadcast thì từng máy tính trong mạng sẽ đáp ứng đến từng lời đáp ứng của máy tính khác; chuyện này tiếp tục diễn ra theo hiệu ứng quả cầu tuyết (**) cho đến khi toàn mạng đầy những gói tin echo khiến cho chẳng còn gì có thể gửi qua được nữa.

Bây giờ bạn đã hiểu cách thức làm việc của broadcast, hãy tưởng tượng cái gì xảy ra nếu một hacker gửi một ngàn gói tin broadcast đến mạng của chúng ta và hắn lại dùng địa chỉ IP trả về giả mạo (Spoofed Return IP Address). Mạng chắc chắn sẽ khuếch đại các gói tin ban đầu lên thành mười ngàn hoặc trăm ngàn gói tin và tống tất tần tật đến một máy tính vô tội bị giả địa chỉ.

Trong trường hợp này, không giống như kiểu tấn công SYN, máy tính mục tiêu vẫn có thể xây dựng một chầu kết nối với máy tính phát yêu cầu. Tuy nhiên, sự tăng quá mức của các yêu cầu kết nối sẽ làm cho server ngập đầu ngập cổ, và như thế là server trở nên vô dụng.

Những kiểu tấn công này không chỉ quất sụm server một cách nhanh chóng và hiệu quả, mà còn giữ cho hacker trở nên vô hình. Với bản chất của cuộc tấn công như vậy, sẽ không thể lần ra được gói tin nguyên thủy do hacker gửi. Trong trường hợp tấn công bằng SYN, địa chỉ phải là địa chỉ bịp. Như thế, điểm xuất phát nguyên thủy của gói tin cũng coi như không thể biết được. Trong trường hợp tấn công kiểu smurf, hacker sẽ không trực tiếp tấn công mục tiêu, mà thay vào đó là dùng hiệu ứng phụ của việc gửi tín hiệu broadcast đến mạng để thực hiện âm mưu một cách gián tiếp. Như thế cuộc tấn công xuất hiện như đến từ hệ thống mạng khác hoặc máy tính khác.

———-

(*) Smurf là tên software lần đầu tiên áp dụng thành công kỹ thuật gây tràn ngập bằng các gói tin broadcast và ping. Tên này lấy theo các nhân vật truyện tranh của họa sĩ người Bỉ Peyo, bản dịch ở Việt Nam gọi là xì trum, gồm 101 chú nhóc bé tí da màu xanh. Bạn có thể xem chi tiết tại:

http://en.wikipedia.org/wiki/Smurf

http://en.wikipedia.org/wiki/Smurf_attack

http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci213012,00.html

(**) Chắc bạn không lạ gì hiệu ứng này, khi lăn theo sườn dốc phủ đầy tuyết thì đầu tiên chỉ là một nắm tuyết, nhưng đến chân dốc lại là một quả cầu tuyết khổng lồ.

Hacking Techniques for Attacks (Part 1)

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần I : Làm tràn ngập bằng SYN (SYN Flooding)

Kiểu tấn công DoS thứ nhất là làm tràn ngập bằng tín hiệu SYN. Một vụ tấn công SYN sẽ bắt buộc các tài nguyên của máy tính mục tiêu ngừng hoạt động, bằng cách ép chúng phải đáp ứng một cơn lũ các lệnh. Để có thể hiểu được điều này, hãy tưởng tượng bạn đang làm thư ký trong một công ty, nhiệm vụ của bạn là trả lời và chuyển các cuộc gọi điện thoại. Cái gì sẽ xảy ra nếu cùng lúc có hai trăm người gọi đến và đều cúp máy khi bạn bắt máy trả lời? Bạn sẽ rất bận rộn để bắt cho hết các cuộc điện thoại tào lao này (làm sao dám bỏ một cuộc gọi nào), và chắc chắn bạn sẽ không thể làm xong bất kỳ công việc nào khác. Cuối cùng bạn sẽ khóc rưng rức, sẽ khùng luôn và chắc chắn phải “say goodbye” với cái ghế thư ký khốn khổ đó. Hacker sẽ dùng một kỹ thuật giống như vậy khi họ triển khai một vụ tấn công DoS.

SYN_Flooding

Ảnh 1 : Ví dụ minh họa tấn công từ chối dịch vụ (DoS) bằng điện thoại.

Để tiến hành một vụ tấn công DoS, đầu tiên hacker phải xác định được địa chỉ IP của mục tiêu. Sau đó, hacker sẽ dùng địa chỉ IP này để kết nối vào mục tiêu bằng một máy tính client. Để khuếch đại uy lực của cuộc tấn công, hacker sẽ thường setup rất nhiều máy tính client cùng lúc tấn công mục tiêu. Để làm được việc này, thường thì trước đó hacker đã phải thực hiện vài cú hack mở màn để lấy được quyền điều khiển trên một loạt máy tính có băng thông kết nối rộng. Nguồn phổ biến nhất để cung cấp những máy tính “nô lệ” này chính là hệ thống mạng máy tính của các trường đại học hoặc là hacker sẽ dùng những credit card “chùa” để thuê các server và dùng nó làm công cụ phục vụ ý đồ của mình. Khi hacker setup xong các máy tính nô lệ của mình, anh ta sẽ ngồi ở trung tâm điều khiển bà bắt đầu phát động cuộc tấn công.

Quy trình kết nối liên lạc của máy tính gồm 3 bước bắt tay. Một cú tấn công theo kiểu SYN sẽ cải biên quá trình bắt tay này, nhằm hạ gục bằng cách làm cho máy tính bị quá tải. Như bạn đã biết, đầu tiên máy tính client sẽ gửi gói tin SYN đến máy tính server để bắt đầu kết nối. khi máy tính server nhận được gọi tin này, nó sẽ xử lý tím địa chỉ trả về và gửi ngược lại một gọi tin SYN ACK. Đây chính là điểm mà cuộc tấn công DoS tìm kiếm.

Một server bao giờ cũng chỉ có một số hạn chế các tài nguyên để dành cho các kết nối của client. Khi một server nhận được gói tin SYN khởi tạo từ client, server mới bắt đầu định vị các tài nguyên này. Điều này cũng có nghĩa là số kết nối client cùng lúc sẽ bị giới hạn. nếu cùng lúc có quá nhiều client kết nối, server sẽ bị tràn và sẽ “bức sô” do quá trình xử lý bị quá tải.

Yếu điểm của hệ thống lúc này sẽ hiện ra khi hacker cố tính đưa vào một địa chỉ trả về giả mạo trong gói SYN ban đầu. Như vậy, khi server gửi ngược gói tin SYN ACL cho client giả mạo, nó sẽ không bao giờ nhận được gói tin ACK kết thúc. Như vậy là đối với từng gói SYN giả mạo, các tài nguyên càng ngày càng bị buộc phải ngưng hoạt động cho đến khi mà server từ chối không nhận thêm kết nối nào nữa. Để tấn công được, cần phải có vô số các gói tin giả mạo, nhưng nếu hacker có nhiều máy tính nô lệ để cùng gửi các gói tin, anh ta có thể làm quá tải hệ thống một cách nhanh chóng.

SYN_Flooding2

Ảnh 2 : Tấn công kiểu SYN

Một ví dụ nổi tiếng của kiểu tấn công này đã xảy ra vào cuối năm 1999. Rất nhiều Web xịn đã bị sụm trước một cơn lũ các tín hiệu cùng lúc đến từ hàng trăm máy tính khác nhau. Các trang Web sẽ không hề hấn gì nếu cuộc tấn công chỉ xảy ra từ một máy; tuy nhiên, bằng việc dùng các chương trình điều khiển từ xa, một hoặc một số hacker sẽ phát động một cuộc tấn công phối hợp dùng cùng lúc hàng trăm-hàng ngàn máy tính, như vậy mục tiêu của họ sẽ bị quá tải một cách nhanh chóng.

———

Tài liệu tham khảo : Windows Internet Security-Protecting Your Critical Data (Seth Fogie & Dr. Cyrus Peikari)