• CÁ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)
• Thành viên (nhóm 5)
• Cao Nguyễn Trung Sang – 07520494
• Nguyễn Cảnh Hà – 07520102
• Hoàng Ngọc Tùng – 07520402
• Hoàng Công Nguyện - 07520487
• Nội dung
[1] Network Reconnaissance
[2] Mapping the Network
[3] Sweeping the Network
[4] Scanning the Network
[5] Vulnerability Scanning
[6] Gaining Control Over the System
[7] Recording Keystrokes
[8] Cracking Encrypted Passwords
[9] Revealing Hidden Paswords
[10] Gaining Unauthorized Access
• [1] Network Reconnaissance
• Giới thiệu
• Network reconnaissance là thuật ngữ để kiểm tra các lỗ hổng dễ bị tấn công trong 1 máy tính.
• Có thể do người quản lý tiến hành hoặc có thể là tiền thân của một cuộc tấn công từ bên ngoài.
• Cần phải xác định:
– 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
• Xá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.
• Xác định mục tiêu
• Ngay cả khi những thông tin trên newgroup không hữu dụng, Hacker có thể thu thập những mua bán, sát nhập,… để tìm ra lỗ hổng.
• Ví dụ: Một công ty lớn mua lại công ty nhỏ khác cần phải kết nối giữa các công ty. Như vậy, bảo mật sẽ bị nới lỏng hơn để đảm bảo các nhân viên ở các công ty có thể giao dịch, liên lạc thông suốt. Hacker sẽ tấn công các công ty nhỏ hơn với hi vọng bảo mật ở đó kém hơn. Khi thu thập được dữ liệu, dữ liệu đó sẽ được so sánh với công ty lớn để có thể đạt được quyền truy cập vào công ty lớn.
• Phâ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ý,…
• Phâ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.
• Google 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:: tìm kiếm với việc chỉ định rõ website hoặc domain.
– filetype:: Tìm kiếm thông tin trong kiểu file mà mình mong muốn.
– link:: Tìm kiếm những site nào có chứa liên kết đến domain mà mình chỉ định.
– cache:: 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.
• [2] Mapping the Network
• Mapping 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.
• Tracerroute
• Xác định đường đi tời Google.com.vn (74.125.71.99) qua tối đa 30 hop.
• [3] Sweeping the Network
• Sweeping 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.
• Sweeping 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.
• [4] Scanning the Network
• Port Scanning
• Là phương pháp chính dùng để phát hiện mục tiêu khi Admin tắt ICMP ở firewall.
• Một số phương thức để thực hiện scan port:
– TCP connect scan
– TCP SYN scan
– TCP ACK scan
• Phân loại port scanning theo tiêu chuẩn RFC 793:
– TCP FIN scan
– TCP Null scan
– TCP Xmas Tree scan
• Cô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.
• Cô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.
-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.
- ...
• Cô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
• Công cụ SuperScan
• Là công cụ scan port mạnh mẽ, miễn phí dùng cho Windows.
• Bên cạnh đó còn có nhiều công cụ mạng bổ sung như ping, traceroute, HTML HEAD, Whois…
• Sử dụng SuperScan
• Trong tab Scan: nhập dải địa chỉ IP cần scan bằng cách nhập địa chỉ IP bắt đầu và địa chỉ IP kết thúc.
• Thiết lập các tùy chọn cần thiết trong tab Host and Service Discovery.
• Bắt đầu scan.
• [5] Vulnerability Scanning
• Cô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.
• Khởi động Nessus
• Hoạt động theo mô hình Client – Server
• Với Nessus 4, Client được sử dụng bằng trình duyệt Web, có thể truy cập vào Nessus Server ở bất kì máy tính con nào.
• Nessus Policies
• Tạo các Policy thích hợp để kiểm tra các hệ thống cụ thể
• Configuring 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.
• Xem 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.
• [5] Gaining Control Over
the System
the System
• Cô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.
• Cú 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]
• Cá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.
-n: chỉ dùng địa chỉ IP ở dạng số
-o: file ghi nhật kí vào file
-p: port chỉ định cổng port
-r: yêu cầu Netcat chọn cổng ngẫu nhiên(random)
- ...
-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.
-n: chỉ dùng địa chỉ IP ở dạng số
-o: file ghi nhật kí vào file
-p: port chỉ định cổng port
-r: yêu cầu Netcat chọn cổng ngẫu nhiên(random)
- ...
• Sử 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
• Sử 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 -nvv -l -p 2020 -e cmd.exe
– Trên một máy tính khác, để kết nối ta dùng lệnh:
nc -nvv 172.16.84.2 2020
– Lúc này ta có thể toàn quyền sử dụng chương trình cmd trên máy tính cần kết nối đến.
• [7] Recording Keystrokes
• Recording 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.
• Một số phần mềm Keylogger
• Một số phần mềm Keylogger
• Key logger hardware
• Key logger hardware
• Xé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)?
• Thà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 quan trọng nhất).
3. Tập tin nhật ký (log), nơi chứa đựng/ghi lại toàn bộ những gì hook ghi nhận được. Một loại log file.
• Ngoài ra, tùy theo loại có thể có thêm phần chương trình bảo vệ (guard, protect), chương trình thông báo (report)…
• Phương pháp phòng tránh
• Tránh:
- Dùng bàn phím ảo
- Sử dụng Copy ‘n’ Paste cho các thông tin quan trọng.
Type ‘n’ Click.
• Diệt:
- Dùng các phần mềm chuyên dụng: Keylogger Killer, AntiLogger, Ad-Aware SE, Malwarebytes Anti-Malware…
- Dùng các phần mềm Anti-virus được tích hợp diệt Spyware: các bộ Kaspersky, Avast, AVG, Avira…
• [8] Cracking
Encrypted Passwords
Encrypted Passwords
• Cracking 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.
• Công cụ LCP
• LCP được thiết kế để khôi phục password. Nó có thể khôi phục từ các máy local cho tới remote, local SAM file. Nguyên tắc hoạt động dựa trên từ điển, brute force và hybrid.
• Cô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.
• [9]Revealing Hidden Paswords
• Revealing 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.
• Revealing 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.
• Revealing Hidden Paswords
• Snadboy’s Revelation sẽ hiện ra mật khẩu thật
• [10] Gaining
Unauthorized Access
Unauthorized Access
• Gaining 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
• Gaining Unauthorized Access
• Có 2 phương thức chính :
– Leo thang đặc quyền
– Đạt được quyền không ưu tiên
• 1. 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 đó” để có quyền hạn cao hơn, có thể là admin.
• 2. Đạ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ì ?
• 2. Đạ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.
• 2. Đạ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 http://www.packetstormsecurity.org)
• 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.
Không có nhận xét nào:
Đăng nhận xét