MODULE 1 Những Nội Dung Chính Trong Chương Này Các Thuật Ngữ Về An Toàn Thông Tin Những Kỹ Thuật Tấn Công Các Giai Đoạn Tấn Công Hacktivism Là Gì Phân Lọai Hacker Hành Động Của Ethica
Trang 1MODULE 1
Những Nội Dung Chính Trong Chương Này
Các Thuật Ngữ Về An Toàn Thông Tin
Những Kỹ Thuật Tấn Công Các Giai Đoạn Tấn Công
Hacktivism Là Gì Phân Lọai Hacker Hành Động Của Ethical Hacker Mục Tiêu Của Những Kẻ Tấn Công Những Kỹ Năng Cần Thiết Để Trở Thành Ethical Hacker
Tìm Kiếm Các Lổ Hỗng Bảo Mật Quy Trình Tấn Công Thử Nghiệm Tạo Bản Kế Hoạch Đánh Giá Bảo Mật
Blackbox Và Whitebox Các Kiểu Tấn Công Của Ethical Hacker
Ethical Hacking Report Tính Hợp Lệ Của Việc Tấn Công
Trang 2
Khi nhắc đến hacker có lẽ hầu hết chúng ta đều liên tưởng đến các trang web bị tấn công
và thay đổi giao diện, việc sử dụng trái phép thẻ tín dụng hay hình ảnh của một nhóm
người mang mặt nạ là các thành viên thuộc nhóm hacker Anonymous, xa hơn nữa là những thông tin mật bị đánh cắp và đăng tải trên trang web Wikileak mà chương trình truyền hình đã đưa tin Như vậy, một cách không chính thức mọi người đều cho rằng hacker là những kẻ xấu chuyên phá hoại và ăn trộm định danh, thông tin bí mật trên mạng internet, và điều này hoàn toàn sai đặc biệt là trong lĩnh vực CEH
CEH viết tắt của Cetified Ethical Hacker là chứng chỉ công nhận những hacker thiện chí hay còn gọi là hacker mũ trắng, những người có kỹ năng của một hacker nhưng hành động của họ hoàn toàn trong sáng, không vi phạm pháp luật mà còn đóng góp cho vấn đề bảo mật, an toàn thông tin
Các Thuật Ngữ Về An Toàn Thông Tin
Để có thể nhận thức được các mối nguy hiểm chúng ta cần hiểu một số thuật ngữ sau
trong lĩnh vực an toàn thông tin, đó là threat, remote exploit, local exploit, vulnerability, target of evaluation, attack
Threat là các mối đe dọa đối với sự an toàn của thông tin bao gồm hacker, virus,
sự cố máy tính như hư hỏng phần cứng, lỗi phần mềm cho đến những nguyên nhân do thiên tai, hỏa hoạn cũng là các threat
Vulnerability là những điểm yếu về bảo mật của hệ thống như thiếu các bản vá lỗi
bảo mật, sử dụng chính sách mật khẩu yếu … đều là các điểm nhạy cảm có khả
năng bị các threat khai thác gây mất an toàn thông tin
Exploit là quá trình khai thác các điểm yếu bảo mật để đánh cắp thông tin, tiến
trình này có thể được thực hiện bởi những tác nhân bên trong hay bên ngoài hệ thống
Remote exploit là quá trình khai thác các lổ hỗng bảo mật từ xa ở trên máy tính
khác hay từ internet
Local exploit là quá trình khai thác những điểm yếu bảo mật ngay trên hệ thống
để tiến hành leo thang nâng quyền hạn của một tài khoản, hay bẻ khóa mật khẩu của ứng dụng
Trang 3Target of evaluation là những mục tiêu có khả năng chứa các lổ hỗng bảo mật có
thể bị tấn công Các mục tiêu nay có thể là một máy chủ, máy trạm,những ứng dụng hay các trang web
Attack là thuật ngữ chỉ tiến trình tấn công vào mục tiêu
Những Kỹ Thuật Tấn Công
Có nhiều công cụ và phương pháp để tìm kiếm các lổ hỗng bảo mật, tiến hành khai thác, tấn công hệ thống Những kỹ thuật này bao gồm trojan, backdoor, sniffer, rootkit, khai thác lỗi tràn bộ đệm Buffer Overflow hay SQL Injection … mà chúng ta sẽ thảo luận trong các phần sau Thông thường hacker sẽ tập trung tìm kiếm các lổ hỗng bảo mật của những thành phần :
Hệ Điều Hành : Nhiều hệ thống được cài đặt và cấu hình mặc định, nghĩa là không có sự thay đổi hay tùy biến để nâng cao tính an toàn Ngoài ra, những máy tính không được cập nhật các bản vá hay cài đặt các chương trình sữa lỗi bảo mật cũng là mồi ngon của các kẻ tấn công
Ứng Dụng : Mỗi máy tính có nhiều ứng dụng được cài đặt, nếu những chương trình này có lổ hỗng bảo mật cũng có thể bị hacker tấn công chiếm quyền điều khiển từ xa
Shrink-wrap Code : Đây là các thành phần mở rộng của ứng dụng mà nhiều người dùng không hề hay biết, nhưng hacker sẽ biết rất rõ các thành phần này ví dụ như chức năng macro trong ứng dụng MS Word cho phép các hacker chạy những chương trình độc hại trong ứng dụng xử lý văn bản này Hay các lỗi Active X cho phép hacker chạy lệnh từ xa thông qua trình duyệt của nạn nhân
Lỗi Cấu Hình : Việc cấu hình sai là một trong những nguyên nhân chính khiến hệ thống bị tấn công, ví dụ các lỗi liên quan đến việc gán quyền không chặt chẽ có thể cho phép hacker hay người dùng bất kì sao chép và chạy những chương trình trái phép
Bên cạnh các kỹ thuật trên, những cuộc tấn công được chia làm hai trạng thái hoạt động
là passvie (bị động) và active (chủ động) Những cuộc tấn công bị động thường khó dò
tìm hơn vì không tương tác trực tiếp vào hệ thống hay đường truyền mà chỉ âm thầm thu
thập các thông tin, dữ liệu Nghe lén hay sniffing là dạng tấn công thuộc loại này, những
hacker nghe lén dữ liệu được gọi là sniffer và thường tập trung vào tính riêng tư của thông tin
Trang 4Trong khi đó dạng tấn công chủ động có sự tương tác trực tiếp vào hệ thống xác thực hay đường truyền làm thay đổi tính toàn vẹn, ảnh hưởng đến khả năng đáp ứng của dữ liệu Những dạng tấn công thuộc loại này như DDoS, Scan Port …
Bên cạnh sự phân loại tấn công dựa trên trạng thái hoạt động thì chúng ta còn xác định chúng theo vị trí địa lý là ở phía bên trong hay bên ngoài hệ thống tương ứng với các
thuật ngữ là insise hay outside Những kẻ tấn công inside là các insider thường là nhân
viên hay những người có mối liên quan trực tiếp đối với tổ chức, vì vậy tác động của dạng tấn công này rất lớn và nguy hiểm Theo một số thông kê thì có tới 80 % tác nhân gây mất mát thông tin là những thành viên bên trong của hệ thống Tuy nhiên, những thành viên bên ngoài lại có những mối nguy hiểm khác vì họ thường đông đảo hơn, có trình độ kỹ thuật cao và mục tiêu tấn công của họ thường nhắm vào những hệ thống ít được bảo vệ hay có sự giao tiếp với môi trường công cộng (còn được gọi là môi trường không tin cậy) như các máy chủ cơ sở dữ liệu, trang web
Hình 1.1 – Phân loại các dạng tấn công dựa trên trạng thái hoạt động và vị trí địa lý Trong bài thi lấy chứng chỉ CEH có nhiều câu hỏi liên quan đến các dạng tấn công này,
do đó chúng ta cần ghi nhớ các đặc điểm chính của mỗi loại tấn công để có thể đưa ra câu trả lời chính xác nhất
Các Giai Đoạn Tấn Công
Một cuộc tấn công được chia làm năm giai đoạn là Reconnaissance, Scaning, Gaining Access, Maintaining Access, và Covering Track một số tài liệu còn gọi là Clear Track như hình 1.2
Trang 5Hình 1.2 - Năm giai đoạn tấn công
Phase 1 : Passive và Active Reconnaissance
Reconnaissance là giai đoạn thu thập thông tin Và passive reconnaissance là quá trình
thu thập dữ liệu của một mục tiêu hay tổ chức mà không biết thông tin gì về tổ chức trên Quá trình passive reconnaissance có thể chỉ đơn giãn là theo dõi thông tin hoạt động của một tòa nhà công sở để ghi nhận lại giờ giấc làm việc của nhân viên, tuy nhiên quá trình này thường được thực hiện thông qua các chương trình tìm kiếm như Google hay cơ sở
dữ liệu Whois Công đoạn này còn được gọi là information gathering hay thu thập thông
tin trong toàn bộ tiến trình tấn công của hacker Một trong các phương pháp thu thập
thông tin một cách bị động như social engineering và dumpster diving mà chúng ta sẽ
trình bày ở các chương sau
Hình thức tấn công sniffing hay nghe lén là một trong những ví dụ điển hình nhất cho passive reconnaissance, với phương pháp này hacker có thể thu thập được nhiều thông tin giá trị như dãy địa chỉ IP, tên miền của tổ chức, các máy chủ ẩn danh hay những dịch vụ đang hoạt động trên mạng Nghe lén thông tin tương tự như các hệ thống giám sát trong tòa nhà hoặc các thiết bị thu âm chuyên dùng để đánh cắp thông tin cuộc gọi, các cuộc nói chuyện của mục tiêu mà chúng ta thường thấy trên phim ảnh
Trang 6Ngược lại, active reconnaissance là quá trình thu thập thông tin của mục tiêu theo hình
thức chủ động, lúc này hacker sẽ tác động trực tiếp lên đối tượng để ghi nhận các dữ liệu
phản hồi Một ví dụ của tình huống active reconnaissance là khi kẻ tấn công tiến hành
dò quét mạng để xác định các máy đang hoạt động hay những dịch vụ đang chạy trên một
hệ thống nào đó thông qua các công cụ như Nessus, Supperscan Vì mang tính chất chủ
động nên kết quả thu thập được sẽ nhanh chóng và khả quan hơn so với passive reconnaissance nhưng acvtive reconnaissance dễ bị phát hiện, dò tìm hơn
Cả hai hình thức passive reconnaissance và active reconnaissance thường được các kẻ
tấn công sử dụng để tìm kiếm thông tin hữu ích về máy chủ web hay hệ điều hành đang
sử dụng Reconnaissance cũng được thực hiện bởi các chuyên gia bảo mật trong tiến trình tấn công thử nghiệm gọi là penetration test hay pentest Tuy nhiên, pentest là hành động hợp pháp nên người thực hiện là penetration tester thường sử dụng active reconnaissance để nhanh chóng thu nhận kết quả
Phase 2 : Scanning
Scanning là quá trình thuộc giai đoạn thu thập thông tin reconnaissance Các hacker tiến hành scanning bằng các chương trình quét lỗi hệ thống, quét địa chỉ IP hay các cổng đang
mở bằng ứng dụng Nmap, là Acunetix Web Vulnerability Scanner, hay Angry Ip Scan
Chúng ta sẽ thảo luận chi tiết về scanning trong Module 3 Scanning Network
Phase 3 : Gaining Access
Gaining access là quá trình thâm nhập mục tiêu khi quá trình khai thác và tấn công thành
công Lúc này hacker sẽ xâm nhập vào hệ thống và tiến hành các hành động đánh cắp tập tin mật khẩu hay phá hủy dữ liệu, chạy những chương trình nguy hiểm, leo thang đặc quyền để có thể truy cập vào các khu vực thông tin bí mật Muốn thâm nhập thành công
hacker cần sử dụng thông tin mà tiến trình reconnaissance và scanning thu thập được,
dựa trên các thông tin này hacker sẽ xác định phương án tấn công hợp lý như sử dụng mã khai thác lỗi tràn bộ đệm (buffer overflow), hay chiếm quyền sử dụng của phiên làm việc
của người dùng (session hijacking) mà chúng ta sẽ trình bày trong các Module 11
Session Hijacking và Module 17 Buffer Overflow của giáo trình
Phase 4: Maintaining Access
Một khi đa xâm nhập hệ thống thành công hacker thường cài đặt chương trình gián điệp
để có thể duy tri sự kiểm soát, nghe lén thông tin người dùng nhập vào từ bàn phím hay
mơ các công hậu để có thể quay lại vào các lần sau, công đoạn này được gọi là maintaining access Những mã độc nguy hiểm các hacker dùng để cấp vào máy tính bị
Trang 7tấn công được gọi là trojan hay backdoor, các khái niệm này sẽ được trình bày trong module 6 của giáo trình CEH
Phase 5: Covering Track
Covering track hay clear track là hành động xóa dấu vết của các hacker để tránh bị phát hiện Các hành động này có thể là xóa tập tin nhật kí của ứng dụng hay hệ thống, xóa các chương trình đã được cài đặt, ẩn các tiến trình nguy hiểm
Hacktivism Là Gì
Hacktivism là hành động tấn công vì một mục tiêu xã hội hay mang tính chất chính trị
Thông qua hành động tấn công của mình hacker sẽ đưa ra một thông điệp đến các cơ
quan quản lý hay một tổ chức như tình huống hacker Việt Nam và hacker Trung Quốc
tấn công vào các trang web của cơ quan quản lý của hai nước để đưa ra các thông tin về chủ quyền biển đảo Hoàng Sa – Trường Sa Hay gần đây nhất là nhóm hacker Luzsec đã tấn công vào máy chủ của công ty bảo mật BKIS và yêu cầu tha bổng cho một hacker xâm nhập vào một trang web của cơ quan này nhằm đưa ra các cảnh báo bảo mật Những hacker tấn công vì mục tiêu nhất định thường là một nhóm các hacker, hay đôi khi chỉ là
cá nhân riêng lẽ nhưng đa phần các hành động này là sai trái và không hợp lệ Hình 1.3 minh họa một hacktivism điển hình
Hình 1.3 – Một thông điệp mà hacker để lại trên trang web bị tấn công
Trang 8Các bạn cần lưu ý thuật ngữ hacktivism là một trong những chủ đề thường hay xuất hiện
trong các câu hỏi của kì thi chứng chỉ CEH, vì vậy chúng ta cần đặc biệt lưu ý khái niệm
trên với định nghĩa bằng tiếng Anh là “Hactivism refers to hacking for a cause”
Phân Lọai Hacker
Chúng ta thường nghe gọi nhóm này là hacker mũ đen, nhóm khác là hacker mũ trắng hay những khái niệm tương tự khác Vậy thì có tất cả bao nhiêu lọai “mũ” mà những hacker có thể “đội” và ý nghĩa của chúng như thế nào? Sau đây chúng ta sẽ tìm hiểu về các khái niệm trên
Black Hat (Mũ đen)
o Là những cá nhân hay nhóm hacker sử dụng kỹ năng và kiến thức của mình để xâm nhập trái phép và các hệ thống, thực hiện các hành vi phá
họai hay đánh cắp dữ liệu Nhóm này còn được gọi là 'Cracker’ hay
Ethical Hacker Và Attacker
Trong các dạng hacker thì hacker mũ đen hay attacker là nhóm nguy hiểm nhất.Và những
hacker thuộc nhóm này được chia làm các dạng khác nhau tùy thuộc vào vị trí tiến hành tấn công hay công cụ mà họ sử dụng Còn các ethical hacker được xem như những hacker thiện chí và họ là những chuyên gia bảo mật đích thực
Ethical Hacker
Là các hacker thiện chí, sử dụng kiến thức và kỹ năng của mình phục vụ cho tiến trình bảo mật và an tòan thông tin, chỉ tiến hành tấn công hay xâm nhập vào một
hệ thống khi được sự cho phép của chủ nhân hệ thống đó Các phương pháp và kỹ
thuật mà ethical hacker áp dụng cũng giống như cách thức mà các hacker mũ đen
thực hiện
Internal Attacker
Trang 9Đây là những kẻ tấn công từ bên trong hay hacker nội bộ, có thể là các nhân viên trong công ty, các cộng tác viên hay những người làm chung một tòa nhà, cao ốc văn phòng Do có những thuận lợi về mặt vật lý nên những hacker thuộc nhóm này rất dễ đánh cắp thông tin của người dùng như email, mật khẩu hoặc đột nhập các máy chủ, máy trạm trên mạng
Electronic Activist, Hacktivist
Thuật ngữ này chỉ những hành động phá họai như thay thế nội dung của trang web hay cố tình thâm nhập trái phép vào hệ thống vật dẫn, đường truyền của công
ty, tổ chức
Data Thief
Những kẻ tấn công thuộc nhóm này chuyên đánh cắp những thông tin riêng tư của
người dùng, ví dụ các attacker đánh cắp tài khỏan của game thủ bằng thủ đọan cài keylogger trên những máy tính ở các phòng game, internet Để ngăn ngừa việc bị phát hiện, các attacker thuộc dạng Data thief thường tiến hành cover track, nghĩa
là xóa các dấu vết được lưu trong tập tin nhật kí
Script kiddie
Đa số các kẻ tấn công là script kiddie, họ là những người chỉ biết sử dụng các
công cụ, đọan mã được xây dựng sẳn để tiến hành khai thác và tấn công những hệ thống bị lỗi mà không am hiểu về các chi tiết kỹ thuật Nhóm này rất nguy hiểm
vì mức độ hiểu biết của chúng luôn tỉ lệ nghịch với khả năng phá họai
Electronic Vandal
Các attacker thuộc nhóm này chỉ muốn phá họai các dư liệu, hệ thống hay dịch vụ
mà không cần một mục tiêu nào cả Các hành động đôi khi chỉ để vui đùa, giải trí hoặc vì mục đích phô trương, trình diễn
Cyberterrorist
Các attacker thuộc nhóm này có hành động giám sát, xem trộm những thông điệp
cá nhân hay của tổ chức hơn là tiến hành đánh cắp hay thay đổi dữ liệu
Hành Động Của Ethical Hacker
Ethical hacker hay hacker thiện chí đều có phương pháp thực hiện tương tự như những
kẻ tấn công “thiếu thiện chí” nhưng mục tiêu của họ thì hoàn toàn khác Ethical hacker tìm kiếm các điểm yếu bảo mật và xác định cách thức để thâm nhập vào mục tiêu nhằm
Trang 10phương án gia cố, kiện toàn bảo mật thích hợp Tiến trình này thường được gọi là
penetration test hay các cuộc tấn công thử nghiệm mà chúng ta đã trình bày ở trên Công
cụ hàng đầu hay được sử dụng để tiến hành penetration test các trang web là Acunetix
Web Vulnerability Scanner với thông điệp quảng cáo mà ta thường thấy là IS YOUR
WEBSITE HACKABLE ? như trong hình minh họa
Ngoài mục tiêu thì một trong những điểm khác biệt quan trọng giữa
ethical hacker và những
hacker thông thường là hacker thiện chí chỉ hành động trên các hệ thống mà
họ có thẩm quyền hay được sự cho phép, ủy quyền của người chủ hệ thống Nhiều hacker tại Việt Nam nhầm lẫn về khái niệm này trong quá trình thi lấy chứng chỉ CEH cũng như hành động của họ trong việc tìm kiếm lỗi Một số người đã chủ động dò lỗi của trang web, thâm nhập vào và sau đó gởi yêu cầu
vá lỗi cho chủ nhân của hệ thống, đây là hành động không hợp lệ vì chưa có sự cho phép của chủ nhân thì bất kì sự xâm nhập nào cũng đều là trái phép Tuy nhiên, nếu chỉ dừng lại ở hành động dò quét lỗi và gởi thông báo riêng về các lỗi được phát hiện thì hoàn toàn hợp lệ, ngoại trừ một số máy chủ hay dãy địa chỉ IP tuyệt mật như của NASA hay Bộ Quốc Phòng Mỹ thì ngay cả việc quét IP cũng không được phép
Mục Tiêu Của Những Kẻ Tấn Công
An toàn thông tin bao gồm bốn yếu tố sau :
Confidentiality
Integrity
Availability
Authenticity
Mục tiêu của việc triển khai các giải pháp bảo mật, áp dụng chính sách an ninh là để bảo
vệ bốn đặc tính cơ bản trên Ngược lại, điều mà các kẻ tấn công nhắm tới là phá vỡ các yêu tố cơ bản này của thông tin Khi một hacker tấn công theo hình thức nghe lén dữ liệu trên đường truyển để trộm mật khẩu của hộp thư điện tử hay tài khoản ftp thì lúc này họ
đang phá vỡ tính riêng tư, bí mật của dữ liệu Đặc tính này được gọi là Confidentiality
Còn trong trường hợp hacker đánh cướp session (trình bày trong Module 11 Session
Hijacking) để chiếm phiên làm việc đã qua xác thực của người dùng thi họ đang tấn
công và cơ chế xác thực của hệ thống, đây chính là cơ chế Authenticity Một tình huống
thông dụng khác tấn công vào cơ chế xác thực là giả mạo địa chỉ MAC của thiết bị mạng
còn được gọi là MAC address spoofing, dạng tấn công này sẽ vượt qua cơ chế kiểm soát
Trang 11của các router hay hệ thống kiểm soát truy cập trên mạng không dây dựa trên địa chỉ vật
lý thông qua phương pháp giả mạo địa chỉ MAC của một máy tính hợp lệ
Vậy khi nào các hacker sẽ làm mất tính sẳn sàng hay Availability của dữ liệu và dịch vụ ?
Ví dụ một trang web cung cấp thông tin hay dịch vụ cho người dùng bị tấn công từ chối dịch vụ bằng cách gởi một số lượng rất lớn những yêu cầu kết nối, làm cho hệ thống không thể đáp ứng các yêu cầu truy cập khác thì tính sẳn sàng hay khả dụng của trang web đã bị vô hiệu
Trong trường hợp dữ liệu truyền sau khi bị chặn bắt sẽ được thay đổi và gởi về cho các
máy tính client hay server như giả mạo chứng chỉ điện tử (fake certificate) thì hacker đang tác động vào tính toàn vẹn hay Integrity của thông tin Hoặc hình thức tấn công Bit- flipping còn được gọi là integrity attack, chuyên chặn các dữ liệu truyền hay thông tin
trên máy tính và thay đổi nội dung làm cho quản trị viên không thể xác nhận được dữ liệu
đúng như mục tiêu của người gởi Một ví dụ của tấn công Bit-flipping là đánh vào cơ chế
mã hóa cipher (mã hóa theo dòng) làm thay đổi ciphertext mặc dù hacker không hề hay
biết plaintext là gì (plaintext là dữ liệu gốc, dữ liệu này sau khi được áp dụng một thuật
toán mã hóa sẽ cho ra ciphertext, các khái niệm này sẽ được trình bày trong Module 18
Cryptography) Với dạng tấn công này hacker có thể thay đổi nội dung thông điệp từ
“Tôi nợ anh 10.000.000 VND “ thành “Tôi nợ anh 1.000.000 VND”
Các bạn lưu ý, bốn yếu tố nên tảng này thường xuyên xuất hiện trong các câu hỏi trắc nghiệm của bài thi lấy chứng chỉ CEH Ví dụ như các bạn hãy xác định các chữ CIA là viết tắt của những từ nào trong danh sách Confidentiality,
Authenticity, Integrity và Availability Đáp án sẽ là Confidentiality, Integrity và Availability với các mô tả chi tiết sau đây :
C: Confidentiality là đặc tính riêng tư, bí mật của thông tin Một trong những mục tiêu quan trọng nhất của bảo mật thông tin là bảo đảm sự riêng tư của dữ liệu Điều này có nghĩa là dữ liệu hay thông tin của người nào thì chỉ người đó được biết và những người khác không được quyền can thiệp vào Trong thực tế,
chúng ta thường thấy khi phát lương ngoài bì thư hay đề chữ Confidentiality
nhằm không cho các nhân viên biết mức lương của nhau để tránh sự đố kỵ, so sánh giữa họ Hoặc trong những khu vực riêng của một cơ quan hay tổ chức nhằm ngăn chặn người lạ xâm nhập với bảng cấm “không phận sự miễn vào” cũng là một hình thức bảo vệ tính riêng tư Đối với dữ liệu truyền để bảo vệ tính riêng tư thì chúng thường được mã hóa hay sử dụng các giao thức truyền thông
Trang 12A: Availability là tính khả dụng và sẳn sàng đáp ứng nhu cầu người dùng của thông tin, dịch vụ Nghĩa là dữ liệu cần phải luôn luôn đáp ứng được nhu cầu của người dùng ví dụ như dịch vụ email của doanh nghiệp phải luôn luôn có khả năng phục vụ nhu cầu gởi và nhận email, nếu do sự cố nào đó mà quá trình trao đổi thông tin qua email không diễn ra được thì hệ thống bảo mật của chúng ta đã bị gãy đổ do đã đánh mất khả năng đáp ứng nhu cầu của người dùng
An Toàn Thông Tin, Chức Năng Của Người Dùng Và Tính Tiện Dụng
Ba đặc trưng này tạo nên một tam giác bảo mật mà bất kì chuyên gia an ninh thông tin nào cũng phải cân nhắc khi áp dụng các quy tắt và giải pháp an toàn cho hệ thống của mình Trong vai trò quản trị hệ thống hay một người phụ trách về bảo mật thông tin chúng ta đều muốn thắt chặt chính sách an ninh, triển khai những hệ thống bảo vệ mạnh
mẽ, chặt chẽ nhất để ngăn ngừa sự tấn công của hacker, hay tiến trình lây lan của virus Nhưng điều này có thể làm hạn chế chức năng sử dụng của người dùng, và gây khó khăn cho họ trong nhiều thao tác Ví dụ trong vài trò quản trị hệ thống mạng cho một tập đoàn trước đây tôi đã triển khai hệ thống tường lữa trên nền ISA Server Firewall ngăn tải về
những tập tin exe để phòng bị nhiểm virus, nhưng điều này đã gây khó khăn cho bộ phận
kỹ thuật vì họ cần cài đặt nhiều công cụ và ứng dụng cho các phòng lab, và rất nhiều chương trình này được tải về từ internet Để khắc phục tình trạng trên, tôi phải tạo thêm
một ngoại lệ cho nhóm Technical Support mặc dù điều đó có thể tạo ra một khe hở cho
sự lây nhiễm mã độc hại Ở một tình huống khác, khi áp dụng chính sách bảo mật cao
nhất cho toàn vùng được quản trị bởi Domain Controller, yêu cầu người dùng đặt mật
khẩu bắt buộc phải có sự kết hợp của kí tự đặc biệt, chữ hoa, chữ thường kèm theo đó là
độ dài trên 16 kí tự đã làm cho họ gặp khó khăn ngay từ khâu đặt mật khẩu
Vì vậy, khi triển khai một giải pháp an toàn thông tin cho tổ chức các bạn cần lưu ý đến nhũng chức năng sẽ bị hạn chế của người dùng, các ảnh hưởng đến tính tiện lợi trong quá trình sử dụng để có biện pháp xử lý đem đến sự cân bằng, ổn định cho toàn bộ hệ thống
Để khắc phục các tình trạng trên thì chúng ta nên có những chương trình đào tạo thích hợp nâng cao nhận thức cho người sử dụng trong vấn đề bảo mật thông tin, kèm theo đó
là các biện pháp chế tài thích hợp nhằm ngăn ngừa việc sử dụng tài nguyên không hợp lệ
Những Kỹ Năng Cần Thiết Để Trở Thành Ethical Hacker
Để trở thành một ethical hacker các bạn cần có những kỹ năng của một hacker mũ đen đó
là kiến thức về hệ thống mạng và máy tính, có khả năng quản trị và hiểu rõ hệ thống Windows , Linux Chúng ta cần nắm vững cách khai thác một lổ hổng bảo mật và phương pháp khắc phục sự cố vì mục tiêu của chúng ta là “tấn công để phòng thủ” chứ không phải “tấn công để phá hoại” Ngoài ra, để có thể hiểu rõ các mã khai thác, hay biên
soạn các công cụ, kịch bản dùng cho việc thử nghiệm thì ethical hacker nên có kiến thức
Trang 13về lập trình, mặc dù các hacker ngày nay có nhiều công cụ hỗ trợ viết các đọan mã hiểm độc một cách dễ dàng như sử dụng công cụ tạo kịch bản Auto IT hay những chương trình
chuyên dụng để tạo ra trojan, virus, worm
Bên cạnh những kiến thức và kỹ năng đã trình bày thì những hacker thiện chí cần có chứng chỉ CEH, đây là chứng nhận rõ ràng và hợp lệ nhất dành cho một ethical hacker
Trong vai trò của một ethical hacker chúng ta cần nắm rõ chức năng và cách thức sử dụng của những công cụ tìm kiếm lỗi bảo mật hàng đầu để có thể phát hiện lỗi, đưa ra giải pháp khắc phục hay hạn chế những tác hại do các rũi ro về an toàn thông tin mang lại
Quy Trình Tấn Công Thử Nghiệm
Khác với hacker thông thường những ethical hacker tấn công hệ thống để đánh giá tính
bảo mật thông tin Vì vậy khi thực hiện công việc penetration test hay security audit phải
tuân theo quy trình chặt chẽ, cần chú ý điến tác động mà việc thử nghiệm tấn công Khi thực hiện công việc các ethical cần đặc biệt chú ý nhu cầu và ý kiến của người sử dụng Sau đây là các bước hướng dẫn trong quá trình kiểm định bảo mật hệ thống :
1 Trao đổi với client (người sử dụng cuối) để thảo luận về tính cần thiết của việc thử nghiệm và biện pháp xử lý sự cố có thể gặp trong quá trình thực hiện
2 Chuẩn bị văn bản lấy chữ kí xác nhận của người dùng gọi là nondisclosure agreement
(NDA) trước khi thực hiện công việc nhằm bảo đảm tính hợp lệ của việc tấn
3 Thành lập nhóm làm việc gồm các ethical hacker và lên kế hoạch thực hiện với thời gian cụ thể
4 Thực hiện kiểm định theo quy trình đề ra
5 Phân tích kết quả của quá trình kiểm tra và chuẩn bị báo cáo
6 Trình bày báo cáo với khách hàng
Trang 14Tạo Bản Kế Hoạch Đánh Giá Bảo Mật
Như đã trình bày, đa số ethical hacker hoạt động như các chuyên gia bảo mật đó là tiến hành kiểm định hệ thống, đánh giá rũi ro, thử nghiệm tấn nên khi thực hiện công việc cần phải được tiến hành khoa học theo ba bước Preparation (chuẩn bị), Conduct (xây dựng quy trình) và Conclusion (thảo luận) như hình 1.4
Hình 1.4 – Các giai đoạn trong quá trình kiểm định bảo mật
· Preparation – Đây là giai đọan chuẩn bị, trong bước này các bản hợp đồng sẽ
được kí kết nhằm bảo vệ chính bản thân các Ethical Hacker khi có những rắc rối xảy ra ví dụ như vi phạm vào các điều luật an tòan thông tin, ngòai ra bản hợp đồng còn quy định những phạm vi hay tài nguyên mà Ethical hacker được quyền khảo sát và tấn công thử nghiệm
· Conduct – Trong giai đọan này các bản kế họach về quá trình khảo sát, báo cáo
mang tính chất kỹ thuật sẽ được trình bày và tiến hành quá trình ethical hacking
· Conclusion – Cuối cùng là những kết luận về tình trạng an toàn của hệ thống, các
lỗi bảo mật nào có thể bị khai thác và giải pháp khắc phục như thế nào…
Các Kiểu Tấn Công Của Ethical Hacker
Ethical hacker có thể sử dụng nhiều phương pháp khác nhau để đánh giá tính an toàn của
hệ thống thông qua việc tấn công thử nghiệm, những phương pháp này bao gồm :
· Remote network – Giả lập các cuộc tấn công từ xa hay từ hệ thống internet
· Remote dial-up network – Tiến hành các cuộc tấn công vào hệ thống modem
hay các kết nối dial-up của hệ thống như máy chủ VPN
Trang 15· Local network – Giả làm nhân viên của tổ chức và thực hiện các cuộc tấn công
lên các tài nguyên để tìm ra các điểm sơ hở trong chính sách bảo mật hay điểm nhạy cảm của hệ thống
· Stolen equipment – Giả lập mộttình huống đánh cắp tài nguyên để dự đóan các
thiệt hại và tác động của nó lên quá trình kinh doanh Đã có tình huống một sân bay của Úc bị hacker giả làm nhân viên bảo trì đánh cắp ổ cứng làm hệ thống điều khiển và vận hành bị tâ liệt trong vòng 2 giờ
· Social engineering – Quá trình này dùng để kiểm tra sự hiểu biết của người dùng
và các kiến thức về an tòan thông tin, phòng chống bị các đối tượng xấu giả mạo, đánh lừa nhằm lất cắp thông tin quan trọng
· Physical entry – Trong mô hình này các ethical hacker sẽ tiến hành tấnc ông trực
tiếp và cáo thành phần vật lý của hệ thống như các máy chủ, hệ thống lưu điện v.v nhằm kiểm tra xem các tài nguyênnày có được đặt dưới sự bảo vệ tốt hay không
Các Mô Hình Thử Nghiệm Tấn Công
Có hai mô hình thử nghiệm tấn công hay penetratiom test (gọi tắt là pentest) là black box
tương ứng với tình huống tấn công hay pentest từ bên ngoài hệ thống Ngược lại khi
ethical hacker tiến hành tấn công mạng máy tính từ vị trí bên trong của tổ chức sẽ được
gọi là white box
Ethical Hacking Report
Kết quả của tiến trình penetration test hay kiểm điểm anh toàn thông tin được gọi là ethical hacking report, bản báo cáo này bao gồm thông tin chi tiết các hoạt động tấn công
thử nghiệm, mô hình tấn công và các phương pháp đã sử dụng, nội dung được so sánh
tương ứng với từng giai đoạn trong Conduct Security Evaluation Trong bản báo cáo này
các lổ hỗng cần được mô tả chi tiết kèm theo những hướng dẫn hay khuyến nghị về phương pháp phòng chống Do tính chất quan trọng nên những bản báo cáo quá trình tấn
công thử nghiệm cần được gởi bằng định dạng hard-copy nhằm bảo đảm an toàn
Thông tin lỗi kèm theo phải được giữ bí mật nhằm tránh bị kẻ xấu lợi dụng tấn công, khai thác nếu không những tài liệu này sẽ trở nên phản tác dụng
Hiểu Rõ Tính Hợp Lệ Của Việc Tấn Công
Trang 16Là một hacker thiện chí chúng ta cần nắm rõ những vấn đề liên quan đến luật định và tính hợp pháp của quá trình tấn công Bất kì hành động tấn công thử nghiệm, kiểm định bảo
mật hay penetration test nào cũng cần có sự xác nhận và đồng ý của đơn vị chủ quản
bằng các văn bản hay công văn Những ethical hacker cần phải biết rõ các hình phạt được quy định bởi luật pháp tại nơi mình cư trú của hành vi tấn công trái phép, thận trọng khi ứng dụng kỹ năng trong quá trình tấn công, cũng như nhận thức đầy đủ về hậu quả nếu như áp dụng các phương pháp không đúng đắn
Có hai bộ luật của Mỹ liên quan đến tội phạm máy tính mà chúng ta cần phải quan tâm là
18 U.S.C § 1029 Federal Law và 18 U.S.C § 1030 U.S Federal Law Mặc dù CEH là một chứng chỉ quốc tế nhưng việc nắm rõ hai bộ luật này là điều cần thiết để thi đạt chứng chỉ trên Các bạn cần lưu ý là ngay cả những ethical hacker cũng có thể bị khởi kiện nếu vi phạm các điều luật này
Để giải quyết các khe hở của luật pháp đối với tội phạm công nghệ cao các nhà làm luật
của Mỹ đã xây dựng bộ luật Cyber Security Enhancement Act of 2002 quy định các hình
phạt dành cho các kẻ tấn công tương ứng với bất kì hành động phá hoại, xâm phạm thông tin trái phép
U.S Code hay Code of Laws of the United States là bộ luật của Mỹ bao gồm 51 chương,
tại chương 18 (Title 18) về “Crimes and Criminal Procedure.”, điều 1029 là “Fraud and related activity in connection with access devices,” quy định rõ những việc sử dụng trái
phép các tài sản bao gồm thiết bị, vật dụng trong lĩnh vực truyền thông có giá trị trên
1000 USD là vi phạm pháp luật
Trong điều 1030 “Fraud and related activity in connection with computers,” ngăn cấm
việc truy cập trái phép vào các máy tính hay có những hành động gây thiệt hai về thông tin Bao gồm cả các hành động phát tán và lan truyền virus hay xâm nhập bất hợp pháp máy tính cá nhân
Riêng tại Việt Nam, từ điều 67 đến điều 72 quy định về luật công nghệ thông tin như
Điều 67 Trách nhiệm bảo vệ quyền, lợi ích hợp pháp của người sử dụng sản phẩm, dịch vụ công nghệ thông tin
Điều 68 Bảo vệ tên miền quốc gia Việt Nam ".vn"
Điều 69 Bảo vệ quyền sở hữu trí tuệ trong lĩnh vực công nghệ thông tin
Điều 70 Chống thư rác
Điều 71 Chống vi rút máy tính và phần mềm gây hại
Điều 72 Bảo đảm an toàn, bí mật thông tin
Trang 17Kết Luận
Qua phần đầu tiên của giáo trình chúng ta đã nắm được những khái niệm quan
trọng như threat, exploit, attack và phân biệt sự khác nhau giữa ethical hacker và hacker thông thường Bên cạnh đó, các bạn đã nắm về quy trình penetration test
cùng với những vấn đề liên quan đến luật pháp Trong các chương tiếp theo chúng
ta sẽ thảo luận về tiến trình tấn công của hacker và những kỹ thuật tấn công chi tiết
Trang 18Module 2
Footprinting & Reconnaissance
Những Nội Dung Chính Trong Chương Này
FOOTPRINTING
Quy Trình Thu Thập Thông Tin
Competitive Intelligence Nslookup và DNSstuff Tìm Kiếm Địa Chỉ IP Của Mục Tiêu
DNS Record Traceroute Email Tracking Web Spider Là Gì ?
RECONNAISSANCE
Trang 19FOOTPRINTING
Bước đầu tiên trong quá trình tấn công là thu thập thông tiêu về mục tiêu từ các dữ liệu mà đối tượng hay tổ chức công khai trên internet Việc này có thể thực hiện bằng những ứng dụng trực
tuyến như Whois, Domain Check
hay công cụ cài đặt trên máy tính
như DNS Walk, DNS Enum Quá trình trên được gọi là footprinting hay in dấu ấn, với những thông tin mà footprinting thu
thập hacker có thể đoán được chủ sở hữu của tên miền trang web bị tấn công, địa chỉ IP của mục tiêu, máy chủ phân giải tên miền DNS
Bên cạnh những biện pháp mang tính kỹ thuật còn có những cách thức phi kỹ thuật
nhưng không kém phần hiệu quả được gọi là Social Enginerring mà chúng ta sẽ bàn đến
ở phần tiếp theo Với nhiều phương pháp khác nhau thì một hacker lão luyện có thể tổng hợp được khá nhiều thông tin hữu ích phục vụ cho các bước tấn công thực sự sau này của mình, và trong vài trò của một chuyên gia bảo mật hay ethical hacker thì chúng ta cần nắm rõ ý nghĩa của khái niệm footprinting cũng như cách thực hiện để tìm xem có những thông tin nào của tổ chức bị công bố quá nhiều trên môi trường internet, từ đó đưa ra những phương án xử lý kịp thời và chuẩn xác nhất
Những công cụ hỗ trợ đắc lực cho tiến trình footprinting chính là công cụ tìm kiếm như Yahoo, Bing nhưng hữu ích nhất là Google Search, thông qua các ứng dụng này hacker
có thể tìm kiếm nhiều thông tin liên quan đến một trang web mục tiêu từ những nội dung được công bố trên internet cho đến các thông tin bí mật như tập tin lưu trữ mật mã nếu
như không được phân quyền chặt chẽ Phương pháp này được gọi là Google Hacking
(tham khảo thêm về Google hacking tại website dorks/ )
Sau đây là một số tùy chọn thường được dùng cho tìm kiếm nâng cao với Google :
- Site : Khi tìm kiếm với tùy chọn “site : domainname.com” sẽ cho những kết quả
liên quan trực tiếp đến trang web Ví dụ tìm kiếm các thông tin liên quan đến
trang web netpro.edu.vn theo cú pháp “site:netpro.edu.vn” như Hình 2.1 :
Trang 20Hình 2.1 – Tìm những thông tin liên quan đến một trang web
- Filetype : Chỉ tìm những kết quả liên quan đến chủ đề nào đó hay tập tin với định
dạng xác định Ví dụ tìm kiếm các tài liệu pdf liên quan đến chủ đề ceh chúng ta
tìm kiếm theo cú pháp “filetype: pdf ceh” như Hình 2.2
Hình 2.2 – Tìm theo nội dung và định dạng tập tin
- Link : Tìm kiếm các thông tin có liên kết tới trang web cần tìm, ví dụ “link : netpro.edu.vn” sẽ hiển thị những trang web có nội dung liên quan đến domain
netpro.com.vn
- Intitle : Tìm các thông tin dựa theo tiêu đề của trang web, với cách tìm kiếm này
sẽ cho kết quả tập trung vào chủ đề cần quan tâm, chẳng hạn các bạn muốn tìm
kiếm những tài liệu liên quan đến “ethical hacking” hãy gõ vào Google dòng
intitle: “ethical hacking”
- Inurl : Tìm kiếm tất cả các trang web chứa cụm url được xác định trong tùy chọn inurl như “inurl:wp-content/plugins/age-verification/age-verification.php”
Quy Trình Thu Thập Thông Tin
Trang 21Để tiến hành thu thập thông tin một cách khoa học, các bạn cần thực hiện theo một sơ đồ như sau:
1 Tìm kiếm từ các nguồn thông tin
2 Xác định các dãy địa chỉ mạng
3 Xác định các máy còn họat động
4 Tìm kiếm những cổng mở hay điểm truy cập của mục tiêu
5 Dò tìm hệ điều hành của mục tiêu
6 Tìm kiếm các dịch vụ đang họat động trên những cổng mở
Thông tin liên lạc (điện thoại / email)
Các nguồn thông tin :
Open source : Các nguồn tài nguyên mở là những dữ liệu công khai như trang vàng doanh nghiệp, danh bạn điện thọai
Whois : Cơ sở dữ liệu về chủ sở hữu tên miền
Nslookup : Thông tin về máy chủ phân giải tên miền
Công Cụ :
Sam Spade (www.samspade.org) : Đây là công cụ trực tuyến bao gồm những tiện ích như Whois, nslookup và traceroute Vì là ứng dụng trực tuyến nên trong một
số trường hợp có thể không kết nối được do trang web đang bảo trì hoặc do kết
nối mạng, do đó chúng ta nên sử dụng tiện ích samspade cài đặt trực tiếp trên máy
Trang 22tình để cho kết quả tốt hơn hoặc sử dụng những trang web có chức năng tương tự khác như www.network-tool.com
Competitive Intelligence
Competitive intelligence là phương pháp thu thập thông tin từ các nguồn trên internet về một công ty hay tổ chức nào đó Competitive intelligence có thể là sản phẩm hay một tiến
trình ví dụ như các hành động thu thập và phân tích dữ liệu, xác nhận thông tin
Những công cụ thường được sử dụng cho quá trình Footprinting - Competitive Intelligence là :
Whois là công cụ offline (như SmartWhois) hay tiện ích online như www.whois.net dùng
để thu thập thông tin liên quan đến một tên miền nào đó bao gồm nơi lưu trữ trang web, tên và địa chỉ liên lạc của người quản trị, địa chỉ IP và các máy chủ phân giải tên miền DNS Những công cụ Whois trực tuyến được liệt kê trong Hình 2.3 :
Hình 2.3 – Các công cụ Whois trực tuyến
Trang 23Sau đây là một kết quả tìm kiếm thông tin về tên miền eccouncil.org với Whois và Smart Whois trong Hình 2.4 :
W HOIS OUTPUT FOR WWW ECCOUNCI ORG
Domain ID:D81180127-LROR
Domain Name:ECCOUNCIL.ORG
Created On:14-Dec-2001 10:13:06 UTC
Sponsoring Registrar:Tucows Inc (R11-LROR)
Status:OK
Registrant ID:tuTv2ItRZBMNd4lA
Registrant Name: John Smith
Registrant Organization:International Council of E-Commerce Consultants
Registrant Street1:67 Wall Street, 22nd Floor
Registrant City:New York
Admin Name: Susan Johnson
Admin Organization:International Council of E-Commerce Consultants
Admin Street1:67 Wall Street, 22nd Floor
Admin City:New York
Admin State/Province:NY
…
Tech Email:forum@eccouncil.org
Name Server: ns1.xyz.net
Name Server: ns2.xyz.net
Trang 24Hình 2.4 – Kết quả tìm kiếm với SmartWhois
Cơ sở dữ liệu của Whois được chia làm 4 vùng chính là
• ARIN (North America và sub-Saharan Africa)
• APNIC (Asia Pacific)
• LACNIC (Southern và Central America và Caribbean)
• RIPE NCC (Europe và northern Africa)
Thông tường cơ sữ dữ liệu của ARIN Whois sẽ được tìm kiếm trước tiên, nếu không tìm thấy thông tin của một trang web trong ARIN thì có thể thông tin này sẽ được lưu giữ ở
cơ sở dữ liệu của APNIC, LACNIC hay RIPE NCC Các bạn có thể sử dụng
www.allwhois.com để tiến hành tìm kiếm thông tin trên tất cả các cơ sở dữ liệu thuộc các
vùng khác nhau Ngòai những trang web chuyên cung cấp những dịch vụ Whois thì có
nhiều công cụ trong Hinh 2.5 có thể đáp ứng được yêu cầu này
Trang 25Hình 2.5 - Các công cụ Whois được đề cập trong CEH
Nslookup và DNSstuff
Nslookup là chương trình truy vấn tên miền trên Internet của các máy chủ, các kết quả thu được từ Nslookup có thể được hacker sử dụng để mô phỏng cấu trúc DNS của tổ chức, tìm kiếm thêm các thông tin bổ sung về những máy tính nội bộ hay thông tin MX record của mail server Trên các hệ thống Windows hay Linux/Unix đều có
công cụ nslookup kèm theo như hình minh họa
Ngòai việc tìm kiếm các thông tin về tên miền internet của các máy chủ thì nslookup còn
là một công cụ hữu ích cho quá trình chẩn đóan, khắc phục và xử lý các sự cố mạng liên quan đến vấn đề phân giải tên miền, truy cập internet của người dùng hay kiểm tra hệ thống Active directory sau khi cài đặt
Ví dụ sau là kết quả của tiến trình sử dụng dụng công cụ nslookup trên Linux/Unix về máy chủ cracker.com:
Trang 261DINHINFO "Exchange MailServer"
1DINMX 10 mail1
geekL 1DINA 10.12.133.151
1DINTXT "RH6.0"
Bên cạnh nslookup các bạn có thể sử dụng ứng dụng trực tuyến dnsstuff tại
www.dnsstuff.com để tìm kiếm các thông tin liên quan đến các dns record của một trang web nào đó, như Hình 2.6 minh hoạt kết quả tìm kiếm liên quan đến
http://www.eccouncil.org
Hình 2.6 – DNS Lookup
Tìm Kiếm Địa Chỉ IP Của Mục Tiêu
Bất kì ethical hacker nào cũng cần nắm vững cách thức xác định địa chỉ IP hay dãy địa
chỉ của trang web mục tiêu thông qua các cơ sở dữ liệu của ARIN hay Internet Assigned Numbers Authority (IANA) Bên cạnh đó chúng ta có thể xác định được vị trí địa lý của địa chỉ IP trên hay để truy cập đến mục tiêu này cần phải qua bao nhiêu bước nhảy (hop)
Để thực hiện điều này các bạn hãy sử dụng traceroute, visularoute với kết quả rất rõ ràng như Hình 2.7
Trang 27Hình 2.7 – Kết quả tìm kiếm với ứng dụng 3d Traceroute
Các Kiểu DNS Record
Để có thể truy cập vào một trang web hay máy tính thông qua tên miền như
security365.vn hay tên máy là filesrv.netpro.edu.vn máy tính của chúng ta cần phải
chuyển đổi các tên dễ nhớ trên ra địa chỉ IP, công việc này được thực hiện bởi các máy chủ phân giải tên miền DNS và dòng thông tin ánh xạ giữa một tên dễ nhớ sang địa chỉ IP được gọi là DNS record Sau đây là các record trên máy chủ DNS :
A (address)— Record này liên kết một hostname với địa chỉ IP
SOA (Start of Authority)— Xác định máy chủ DNS chịu trách nhiệm phân giải
CNAME (canonical name)— Cung cấp tên bí danh
MX (mail exchange)— xác định máy chủ email của domain
SRV (service)—Xác định các máy chủ cung cấp dịch vụ như Actvie Directory
PTR (pointer)— Liên kết một địa chỉ IP với một host name
Trang 28NS (name server)— Xác định các máy chủ phân giải tên khác của domain
Sử Dụng Traceroute Trong Tiến Trình Footprinting
Traceroute là công cụ lưu dấu các gói tin trong quá trình truyền đến một mục tiêu, có thể
sử dụng trên các hệ đều hành Windows hay Linux Traceroute vận hành bằng cách gởi các tín hiệu Internet Control Message Protocol (ICMP) đến các trạm (hop) có thể là router hay gateway trên tuyến đường mà gói tin đi qua cho đến khi đến được trạm đích,
và khi một router phản hồi với tín hiệu ICMP ECHO Reply thì giá trị Time To Live (TTL)
sẽ giảm xuống một giá trị cho biết cần phải nhảy qua bao nhiêu hop mới đến được đích Một torng những trở ngại của quá trình traceroute là thời gian tồn tại của gói tin bị hết (hiển thị bằng các dấu sao), điều này xảy ra khi các router hay firewall chặn các tín hiệu
trả về (ICMP) nhưng qua đó các hacker cũng biết được sẽ có những hệ thống bảo vệ nào trong toàn bộ tuyến đường đi đến mục tiêu
Công Cụ
Có khá nhiều công cụ có thể thực hiện công việc tracerouter và hiển thị cả những thông
tin địa lý liên quan đến địa chỉ IP, hay chủ sở hữu của tên miền trang web như các ứng dụng Visual Router, 3D Trace đã giới thiệu trong phần trên Ngoài ra, trên hệ thống
Windows các bạn sử dụng lệnh tracert để dò tìm tuyến đường đi đến mục tiêu như Hình
2.8 minh họa dùng tracert với tên miền là www.yahoo.com
Hình 2.8 – Tiện ích tracert trên Windows
Trang 29
Email Tracking Là Gì ?
Đúng như tên gọi Email tracking là những chương trình cho phép người gởi kiểm tra xem
email của mình gởi đi đã được đọc hay chưa hay thậm chí có bị xóa, chuyển tiếp, thay đổi
gì không Phần lớn các ứng dụng email tracking sẽ gắn thêm một tên miền vào địa chỉ email như readnotify.com Hay một tập tin hình ảnh nhỏ được gắn vào bức thư mà không
cho người nhận biết và khi người nhận có những hành động như đề cập ở trên thì hình ảnh này sẽ kết nối về máy chủ để thông báo cho người gởi biết về các hành động xảy ra Công Cụ
Những ứng dụng thường được dùng để theo dõi hành động của người nhận trong giao
dịch thư tín như là Email Tracking Pro, MailTracking.Com… Hình 2.9 liệt kê một số
công cụ thông dụng được giới thiệu trong CEH :
Hình 2.9 - Một số công cụ Email Tracking
Web Spider
Các spammer hay những kẻ phát tán thư rác rất quan tâm đến địa chỉ email của người dùng, vì vậy họ thường sử dụng các công cụ thu thập địa chỉ email liên quan đến một tên
miền nào đó trên internet, những ứng dụng như vậy gọi là Web Spider như MetaGoofil
hay một số ứng dụng thu thập địa chỉ email được cài đặt sẳn trên bộ công cụ bảo mật nổi tiếng Back Track 5 (phiên bản mới nhất hiện nay là BackTrack 5 R.1)
Trang 30Để phòng chống các quản trị trang web thường đặt tập tin robots.txt ở thư mục root của
trang web chứa danh sách những thư mục được bảo vệ không cho phép lấy về bởi các chương trình tự động như google bot, yahoo bot và cả các web spider
Trang 31RECONNAISSANCE
Reconnaissance là một thuật ngữ xuất phát từ môi
trường quân sự như trên logo của IRS, và các bạn sẽ thấy có khá nhiều thuât ngữ của môi trường này được áp dụng trong vấn đề bảo mật thông tin đó là
DMZ, Spy Quá trình reconnaissance là hoạt động
thăm dò đối phương hay kẻ địch bằng những phương pháp do thám cao cấp với máy bay tàng hình, vệ tinh cho đến những biện pháp thông dụng như sử dụng gián điệp cài cắm vào hàng ngũ địch, dùng trinh sát viên để thu thập thông tin của đối phương Trong môi trường tấn công và thử nghiệm
tấn công mạng máy tính quá trình reconnaissance
được áp dụng để thu thập thông tin của mục tiêu cần tấn công nhằm xác định các cơ chế hoạt động, vào thời gian nào và ở đâu thông qua việc quan sát các thói quen, hành vi của mục tiêu để từ đó các hacker sẽ đưa ra giải pháp tấn công hữu hiệu
Các bạn sẽ dễ dàng hình dung về reconnaissance với một tình huống trong đời thực, đó là
kẽ gian muốn đột nhập vào một ngôi nhà hay công ty để trộm cắp tài sản thì bọn chúng thường bỏ một thời gian để theo dõi và điều nghiên kỹ lưỡng thói quen của chủ nhà như giờ giấc đi lại, cũng như các hoạt động thường ngày trong sinh hoạt và kinh doanh để có thể đưa nguyên xe tải đến để lấy cắp đồ đạc mà chủ nhân không hề hay biết do đang bận
đi nghĩ mát hay công tác trong khi người dân xung quanh lại tưởng rằng chủ nhân đang giao nhận hàng hóa như thường ngày
Hoặc một cuộc tấn công tương tự như vậy vào khoảng năm 2005/2006 đã xảy ra tại một
sân bay của Hà Lan làm cho quá trình check-in bị trì hoãn gần 5 tiếng đồng hồ Trong
tình huống này, các hacker đã theo dõi kỹ lưỡng hoạt động bảo trì máy chủ của sân bay trên và xác định được công ty đối tác thực hiện công việc cùng với thời gian tiến hành bảo dưỡng Sau đó các hacker đã giả dạng làm những nhân viên bảo trì với logo, đồng phục cũng như các hình thức hoạt động tinh vi đến mức qua mặt được các nhân viên an ninh và lọt vào phòng máy chủ một cách dễ dàng Khi đã thâm nhập các hacker đã tháo
gỡ toàn bộ các ổ cứng của những máy chủ quan trọng và đem ra ngoài Đây là một ví dụ
của việc vận dụng reconnaissance rất hiệu quả cho quá trình tấn công, nhưng qua đó
cũng cho thấy sân bay trên thiếu sự kiểm soạt chặt chẽ trong khâu quản lý thiết bị Vì một trong những nguyên tắc của an toàn thông tin là khi những đối tượng thuộc vùng thiếu tin
cậy (un-trust) ra vào và ra khu vực được bảo vệ chặt chẽ như vùng MDZ (dùng để đặt các
máy chủ) thì nhân viên an ninh cần kiểm tra túi xách của họ để phát hiện có hành động gian lận nào hay không
Trang 32Kết Luận
Qua chương này chúng ta đã tìm hiểu các bước tiền tấn công quan trọng là Footprining
và Reconnaissance cùng những công cụ mạnh mẽ hay được sử dụng cho quá trình thu
thập thông tin Trong vai trò của chuyên gia an ninh mạng các bạn cần tiến hành các thao
tác sau để phòng chống bị tấn công footprinting :
Cấu hình router hay firewall không phản hồi các chương trình dò tìm như Ping bằng cách chặn tín hiệu ICMP ECHO Request/Reply
Tắt những giao thức không dùng trên máy chủ web
Kiểm soát cổng dịch vụ với nhũng quy tắt chặt chẽ trên firewall
Triển khai hệ thống IDS (dò tìm xâm nhập trái phép) để cảnh báo cho quản trị viên khi có hành động khả nghi xảy ra
Kiểm soát thông tin cẩn thận trước khi công bố trên internet
Tự thực hiện footprinting trên hệ thống của mình để phát hiện các thông tin nhạy cảm
Ngăn ngừa những ứng dụng tìm kiếm lưu cache trang web
Tắt chức năng duyệt thư mục, tách domain nội bộ với domain dùng cho mục đích công cộng
Trang 33Module 3
Scanning Network
Các Chủ Đề Chính Trong Chương Này
Định Nghĩa Các Kiểu Scanning Quy Trình Scanning Của CEH Kiểm Tra Các Hệ Thống Đang Hoạt Động Và Những Cổng Mở
Nắm Vững Các Kỹ Thuật Quét Mạng Các Công Cụ Thường Dùng Trong Quá Trình Quét Mạng
Banner Grabbing Và OS Fingerpringting Lập Sơ Đồ Mạng Của Các Host Nhạy Cảm
Chuẩn Bị Proxy Anonymize Là Gì ? Phòng Chống Kiểu Tấn Công Quét Mạng
Trang 34
Trong bước đầu tiên của tiến trình tấn công các hacker thường tiến hành quét mạng mà
chúng ta sẽ gọi bằng thuật ngữ scanning để kiểm tra các cổng đang mở hay những dịch
vụ mà mục tiêu đang sử dụng Bên cạnh đó scanning còn cho biết các thông tin quan
trọng như hệ điều hành đang sử dụng hay hệ thống máy chủ mà trang web đang dùng là IIS, Apache …
Scanning bao gồm các thao tác để xác định các host (máy trạm) và những port (cổng) đang hoạt động hay những dịch vụ đang chạy trên hệ thống của mục tiêu cần tấn công và khai thác Đây là một trong những bước quan trọng của tiến trình thu thập thông tin thông
minh (intelligence gathering) mà các hacker sử dụng để lập sơ đồ của các tổ chức hay
mạng mục tiêu Trong tiến trình scanning những kẻ tấn công sẽ gởi các gói tin TCP/IP đến mục tiêu như Hình 3.1 và phân tích các kết quả trả về nhằm xác định các thông tin giá trị mà họ quan tâm
Hình 3.1 – Attacker gởi các gói tin thăm dò mạng
Các Kiểu Scanning
Có ba dạng scanning khác nhau đó là Port Scanning, Vulnerability Scanning và Network Scanning
Hình 3.2 – Các Kiểu Scanning
Port Scanning : Kẻ tấn công sẽ gởi một loạt các thông điệp đến mục tiêu nhằm xác định
các cổng đang mở, và thông qua các cổng này họ sẽ biết được có những dịch vụ nào đang
chạy trên máy tính mục tiêu Một trong các ứng dụng port scanning phổ biên là Nmap
Vulnerability Scanning : Là quá trình quét lỗi nhằm xác định ra các lỗ hổng bảo mật
hay những điểm yếu mà thường gọi là các điểm “nhạy cảm” của các ứng dụng hay máy chủ, máy trạm đê từ đó đưa ra các phương án tấn công thích hợp Tiến trình quét lỗi có thể xác định được các bản cập nhật hệ thống bị thiếu, hay những lỗi hệ thống chưa được
vá các chuyên gia bảo mật cũng thường tiến hành vulnerability scanning trong công tác
bảo vệ hệ thống mạng của mình
Trang 35Network Scanning : Quá trình này dùng để xác định các máy đang hoạt động trên hệ
thống mạng thường được các hacker, chuyên gia bảo mật hay những quản trị hệ thống thực hiện
Quy Trình Scanning Của CEH
Kiểm Tra Các Hệ Thống Đang Hoạt Động
Để kiểm tra tình trạng hoạt động của hệ thống các hacker có thể sử dụng nhiều công
cụ và những hình thức khác nhau để thu được kết qua mong muốn như ICMP Scanning hay Ping Sweep
Kết quả của ICMP Scanning thực hiện bằng công cụ Nmap
Hình 3.4 – Scanning với Nmap
Trong hình minh họa trên hacker từ máy 192.168.168.3 sẽ tiến hành ICMP Scanning bằng công cụ Nmap để gởi các tín hiệu ICMP ECHO Request thông qua tùy chọn –sP
Trang 36mục tiêu có địa chỉ 192.168.168.5 đang hoạt động với các thông số phần cứng như
địa chỉ MAC, nhà sản xuất
Ping Sweep
Trong ví dụ trên chúng ta sử dụng ICMP Scanning để xác định tình trạng hoạt động
của một máy trạm, nếu như các bạn muốn kiểm tra trên một dãy các địa chỉ IP thì
Ping Sweep là giải pháp thích hợp thông qua hình thức gởi các tín hiệu ICMP ECHO Request đến nhiều máy tính cùng lúc như Hình 3.5 để nhận các kết quả trả về thích
hợp
Hình 3.5 – Gởi ICMP Echo Request đến cùng lúc nhiều máy tính
Sau đây là kết quả của Ping Sweep với Nmap :
Trang 37Hình 3.6 – Ping Sweep với Nmap
Theo Hình 3.6 thì chúng ta thấy kết quả trả về khá chi tiết với các máy tính có địa chỉ
IP 192.168.168.1, 192.168.168.2, 192.168.168.4 và 192.168.168.6 đang hoạt động
Các công cụ Ping Sweep khác thường được sử dụng là Angry IP Scanner và
Solarwinds Engineer’s Toolset Trong Hình 3.7 là danh sách các công cụ Ping
Sweep được giới thiệu trong CEH :
Hình 3.7 – Các công cụ Ping Sweep
Trang 38IDP75, IDP250 hay các ứng dụng IDS phần mềm nguồn mở như SNORT hoạt động
dưới cả hai dạng Network-base IDS và Host-based IDS Ngoài ra, phần lớn các
firewalll và proxy server được cấu hình để chặn ICMP mặc định, giúp phòng chống Ping Sweep hiệu quả
Xác Định Những Cổng Mở Và Dịch Vụ Đang Hoạt Động Các cổng (hay port) đang mở có nghĩa là các dịch vụ liên quan đến những cổng này đang hoạt động và thông qua kết quả đó hacker sẽ xác định phương án tấn công thích hợp với những dịch vụ Để có thể nắm vững kỹ thuật này các bạn cần hiểu rõ quá trình bắt tay 3 bước hay thường được gọi là Three-Way Handshake khi các máy tính
sử dụng giao thức truyền thông TCP tại tầng vận chuyển như Hình 3.8 :
Hình 3.8 – Quá trình bắt tay ba bước Three-way Handshake
Trong hình trên, máy tính của Bill có địa chỉ 10.0.0.2 cần khởi tạo một phiên làm việc truyền file qua giao thức FTP (số hiệu port là 21) đến máy tính của Sheela có địa chỉ
là 10.0.0.3 Vì vậy Bill Computer sẽ gởi các tín hiệu SYN=1 và SEQ# 10 đến Sheela Computer, sau đó ta thấy máy tính 10.0.0.3 trả về thông báo chấp nhận kết nối với tín hiệu SYN=1 và ACK=1 (thông báo chấp nhận kết nối), cùng với ACK# 11 Khi tiếp nhận những tín hiệu này, máy tính của Bill (10.0.0.2) đáp ứng lại thông báo báo nhận bằng cách gởi những tín hiệu ACK=1 với số hiệu SEQ# 11 (tăng 1 giá trị) Lúc này phiên làm việc sẽ được kết nối giữa 2 máy tính 10.0.0.2 và 10.0.0.3 trên port 21
Trang 39Sau đây là một số tín hiệu (còn gọi là các cờ) được dùng trong các quá trình khởi tạo phiên làm việc này :
SYN (Synchronize) : Dùng khi khởi tạo kết nối giữa hai máy
ACK (Acknowledgement) : Dùng để gởi thông báo chấp nhận khi nhận được tín
hiệu từ máy gởi
PSH (Push) : Yêu cầu xử lý các dữ liệu trong bộ nhớ đệm ngay lập tức
RST (Reset) : Yêu cầu reset lại kết nối, các bạn lưu ý là khi nhận được tín hiệu
này cũng có nghĩa là mục tiêu hay máy tính đang không hoạt động (Offline)
FIN (Finish) : Yêu cầu kết thúc liên kết
URG (Urgent) : Tín hiệu khẩn, có mức ưu tiên cao nhất Khi nhận được dữ liệu
cùng cờ này thì phải xử lý ngay
Khi nắm vững ý nghĩa và mục đích của các cờ các bạn có thể tạo ra các gói tin với những giá trị được tùy biến cho phù hợp với yêu cầu của mình Như Hình 3.9
minh họa ứng dụng Komodia packet crafter cho phép thiết lập các giá trị flag
thích hợp của gói tin cũng như số hiệu port muốn kiểm tra khi gởi từ máy tính có
IP 192.168.168.10 đến máy tính 192.168.168.11
Hình 3.9 - Komodia packet crafter
Trang 40Phòng Chống Port-Scan
Để phòng chống tấn công quét cổng các hệ thống cần triển khai firewall và thiết lập các chính sách ngăn chặn những tín hiệu dò tìm hay khởi tạo kết nối không hợp lệ Che dấu các cổng mở như hệ thống tường lữa ISA Server Firewall có chức năng hidden port Đặc biệt chỉ mở các cổng cần thiết cho quá trình vận hành, đối với các dịch vụ không hoạt động hãy đóng những cổng liên quan
Ngoài ra, hệ thống mạng cần được thiết kế khoa học theo các nguyên tắc phòng thủ theo
chiều sâu với thiết bị firewall bảo vệ lớp ngoài và có IDS để phát hiện khi bị quét cổng
Nmap
Chương trình quét cổng được đề cập nhiều nhất trong CEH là Nmap, đây là ứng dụng miễn phí có khả năng mạnh mẽ trong việc quét cổng, ping sweep, xác định dịch vụ, hệ điều hành Nmap chạy được trên nền Windows hay Linux, Unix và có thể tiến hành quét cùng lúc nhiều máy tính Nmap có thể tìm kiếm các cổng mở và những cổng được che dấu với các chức năng lọc Ví dụ khi firewall chặn các ứng dụng quét cổng thông thường bằng cách ngắt những tín hiệu hồi đáp trong quá trình three-way handshake, hay ngăn ngừa việc tiếp nhận tín hiệu trên nhiều cổng trong thời gian ngắn thì nmap vẫn có thể vượt qua bằng phương pháp half-path scan hay tiến hành quét các cổng với thời gian cách
xa nhau
Chính vì những khả năng mạnh mẽ trên mà Nmap từng được các hacker và chuyên gia bầu chọn là ứng dụng tấn công số 1 thế giới nhiều năm liền Và những bộ phim có cảnh
tấn công của hacker như Matrix Reloaded sử dụng Nmap để tìm ra máy chủ SSH bị lỗi
hoặc The Bourne Ultimatum cũng sử dụng Nmap phiên bản GUI là Zenmap để minh họa tiến trình kiểm tra dịch vụ đang chạy SSH 3.9p1, Posfix smtpd, và một name server như Hình 3.10