Bài giảng tổng quan về các kỹ thuật tấn công
Trang 1CÁC KĨ THUẬT TẤN CÔNG
Môn: Ứng dụng truyền thông & an ninh thông tin (Đề tài 12a)
Trang 3Nội dung
[1] Network Reconnaissance
[2] Mapping the Network
[3] Sweeping the Network
[4] Scanning the Network
Trang 4[1] Network Reconnaissance
Trang 5– Loại Network nào mà Hacker muốn tấn công?
– Và Hacker sẽ tấn công Network này như thế nào?
• Một số khái niệm về hoạt động thăm dò Network:
– Xác định mục tiêu
– Phân tích mục tiêu
– Phân tích gói tin
– Google Hacking
Trang 6Xác định mục tiêu
• Là một quá trình yêu cầu kiến thức cao Có nhiều công cụ rất mạnh để hỗ trợ nhưng công cụ tốt nhất vẫn là bộ não.
• Trước khi tiến hành thăm dò, Hacker cần xác định:
– Tổ chức, cá nhân / cái gì mà Hacker sẽ hack?
– Tại sao phải Hack?
– Hacker sẽ tìm kiếm gì nếu đạt được truy cập?
• Một trong những khu vực chính dễ trở thành mục tiêu là những forum, diễn đàn, nhóm gọi chung là newsgroup
Đó là nơi mà những nội dung, thông tin hữu dụng cho mọi người được admin cung cấp Vì vậy nên cảnh giác không đưa ra nhiều thông tin hoặc địa chỉ IP thực lên
newsgroup ngay cả khi nó được kiểm duyệt kỹ càng.
Trang 7để có thể đạt được quyền truy cập vào công ty lớn.
Trang 8Phân tích mục tiêu
• Những thông tin đăng ký Website của công ty thường dễ dàng tìm thấy, nó chứa đựng những thông tin, dữ liệu rất quan trọng của công ty Có thể là địa chỉ vật lý, tên của
người quản lý DNS, tên người quản trị mạng, số điện thoại
và số fax của công ty, địa chỉ email của admin, DNS
server, ISP công ty dùng, những tên miền công ty sở hữu, dải địa chỉ IP công ty đăng ký,…
Trang 9Phân tích gói tin
• Thông qua hành động gửi email, hacker có thể phân tích những chi tiết như tên mail server, địa chỉ IP private
người dùng trong công ty dẫn tới có thể xác định được dải địa chỉ IP được dùng trong công ty Những gói tin khác có thể tiết lộ địa chỉ IP public cũng như tên của Router.
• Thông thường, những website nhỏ của công ty kém bảo mật hơn, và có thể trở thành điểm bắt đầu của cuộc tấn công Nếu 1 công ty có vài Website và tất cả đều hoạt
động, tất cả cần được bảo mật, không chỉ bảo mật 1
Website chính.
Trang 10Google Hacking
• Google Hacking là sử dụng Google tìm kiếm dựa vào những thông tin khóa từ những công ty khác nhau
• Một số kỹ thuật sử dụng google:
– site:<domain>: tìm kiếm với việc chỉ định rõ website hoặc domain.
– filetype:<phần mở rộng>: Tìm kiếm thông tin trong kiểu file mà mình mong muốn.
– link:<domain>: Tìm kiếm những site nào có chứa liên kết đến domain
mà mình chỉ định.
– cache:<domain>: Tìm kiếm trong cache của google.
– intitle: Nó sẽ tìm kiếm phần Title của document.
– inurl: Nó sẽ tìm kiếm trong phạm vi url.
• Mục đích sử dụng chính của Google Hacking là một tổ chức
để lộ thông tin bảo mật của 1 điểm yếu xác định nào đó trong mạng.
Trang 11[2] Mapping the Network
Trang 12Mapping the Network
• Với mục tiêu mạng đã được xác định, tiếp theo Hacker cần hoàn thành là sơ đồ mạng Điều này có nghĩa là nhận dạng
mô hình mạng và bao nhiêu nút mạng dựa vào địa chỉ IP và
vị trí của chúng trong mạng.
• Có một số công cụ bảo mật mạng chuyên nghiệp để quản lý mạng Một vài công cụ miễn phí trong khi một số khác phải trả phí Công cụ mà nhiều Hacker sử dụng là Traceroute.
• Tracert là công cụ dòng lệnh nền tảng Windows dùng để
xác định đường đi từ nguồn tới đích Tracert tìm đường tới
đích bằng cách gửi các thông báo Echo Request ICMP tới từng đích Sau mỗi lần gặp một đích, giá trị Time to Live
(TTL) sẽ được tăng lên cho tới khi gặp đúng đích cần đến Đường đi được xác định từ quá trình này.
Trang 13• Xác định đường đi tời Google.com.vn (74.125.71.99) qua tối đa 30 hop.
Trang 14[3] Sweeping the Network
Trang 15Sweeping the Network
• Khi sơ đồ mạng cơ bản được hoàn thành, Hacker cần tìm hiểu chi tiết hơn các nút trong mạng đích:
− Xác định hệ thống có đang "sống" hay không.
− Kiểm tra các port nào đang mở.
− Xác định những dịch vụ nào đang chạy tương ứng với các port
đang mở.
− Xác định hệ điều hành và phiên bản của nó.
− Kiểm tra lỗi của những dịch vụ đang chạy.
− Xây dựng sơ đồ những host bị lỗi.
Trang 16Sweeping the Network
• Xác định những host trong hệ thống đang sống hay chết rất quan trọng vì có thể Hacker ngừng tấn công khi xác định hệ thống đã chết Việc xác định hệ thống có sống
hay không có thể sử dụng kỹ thuật Ping Sweep.
• Bản chất của quá trình này là gửi hàng loạt ICMP Echo
Request đến 1 dải địa chỉ host mà hacker đang muốn tấn công và mong đợi ICMP Reply Dựa vào danh sách những host đáp ứng có thể xác định dải địa chỉ IP đang được
dùng trong mạng.
Trang 17[4] Scanning the Network
Trang 19Công cụ Netstat
• Hiển thị trạng thái của các kết nối TCP/IP hiện tại.
• Cung cấp thông tin của mọi kết nối và các cổng đang lắng nghe, các ứng dụng sử dụng trong quá trình kết nối.
Trang 20Công cụ Netstat
• Cú pháp sử dụng: NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p
proto] [-r] [-s] [-t] [interval]
• Các tùy chọn:
-a hiển thị tất cả các kết nối và các cổng đang lắng nghe.
-e hiển thị các thông kê về Enthernet.
-n hiển thị địa chỉ và số cổng dưới định dạng số.
-s hiển thị trạng thái của từng giao thức.
-p protocol hiển thị các kết nối giao thức được chỉ tên TCP hoặc UDP.
-r hiển thị nội của bảng lộ trình.
-
Trang 21Công cụ Netstat
• Ví dụ: để hiển thị tất cả các địa chỉ đang kết nối và các cổng đang lắng nghe ta dùng lệnh: netstat -a
Trang 24[5] Vulnerability Scanning
Trang 25Công cụ Nessus
• Là phần mềm mã nguồn mở phổ biến nhất thế giới dùng để quyét các lỗ hổng bảo mật.
• Quét và báo cáo chi tiết thông tin
về lỗ hổng phát hiện được.
• Hoạt động scan lỗ hổng dựa trên các plugin.
Trang 26có thể truy cập vào Nessus
Server ở bất kì máy tính con
nào.
Trang 27Nessus Policies
• Tạo các Policy thích hợp để kiểm tra các hệ thống cụ thể
Trang 28Configuring Nessus Scan
• Thiết lập các tùy chọn để
quét cho hệ thống.
• Chọn các Policy thích hợp.
• Chọn các phân vùng mạng.
Trang 29Xem các Nessus Report
• Nessus báo cáo chi tiết
về các lỗ hổng tìm được
sau khi scan.
• Các lỗi bảo mật được
phân loại theo 3 mức độ:
Low, Medium, Hight.
Trang 30[5] Gaining Control Over
the System
Trang 31Công cụ Netcat
• Có thể kết nối tới bất kì máy tính nào đang lắng nghe.
• Không phải cung cấp bất kì chứng thực nào.
Trang 32Cú pháp của Netcat
• Chế độ kết nối : nc [-tùy_chọn] tên_máy cổng1[-cổng2]
• Chế độ lắng nghe: nc -l -p cổng [-tùy_chọn] [tên_máy]
[cổng]
Trang 33Các tùy chọn của Netcat
-d: Netcat sẽ chạy ở chế độ steath(không hiển thị trên thanh
Taskbar)
-e: prog thi hành chương trình prog
-h: gọi hướng dẫn
-i: trì hoãn mili giây trước khi gởi một dòng dữ liệu đi
-l: đặt Netcat vào chế độ lắng nghe để chờ các kết nối đến
-L: buộc Netcat "cố" lắng nghe Nó sẽ lắng nghe trở lại sau mỗi khi ngắt một kết nối
Trang 34Sử dụng Netcat
• Quét cổng: để quét các cổng TCP (400-500) của host 10.70.23.164 ta gõ lệnh sau:
nc -v -z 10.70.23.164 400-500
Trang 35Sử dụng Netcat
• Kết nối 2 máy tính Windows:
– Trên máy tính cần kết nối, khới tạo chế độ lắng nghe bằng lệnh: nc
Trang 36[7] Recording Keystrokes
Trang 37Recording Keystrokes
• Đây là phương pháp ghi nhận lại các thao tác bàn phím Các chương trình này ( Key logger ) sẽ ghi lại các thao tác trên bàn phím và ghi lại dưới dạng file log các phím đã
được nhấn Nó có thể ghi lại các phím ấn hay thậm chí là chụp ảnh màn hình ( screenshot ) hay là quay phim lại
các thao tác diễn ra trên màn hình.
• Phân loại: có 2 loại:
- Key logger phần mềm: là các chương trình chạy trên Hệ Điều Hành, có thể chạy ngầm hoặc là công khai.
- Key logger phần cứng: các thiết bị phần cứng được gắn thêm vào máy tính để ghi nhận các hoạt động bàn phím.
Trang 38Một số phần mềm Keylogger
Trang 40Key logger hardware
Trang 42Xét mức độ nguy hiểm
• Nhiễm vào máy không qua cài đặt/Cài đặt vào máy cực nhanh (quick install)?
• Có thuộc tính ẩn/giấu trên trình quản lí tiến trình
(process manager) và trình cài đặt và gỡ bỏ chương trình (Add or Remove Program)?
• Theo dõi không thông báo/PC bị nhiễm khó tự phát hiện?
• Có thêm chức năng Capturescreen hoặc ghi lại thao tác chuột?
• Khó tháo gỡ?
• Có khả năng lây nhiễm, chống tắt (kill process)?
=>Cứ mỗi câu hỏi được trả lời có thì mức độ nguy
hiểm sẽ tăng lên.
Trang 43Thành phần của một Key Logger
1 Chương trình điều khiển (Control Program): dùng để theo điều phối hoạt động, tinh chỉnh các thiết lập, xem các tập tin nhật ký cho Keylogger Phần này là phần được giấu kỹ nhất của
keylogger, thông thường chỉ có thể gọi ra bằng một tổ hợp phím tắt đặc biệt.
2 Tập tin hook, hoặc là một chương trình monitor dùng để ghi
nhận lại các thao tác bàn phím, capture screen (đây là phần
Trang 45[8] Cracking Encrypted Passwords
Trang 46Cracking Encrypted Passwords
• Phương pháp này dựa trên việc phá, giải mã các mật mã
đã được mã hóa Có 2 phần mền tiêu biểu thuộc phương pháp tấn công này:
– LCP: trong môi trường Windows
– John the Ripper: trong môi trường Linux
• Đặc điểm:
– Được cài đặt trên máy chủ ( host ).
– Được quyền thực thi trên host.
– Khá mất thời gian với các password dài và phức tạp.
Trang 48Công cụ John the Ripper
• Được sử dụng trên nền Linux Có các phương pháp dò tìm password trong thư mục /etc/shadow và /etc/passwd tương tự như LCP.
Trang 49[9]Revealing Hidden Paswords
Trang 50Revealing Hidden Paswords
• Password dùng để bảo vệ các dữ
liệu riêng, để ngăn chặn người khác
tiếp cận các ứng dụng đặc biệt là
điều cần thiết, thậm chí trong một
số trường hợp còn là điều bắt buộc.
• Nói chung những chương trình
trong Windows, password dưới
dạng các dấu hoa thị (*).
• Nhưng nếu bạn quên password thì
sẽ như thế nào? Tình trạng quên
password càng dễ xảy ra hơn với
những ứng dụng mà thỉnh thoảng
bạn mới đụng đến.
Trang 51Revealing Hidden Paswords
• Hãy liên tưởng đến việc ta cởi bỏ
khăn trải bàn để lộ ra mặt bàn bên
dưới Mật khẩu cũng vậy, vấn đề
nằm ở việc loại bỏ hình thù chứa
đựng nó Công cụ được sử dụng để
làm điều này có tên gọi là
Snadboy’s Revelation.
Trang 52Revealing Hidden Paswords
• Snadboy’s Revelation sẽ hiện ra mật khẩu thật
Trang 53[10] Gaining Unauthorized Access
Trang 54Gaining Unauthorized Access
• Truy cập bất hợp pháp là sự truy cập không quyền vào hệ thống máy tính hoặc mạng máy tính nhằm phá hủy
chương trình hệ thống và dữ liệu, đánh cắp thông tin, làm tắc nghẽn quá trình hoạt động của mạng.
• Thủ đoạn truy cập bất hợp pháp thường gặp:
– Đánh cắp dữ liệu, khai thác trộm thông tin trên các đường nối mạng máy tính
– Đánh cắp thời gian sử dụng dịch vụ mạng
Trang 55Gaining Unauthorized Access
• Có 2 phương thức chính :
– Leo thang đặc quyền
– Đạt được quyền không ưu
tiên
Trang 561 Leo thang đặc quyền
• Có 2 loại :
– Leo thang đặc quyền ngang : Với tư cách
là user1 chiếm quyền của user2 hay các user khác.
– Leo thang đặc quyền dọc : Với quyền của
user bình thường “làm cách nào đó” để làm cách nào đó” để
có quyền hạn cao hơn, có thể là admin
Trang 572 Đạt được quyền không ưu tiên
• Được coi là một trong những bước quan trọng khi
Attacker đột nhập vào các hệ thống.
• Giả sử bạn chiếm được quyền và đăng nhập vào hệ thống Win NT Nhưng user bạn lấy được không có quyền tương đương như nhóm Administrators mà thuộc nhóm có
quyền thấp hơn Như vậy ta không có quyền làm nhiều thao tác như Admin Vậy phải làm gì ?
Trang 582 Đạt được quyền không ưu tiên
• Nếu đột nhập tìm ra một tài khoản không phải là admin, chúng ta chỉ có thể gắng định danh thêm thông tin để
giành được quyền ưu tiên cao hơn
• Bằng cách lục sùng càng nhiều thông tin hệ thống càng tốt, chúng ta có khả định danh khả năng truy cập các thư mục quan trọng như : %systemroot%/system32 và
%systemroot%
• Chúng ta còn phải tính đến khả năng truy cập Registry Việc này thường gọi là tiến trình thu thập thông tin.
Trang 592 Đạt được quyền không ưu tiên
• Tuy nhiên việc làm này có thể thay thế bằng công cụ có tên gọi là GetAdmin (Download tại
• Hạn chế của GetAdmin là nó phải chạy cục bộ trên hệ
đích Do hầu hết người dùng không thể đăng nhập cục bộ vào một hệ phục vụ NT theo ngầm định, nên nó chỉ thực
sự hữu ích để lừa đảo các thành viên của nhóm Operators lập sẵn ( Account , Backup , Server ) và tài khoản
Internet ngầm định