MỤC LỤC
Chương Mở Đầu : GIỚI THIỆU VỀ BACKTRACK 5 . 6
I. Giới thiệu . 6
II. Mục đích . 6
III. Nguồn tải Backtrack : . 7
IV. Cài đặt . 8
1. Live DVD . 8
2. Install . 8
Chương 1: TÌM HIỂU VẤN ĐỀ BẢO MẬT MẠNG LAN . 16
I. Giới thiệu . 16
II. Vấn đề bảo mật hệ thống và mạng . 16
1. Các vấn dề chung về bảo mật hệ thống và mạng . 16
2. Một số khái niệm và lịch sử bảo mật hệ thống . 16
3. Các loại lỗ hổng bảo mật và phương thức tấn công mạng chủ yếu . 17
Chương 2: FOOTPRINTING . 21
I. Giới thiệu về Footprinting . 21
II. Các bước thực hiện Footprinting . 21
1. Xác định vùng hoạt đông của chúng ta . 21
2. Các thông tin có sẵn công khai . 21
3. Whois và DNS Enumeration . 21
4. Thăm dò DNS . 22
5. Thăm dò mạng . 22
III. Phương pháp thực hiện Footprinting . 22
IV. Các công cụ thực hiện Footprinting: . 25
1. Sam Spade . 25
2. Super Email Spider . 26
3. VitualRoute Trace . 27
4. Maltego . 27
Chương 3: SCANNING . 28
I. Giới thiệu . 28
II. Chứng năng . 28
1. Xác định hệ thống có đang hoạt động hay không? . 28
2. Xác định các dịch vụ đang chạy hoặc đang lắng nghe. . 31
3. Xác định hệ điều hành . 37
Chương 4: ENUMERATION . 39
I. Enumeration là gì? . 39
II. Banner Grabbing . 39
III. Enumerating các dịch vụ mạng . 39
1. Http fingerprinting . 39
2. DNS Enumeration . 42
3. Netbios name . 44
Chương 5: PASSWORD CRACKING . 45
I. Giới Thiệu . 45
II. Các Kỹ Thuật Password Cracking . 45
1. Dictionary Attacks/Hybrid Attacks . 45
2. Brute Forcing Attacks . 45
3. Syllable Attacks/Pre-Computed Hashes . 45
III. Các Kiểu Tấn Công Thường Gặp . 45
1. Active Password Cracking . 45
2. Passive Password Cracking . 46
3. Offline Password Cracking . 46
IV. Các công cụ Password Cracking . 46
1. Hydra . 46
2. Medusa . 48
V. Password Cracking Trên Các Giao Thức . 51
1. HTTP (HyperText Tranfer Protocol) . 51
2. SSH (Secure Shell) . 58
3. SMB (Server Message Block) . 61
4. RDP (Remote Desktop Protocol) . 64
Chương 6: SYSTEM HACKING . 67
I. GIỚI THIỆU VỀ METASPLOIT . 67
1. Giới thiệu . 67
2. Các thành phần của Metasploit . 67
3. Sử dụng Metasploit Framework . 67
4. Giới thiệu Payload Meterpreter . 68
5. Cách phòng chống . 70
II. Lỗi MS10-046 (2286198) . 70
1. Giới thiệu . 70
2. Các bước tấn công: . 71
3. Cách phòng chống . 79
III. Lỗi BYPASSUAC . 80
1. Giới thiệu . 80
2. Các bước tấn công . 80
3. Cách phòng chống . 85
Chương 7: WEB HACKING VỚI DVWA . 86
I. Giới thiệu . 86
II. Hướng dẫn cài đặt DVWA trên Backtrack . 86
1. Tải và cài đặt XAMPP . 86
2. Tải và cài đặt DVWA . 88
III. Các kĩ thuật tấn công trên DVWA . 92
1. XSS (Cross-Site Scripting) . 92
2. SQL Injection . 100
TÀI LIỆU THAM KHẢO . 106
106 trang |
Chia sẻ: maiphuongdc | Lượt xem: 9225 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Tài liệu hướng dẫn và sử dụng backtrack 5, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
chức nào đó. Tuy nhiên, hacker chẳng thông cảm cho cuộc chiến
của chúng ta. Họ khai thác các điểm yếu trong bất cứ các biểu mẫu nào. Chúng ta
không muốn hacker biết nhiều về tình trạng bảo mật của chúng ta.
2. Các thông tin có sẵn công khai
Lượng thông tin mà nó sẵn sàng sẵn có cho chúng ta, tổ chức chúng ta và bất cứ
những gì chúng ta có thể hình dung thì chẳng là gì thiếu tính tuyệt vời.
Những thông tin có thể bao gồm: trang web của công ty; các tổ chức quan hệ; vị
trí tọa lạc; thông tin chi tiết vê nhân viên; các sự kiện hiện tại; các chính sách bảo mật
và sự riêng tư….
3. Whois và DNS Enumeration
Xem chi tiết thông tin về địa chỉ IP, name server, dns server…
22
4. Thăm dò DNS
Sau khi xác định tất cả các domain có liên quan, chúng ta bắt đầu truy vấn
DNS. DNS là một cơ sở dữ liệu phân tán dùng để ánh xạ các địa chỉ IP thành
hostname. Nếu DNS không được cấu hình một cách bảo mật, rất có khả năng lấy được
các thông tin bi lộ từ tổ chức.
5. Thăm dò mạng
Bây giờ thì chúng ta đã xác định được các mạng tiềm năng, chúng ta có thể xác
định mô hình mạng cũng như đường truy cập có khả năng vào mạng
III. Phương pháp thực hiện Footprinting
Có 2 phương pháp thực Footprinting:
Active Footprinting: liên hệ trực tiếp với mục tiêu, tìm hiễu thông tin
cần thiết
Passive Footprinting: Tìm kiếm thông qua các bài báo, trang web,
hoặc từ các đối thủ mục tiêu,…
Website: www.google.com ,
, www.tenmien.vn ,
www.arcchive.org ,…
23
Whois : athena.com.vn
24
Tenmien.vn
25
Archive:
IV. Các công cụ thực hiện Footprinting:
Sam Spade, Super email spider, VitualRoute Trace, Google Earth, Whois, Site
Digger, Maltego,…
1. Sam Spade
Cho phép người sử dụng có thể thực hiện các hành động: Ping, Nslookup,
Whois, Traceroute,…
26
2. Super Email Spider
Tìm kiếm thông tin về địa chỉ email của cơ quan tổ chức sử dụng Search
Engine: Google, Lycos, iWon, Exiter, Hotbot, MSN, AOL,…
27
3. VitualRoute Trace
Hiện thị các đường nối kết, địa chỉ, khu vực đường kết nối đi qua.
4. Maltego
Là công cụ dùng để phát hiện các liên kết giữa: Người sử dụng, cơ quan, tổ
chức, website, domain, dải mạng, địa chỉ IP,…
28
Chương 3: SCANNING
I. Giới thiệu
Nếu footprinting là việc xác định nguồn thông tin đang ở đâu thì scanning là
việc tìm ra tất cả các cánh cửa để xâm nhập vào nguồn thông tin đó. Trong quá trình
footprinting, chúng ta đã đạt được danh sách dãy mạng IP và địa chỉ IP thông qua
nhiều kỹ thuật khác nhau bao gồm whois và truy vấn ARIN. Kỹ thuật này cung cấp
cho nhà quản trị bảo mật cũng như hacker nhiều thông tin co giá trị về mạng đích, dãy
IP, DNS servers và mail servers. Trong chương này, chúng ta sẽ xác định xem hệ
thống nào đang lắng nghe trên giao thông mạng và có thể bắt được qua việc sử dụng
nhiều công cụ và kỹ thuật như ping sweeps, port scan. Chúng ta có thể dễ dàng vượt
tường lửa bằng tay (bypass firewalls) để scan các hệ thống giả sử như nó đang bị khóa
bới chính sách trích lọc (filtering rules).
II. Chứng năng
1. Xác định hệ thống có đang hoạt động hay không?
Một trong những bước cớ bản lập ra một mạng nào đó là ping sweep trên một
dãy mạng và IP để xác định các thiết bị hoặc hệ thống có đang hoạt động hay không.
Ping thường được dùng để gửi các gói tin ICMP ECHO tới hệ thống đích và cố gắng
nhận được một ICMP ECHO REPLY để biết hệ thống đó đang hoạt động. Ping có thể
được chấp nhận để xác định số lượng hệ thống còn sống có trong mạng trong mạng
vứa và nhỏ ( Lớp C có 254 và B có 65534 địa chỉ) và chúng ta có thể mất hàng giờ,
hàng ngày để hoàn thành cho nhánh mạng lớp A 16277214 địa chỉ.
a) Netword Ping Sweeps
Netword pinging là hành động gửi các loại của giao thông mạng tới đích và
phân tích kết quả. Pinging sử dụng ICMP (Internet Control Message Protocol). Ngoài
ra, nó còn sử dụng TCP hoặc UDP để tìm host còn sống.
Để thực hiện ICMP ping sweep, ta có thể sử dụng fping, nmap,….
Fping –a –g 192.168.10.1 192.168.10.10
-a hiện thi host đang sống: alive
-g dãy địa chỉ: 192.168.10.0/24 or như trên
29
Nmap –sP –PE 192.168.10.0/24
-sP: ping scan
-PE: ping echo
30
Phòng chống: chúng ta có thể dùng pingd giữ tất cả các giao thông mạng
ICMP ECHO và ICMP ECHO REPLY ở cấp độ host. Điểm này đạt
được bằng cách gỡ bỏ sự hỗ trợ của việc xử lý ICMP ECHO từ nhân hệ
thống. Về mặt cơ bản, nó cung cấp một cơ chế điều khiển truy cập ở mức
độ hệ thống.
b) ICMP query
Ping sweeps (or ICMP ECHO packets) có thể nói chỉ là đỉnh đầu của tảng
băng khi nói đến thông tin ICMP về một hệ thống. chúng ta có thể thu thập nhiều loại
thông tin có giá trị đơn giản bằng cách các gói tin ICMP. Chúng ta có thể yêu cầu mặt
nạ mạng của một thiết bị nào đó với Address Mask Request. Mặt nạ mạng rất quan
trọng vì chúng ta có thể xác định được tất cả địa chỉ của đích, biết được gatewate mặt
định, địa chỉ broadcast. Nhờ vào gateway mặc định, chúng ta có thể tấn công router.
Với địa chỉ broadcast. Nhưng không phải tất cả các router nào cũng hỗ trợ Time và
Netmask.
Phòng chống: Khóa loại ICMP mà cung cấp thông tin tại router biên
(router đi ra ISP). Để giảm tới mức thiểu, chúng ta nên dùng access list
(ACLs):
o Access-list 101 deny icmp any any 13 // yêu cầu timestamp
o Access-list 101 deny icmp any any 17 // yêu cầu address mask
31
2. Xác định các dịch vụ đang chạy hoặc đang lắng nghe.
a) Port Scanning
Port scanning là quá trình gửi các gói tin tới cổng TCP và UDP trên hệ
thống đích để xác định dịch vụ nào đang chạy hoặc trong tình trạng đang lắng nghe.
Việc xác định đang lắng nghe là rât quan trọng để xác định các dịch vụ đang chạy.
Thêm vào đó, chúng ta có thể xác định loại và phiên bản hệ điều hành đang chạy và
ứng dụng đang xử dụng.
b) Các Loại Scan
Trước khi thực hiện port scanning, chúng ta nên điểm qua một số cách thức
quét sẵn có:
TCP Connect scan: loại này kết nối tới cổng đích và thực hiện đầy đủ
quy trình bắt tay ba bước (SYN, SYN/ACK, ACK). Tuy nhiên điều này
thì dễ dàng bị phát hiện bởi hệ thống đích. Nó sử dụng lời gọi hệ thống
thay cho các gói tin sống (raw packets) và thường được sử dụng bởi
những người dùng Unix không có quyền.Vì SYN Scan không thể thực
hiện được.
TCP SYN scan: nó không tạo ra một kết nối tới nguồn mà chỉ gửi gói
tin SYN(bước đầu tiên trong ba bước tạo kết nối) tới đích. Nếu a gói tin
SYN/ACK được trả về thì chúng ta biết được cổng đó đang lắng nghe.
Ngược lại, nếu nhận được RST/ACK thì cổng đó không lắng nghe. Kỹ
thuật này khó bị phát hiện hơn là TCP connect và nó không lưu lại
32
thông tin ở mày tính đích. Tuy nhiên, một trong những nhược điểm của
kỹ thuật này là có thể tạo ra điều kiện từ chối dịch vụ DoS nếu có quá
nhiều kết nối không đầy đủ được tạo ra. Vì vậy, kỹ thuật này là an toàn
nếu không có quá nhiều kết nối như trên được tạo ra.
TCP ACK Scan: kỹ thuật này được dùng để vạch ra các quy tắt thiết lập
tường lửa. nó có thể giúp xác định xem tường lửa là trình trích lọc các
gói tin đơn giản cho phép tạo kết nối hay là trình trích lọc năng cao.
Tuy nhiên nó không thể phân biệt được cổng nào open hay closed.
TCP Windows Scan: Giống với ACK Scan, điểm khác là nó có thể phát
hiện cổng open với closed.
UDP Scan: kỹ thuật này gửi một gói tin UDP tới cổng đích. Nếu cổng
đích trả lời với thông điệp “ICMP port unreachable ” thì cổng closed.
Nếu không nhận được thông điệp trên thì cổng trên đang mở. Tuy
nhiên, UDP scan là một quá trình rất chập nếu như chúng ta cố gắng
scan một thiệt bị nào đó mà được áp chính sách trích lọc gói tin mạnh.
TCP FIN, XMAS, NULL: chúng chuyên nghiệp trong việc lén lút vượt
tường lửa để khám phá các hệ thống ở phía sau. Tuy nhiên, chúng lại
phụ thuộc nhiều vào cách xử lý của hệ thống đích mà(điển hình là
Windows) thì không có biểu hiện gì.
c) Xác định các dịch vụ TCP và UDP đang chạy
Strobe: có độ tin cây cao, tuy nhiên chỉ hỗ trợ TCP, không hỗ trợ UDP
33
Netcat là một tiện ích mạng Unix đơn giản tính năng đọc và ghi dữ liệu
qua kết nối mạng, sử dụng giao thức TCP / IP.Nó được thiết kế như là
một công cụ đáng tin cậy "back-end" có thể được sử dụng trực tiếp hoặc
dễ dàng điều khiển bởi các chương trình và các script khác. Đồng thời,
nó là công cụ gỡ lỗi mạng với nhiều tính năng và công cụ thăm dò.
Nc –v –z –w2 192.168.10.102 1-4000
-v: xuất chi tiết ra màn hình
-z: zero-I/O mode – không gửi dữ liệu nào chỉ phát ra một gói tin.
192.168.10.102: host
1-4000: port cần quét.
Nmap (Network Mapper) là một tiện ích nguồn mở miễn phí cho phát
hiện mạng và kiểm toán an ninh. Nhiều quản trị mạng và hệ thống cũng
tìm thấy sự hữu ích cho các công việc như kiểm kê mạng lưới, dịch vụ
quản lý lịch trình, và theo dõi thời gian hoạt động dịch vụ và máy chủ.
Nmap sử dụng các gói tin IP thô trong các phương pháp mới để xác định
host nào có sẵn trên mạng, các dịch vụ (tên ứng dụng và phiên bản) mà
host đó đang cung cấp, hệ điều hành gì (và các phiên bản hệ điều hành)
mà họ đang chạy, loại bộ lọc gói tin hoặc tường lửa nào đang sử dụng,
và nhiều đặc điểm khác. Nó được thiết kế để scan nhanh chóng các mạng
34
lớn, nhưng ho. Nmap chạy được trên tất cả các hệ điều hành, và các gói
nhị phân chính thức có sẵn cho Linux, Windows, và Mac OS X.
Cách dùng đơn giản nhất, không đặc tả tham số: nmap 192.168.10.0/24
Quá trình được thực hiện như sau:
35
a. Chuyển từ hostname thành Ipv4 sử dụng DNS. Nếu là một địa
chỉ IP thì không cần chuyển.
b. Thực hiện ping tới host, mặc định với một gói tin yêu cầu ICMP echo và
một gó tin TCP ACK gới tới cổng 80 để xác định host đó có đang up hay
không? Nếu không, nmap sẽ thoát và hiện thông báo. Chúng ta có thể sử
dung Ping NULL(-PN) để bỏ qua bước này.
c. Chuyển IP đích thành tên với truy vấn DNS ngược. điều này có thể bỏ
qua vơi thuộc tính –n để cải thiện tốc độ và khả năng không bi phát hiện.
d. Thực hiện quét TCP port với hơn 1000 port phổ biến được liệt kê tại
nmap-services. Quá trình scan SYN sẽ được thực hiện, nhưng Connect
scan sẽ được thay thế khi người dùng Unix không phải root thiếu quyền
cần thiết để gửi các gói tin thô.
e. In kết qua lên màn hình
Quét host đang up: nmap –sP –PE 192.168.10.0/24
-sP: ping scan
-PE: ping echo
36
Phụ thuộc vào độ phức tạp của mạng đích và các host, quá trình quét có
thể dễ dàng bị phát hiện.Nmap cung cấp khả năng làm giả địa chỉ nguồn
với tùy chọn –Ddecoy. Nó được tạo ra để làm tràn ngập cái site đích với
những thông tin giả mạo. Thứ cơ bản nằm phía sau tùy chọn này là chạy
scan giả cùng lúc với scan thật. Hệ thống đích sẽ trả lời trên các địa chỉ
giả cũng như scan port thực của chúng ta. Và quan trọng hơn cả là địa
chỉ giả phải còn sống. Ngược lại, quá trìnhscan với SYN và dẫn đến điều
kiện từ chối dịch vụ
Nmap –sS–PE 192.168.10.0/24 –D 10.10.10.1
37
d) Phòng chống:
Tắt tất cả các dịch vụ không cần thiết. Trên Unix, chúng ta có thể thực hiện
điều này bằng cách xem các dịch vụ không cần thiết trong /ect/inetd.conf và tắt các
dịch vụscript lúc khởi động. Trên Windows, rất khó để tắt các dịch vụ không cần thiết
vì theo cách hoạt động của Windows, cổng TCP 139 và 445 cung cấp nhiều chức năng
Windows hoạt động.
3. Xác định hệ điều hành
Nhiều công cụ mạnh và nhiều kỹ thuật quét port có sẵn để tìm các cổng mở trên
hệ thống đích. Nếu nhìn lại, đối tượng đầu tiên của chúng ta là quét cổng để xác định
các cổng TCP và UDP trên máy đích. Và với những thông tin đó, chúng ta có thể cổng
nào đó đang lắng nghe có điểm yếu nào đó chăng? Nhưng chúng ta cần tìm nhiều
thông tin hơn về mục tiêu. Đó chình là xác định hệ điều hành.
a) Active OS Detection
Thông tin càng chi tiết về hệ điều hành thì nó càng hữu ích trong việc phân
tích điểm yếu. chúng ta có thể sử dụng kỹ thuật banner-grabbing, thứ lấy thông tin từ
các dịch vụ FTP, telnet, SMTP, HTTP. Đây là cách đơn giản nhất để phát hiện hệ điều
hành và phiên bản mà nó đang chạy. Theo đó, kỹ thuật đúng đắn là kỹ thuật stack
fingerprinting. Nó là một kỹ thuật rất mạnh cho phép chúng ta biết chắc hệ điều hành
đích với độ tin cậy cao. Stack fingerprinting sẽ yêu cầu ích nhất một cổng đang lắng
nghe. Nmap có đoán được trong trường hợp không có cổng nào đang mở.
38
Active OS detection gửi các gói tin đến đích để xác định điểm đặc trưng chi
tiết trong stack mạng, điều này cho phép chúng ta đoán hệ điều hành. Vì phải gửi các
gói tin như thế, nên rất dễ dàng bị phát hiện. vì thế đây không phải là cách mà hacker
áp dụng để tấn công.
Nmap với –O để xác định hệ điều hành.
b) Passive OS Detection
Sử dụng passive stack fingerprinting. Nó tương tự như khái niệm active
stack fingerprinting. Thay vì gửi các gói tin tới đích để dễ dành bị phát hiện. Kẻ tấn
công âm thầm giám sát giao thông mạng để xác định hệ điều hành đang sử dụng. Vì
vậy, bằng việc giám sát giao thông mạng giữa các hệ thống khác nhau, chúng ta có thể
xác định được hệ điều hành. Kỹ thuật này phụ thuộc vào vị trí trung tâm trên mạng và
trên cổng cho phép bắt gói tin.
39
Chương 4: ENUMERATION
I. Enumeration là gì?
Enumeration (Liệt kê) là bước tiếp theo trong quá trình tìm kiếm thông tin của
tổ chức , xảy ra sau khi đã scanning và là quá trình tập hợp và phân tích tên người
dùng, tên máy,tài nguyên chia sẽ và các dịch vụ . Nó cũng chủ động truy vấn hoặc kết
nối tới mục tiêu để có được những thông tin hợp lý hơn . Enumeration (liệt kê) có thể
được định nghĩa là quá trình trích xuất những thông tin có được trong phần scan ra
thành một hệ thống có trật tự. Những thông tin được trích xuất bao gồm những thứ có
liên quan đến mục tiêu cần tấn công, như tên người dùng (user name), tên máy tính
(host name), dịch vụ (service), tài nguyên chia sẽ (share).Những kỹ thuật liệt kê được
điều khiển từ môi trường bên trong. Enumeration bao gồm cả công đoạn kết nối đến
hệ thống và trực tiếp rút trích ra các thông tin. Mục đích của kĩ thuật liệt kê là xác định
tài khoản người dùng và tài khoản hệ thống có khả năng sử dụng vào việc hack một
mục tiêu . Không cần thiết phải tìm một tài khoản quản trị vì c húng ta có thể tăng tài
khoản này lên đ ến mức có đặc quyền nhất để cho phép truy cập vào nhiều tài khoản
hơn đã cấp trước đây.
II. Banner Grabbing
Kỹ thuật chủ yếu nhất của enumeration là banner grabbing, Nó có thể được
định nghĩa đơn giản như là kết nối đến ứng dụng từ xa và quan sát đầu ra. Nó có nhiều
thông tin cho kẻ tấn công từ xa. Ít nhất chúng ta cũng đã xác định được mô hình dịch
vụ đang chạy mà nhiều trường hợp là đủ để tạo nên quá trình nghiên cứu các điểm yếu.
Phòng chống: tắt các dịch vụ không cần thiết. chúng ta có thể giới hạn việc truy
cập tới các dịch vụ điều khiển truy cập mạng.
III. Enumerating các dịch vụ mạng
1. Http fingerprinting
a) Telnet
TELNET (viết tắt của TerminaL NETwork) là một giao thức mạng (network
protocol) được dùng trên các kết nối với Internet hoặc các kết nối tại mạng máy tính
cục bộ LAN. Tài liệu của IETF, STD 8, (còn được gọi là RFC 854 và RFC 855) có nói
rằng: Mục đích của giao thức TELNET là cung cấp một phương tiện truyền thông
chung chung, có tính lưỡng truyền, dùng độ rộng 8 bit, định hướng byte. TELNET là
một giao thức khách-chủ (client-server protocol), dựa trên nền TCP, và phần khách
(người dùng) thường kết nối vào cổng 23 với một máy chủ, nơi cung cấp chương trình
ứng dụng thi hành các dịch vụ.
40
Sử dụng telnet để tìm hiểu thông tin từ cổng dịch vụ đang mở, sử dụng công cụ
từ xa để lấy thông tin thông qua cổng telnet mà hầu hết các hệ điều hành điều hổ trợ.
C:\>telnet www.google.com 80
b) Netcat
Là một tool cho phép ghi và đọc data thông qua giao thức TCP và UDP. Netcat
có thể sử dụng như port scanner, backdoor, port redirecter, port listener,…
Sử dụng netcat bằng dòng lệnh:
- 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]
Ví dụ:
Lấy banner của Server:
nc đến 192.168.10.102, cổng 80
Quét cổng
41
chạy netcat với tùy chọn -z. Ví dụ để scan các cổng TCP(1->500) của host
192.168.10.102
nc –v www.google.com 80
www.google.com [74.215.71.105] 80 (http) open
c) Open SSL
Là sự nỗ lực hợp tác nhằm phát triển bộ mã nguồn mở với đầyđủ tính năng,
được triển khai trên giao thức SSL (version 2 và version 3) vàgiao thức TSL(version 1)
được quản lý bởi cộng đồng những người tìnhnguyện trên toàn thế giới sử dụng
Internet để kết nối và phát triển bộOpenSSL và các tài liệu có liên quan.
Hầu hết các phần mềm như IMAP&POP, Samba, OpenLDAP, FTP,Apache và
những phần mềm khác đều yêu cầu công việc kiểm tra tính xácthực của người sử dụng
trước khi cho phép sử dụng các dịch vụ này. Nhưngmặc định việc truyền tải sự xác
minh thông tin người sử dụng và mật khẩu(password) ở dạng văn bản thuần túy nên có
thể được đọc hoặc thay đổi bởimột người khác. Kỹ thuật mã hóa như SSL sẽ đảm bảo
tính an toàn và nguyênvẹn của dữ liệu, với kỹ thuật này thông tin truyền trên mạng ở
dạng điểm nốiđiểm được mã hóa. Một khi OpenSSL đã được cài đặt trên Linux
server chúng ta có thể sử dụng nó như một công cụ thứ ba cho phép các ứng dụngkhác
dùng tính năng SSL
OpenSSL là một bộ công cụ mật mã triển khai trên giao thức mạng SSLvà TLS
và các chuẩn mật mã có liên quan. Chương trình OpenSSL là một công cụ dòng lệnh
42
để sử dụng các chứcnăng mật mã của các thư viện crypto của OpenSSL từ nhân.
OpenSSL có các thư viện cung cấp các chức năng mật mã cho các ứngdụng như an
toàn webserver.
Là phần mềm mã nguồn mở , có thể sử dụng được cho cả mục đích thương mại
và phi thương mại với tính năng mã hoá mạnh trên toàn thế giới, hỗ trợ các giao
thức SSLv2 và SSLv3 và TLSv1, cho cả phép mã hoá RSA và Diffie-Hellman, DSO.
Hỗ trợ cho OpenSSL và RSArefUS, nâng cao khả năng xử lý cụm mật khẩu đối với
khoá riêng .Chứng chỉ X.509 dựa vào xác thực cho cả phía client và server, Hỗ trợ
danh sách thu hồi chứng chỉ X.509, khả năng tái điều chỉnh đối với mỗi URL của các
tham số bắt tay SSL.
2. DNS Enumeration
DNS Enumeration là quá trình định vị tất cả các máy chủ DNS và tương ứng
của họ hồ sơ cho một tổ chức. Một công ty có thể có cả hai nội bộ và bên ngoài máy
chủ DNS có thể mang lại thông tin như tên người dùng, tên máy tính, và địa chỉ IP của
hệ thống mục tiêu tiềm năng. Hiện có rất nhiều các công cụ có thể được sử dụng để có
được thông tin cho thực hiện DNS liệt kê. Các ví dụ về các công cụ có thể được sử
dụng để liệt kê DNS nslookup, DIỄN, Registry Mỹ cho số Internet (ARIN), và Whois.
để kê khai DNS, chúng ta phải có sự hiểu biết về DNS và làm thế nào nó hoạt động.
Chúng ta phải có kiến thức về các bản ghi DNS. Danh sách các bản ghi DNS
cung cấp một cái nhìn tổng quan các loại bản ghi tài nguyên (cơ sở dữ liệu hồ sơ) được
lưu giữ trong các tập tin khu vực của tên miền System (DNS). DNS thực hiện một cơ
sở dữ liệu phân tán, phân cấp, và dự phòng thông tin liên kết với các tên miền Internet
và địa chỉ. Trong những miền máy chủ, các loại hồ sơ khác nhau được sử dụng cho các
mục đích khác nhau. Danh sách sau đây mô tả bản ghi DNS phổ biến các loại và sử
dụng của họ:
A (địa chỉ)-Bản đồ một tên máy chủ đến một địa chỉ IP
SOA (Start of Authority)-Xác định máy chủ DNS có trách nhiệm cho các tên
miền thông tin
CNAME (tên kinh điển)-Cung cấp tên hoặc bí danh cho địa chỉ ghi
MX (thư trao đổi) Xác định các máy chủ mail cho tên miền
SRV (dịch vụ)-Nhận dạng các dịch vụ như dịch vụ thư mục
PTR (pointer)-Bản đồ địa chỉ IP để lưu trữ tên
NS (tên máy chủ)-Xác định máy chủ tên khác cho tên miền
43
DNS Zone Transfer thường được sử dụng để tái tạo dữ liệu DNS trên một số
máy chủ DNS, hoặc để sao lưu các tập tin DNS. Một người sử dụng hoặc máy chủ sẽ
thực hiện một yêu cầu chuyển giao khu vực cụ thể từ một “name server”.Nếu máy chủ
tên cho phép di chuyển vùng xảy ra, tất cả các tên DNS và IP địa chỉ lưu trữ bởi các
máy chủ tên sẽ được trả lại trong văn bản ASCII con người có thể đọc được.
Nslookup
Ta cũng có thể dùng lệnh trực tiếp như sau:
Nslookup –type=any tuoitre.vn
Type là loại dịch vụ mạng, như đã liệt kê ở trên: NS(nameserver), MX(mail
exchange)…, any(tất cả).
Tuoitre.vn: một domain
44
3. Netbios name
NetBIOS là một từ viết tắt cho mạng Basic Input / Output System. Nó cung cấp
các dịch vụ liên quan đến lớp phiên của mô hình OSI cho phép các ứng dụng trên các
máy tính riêng để giao tiếp qua một mạng cục bộ. Thật sự như một API, NetBIOS
không phải là một giao thức mạng. Hệ điều hành cũ hơn chạy NetBIOS trên IEEE
802,2 và IPX / SPX sử dụng tương ứng giao thức Frames NetBIOS (NBF) và
NetBIOS trên IPX / SPX (NBX) . Trong các mạng hiện đại, NetBIOS bình thường
chạy trên giao thức TCP / IP thông qua NetBIOS qua giao thức TCP / IP (NBT) .Điều
này dẫn đến từng máy tính trong mạng có cả một tên NetBIOS và một địa chỉ IP tương
ứng với một (có thể khác nhau) tên máy chủ.
NetBIOS name là cơ chế đặt tên cho các tài nguyện trong 1 hệ thống theo
“không gian phẳng” (không có khái niệm phân cấp).
45
Chương 5: PASSWORD CRACKING
I. Giới Thiệu
Là quá trình tìm kiếm hoặc phục hồi password với nhiều mục đích khác nhau.
Mục đích của việc password cracking là giúp cho người dùng có thể lấy lại mật
khẩu đã quên trước đó, hoặc để chiếm đoạt quyền truy cập không xác thực tới hệ
thống.
II. Các Kỹ Thuật Password Cracking
1. Dictionary Attacks/Hybrid Attacks
Attacks sẽ sử dụng file từ điển có sẵn chứa các hash để so sánh với hash
của password để tìm ra dạng plaint text của password nếu hash trùng
nhau.
Chúng ta có thể thêm hoặc đảo các từ có trong từ điển (Hybird Attacks).
Dạng này ứng dụng tốt khj password là nhưng ký tự thông thường, tốc
độ nhanh, mức độ thành công tùy thuộc vào từ điển.
2. Brute Forcing Attacks
Sử dụng mọi tổ hợp của tất cả các ký tự để đưa vào hash và so sánh. Khả năng
thành công là tuyệt đối nếu có đủ thời gian vì tốc độ crack rất lâu trong trường hợp
password dài và phức tạp. chỉ tốt cho password ngắn.
3. Syllable Attacks/Pre-Computed Hashes
Kết hợp hai cách trên bằng cách tạo sẵn các bản hash của tất cả tổ hợp các ký tự
và chỉ so sánh trong quá trình hash. Tốc độ crack chỉ mất vài phút nếu có sẵn các bản
hash.
III. Các Kiểu Tấn Công Thường Gặp
1. Active Password Cracking
Tìm 1 username có thực và dò tìm password theo username đó .Quá trình
này có thể tự động hoá để tăng tốc độ tìm kiếm .
Các dạng tấn công kiểu Active Password Cracking:
o Password guessing: một tập hợp từ điển các từ và tên cũng như
mật khẩu và thử tất cả sự kết hợp để crack các password. Kiểu tấn
công này cần nhiều thời gian và lượng băng thông mạng lớn; dễ
dàng bi phát hiện.
o Trojan/Spyware/Keylogger: là chương trình chạy nền giúp cho kẻ
tấn công có thể ghi lại bất kỳ phím nào được nhấn (Keylogger);
46
thu thập thông tin một cách bí mật về cá nhân, tổ chức (Spyware);
với sự giúp đỡ của Trojan, kẻ tấn công có thể lấy quyền truy cập
vào các password được lưu trữ và có thể đọc các tài liệu cá nhân,
xóa file.
2. Passive Password Cracking
Capture quá trình log -in trên đường truyền để break password
offline(Sniff, MITM…)
Các kiểu tấn công này bao gồm:
o Wire Sniffing: kể tấn công chạy các công cụ sniffing gói tin trong
mạng LAN để truy cập và ghi lại các giao thông mạng đang sống.
Dữ liệu bắt được có thể sẽ bao gồm password được gửi tới các hệ
thống từ xa thông qua các giao dịch Telnet, FTP, rlogin và mail
điện tử gửi và nhận.
o Man-in-the-Middle (MITM) and Replay Attack: Trong tấn công
MITM, attacker giành quyền truy cập vào kênh giao tiếp giữa nạn
nhân và server để tìm kiếm thông tin; trongreplay attack, các gói
tin và thẻ bài (token) xác thực được bắt sử dụng một sniffer.
3. Offline Password Cracking
Tiếp xúc trực tiếp với máy tính nạn nhân để copy các file lưu trữ thông tin. Ví
dụ, SAM database trên Windows (%systemroot%/system32/config) hay /root/passwd
trên Linux. Sau đó có thể sử dụng John để tìm password dang plain text.
IV. Các công cụ Password Cracking
1. Hydra
a) Giới thiệu
Hydra là một công cụ bể khóa đăng nhập mạng rất nhanh, hỗ trợ nhiều giao
thức và dịch vụ khác nhau.
Hydra là trình bẻ khóa đăng nhập xong xong, nghĩa là nó chạy nhiều tác vụ
cung một lúc để quá trình bẻ khóa được nhanh hơn.
Công cụ này cho phép các nhà nghiên cứu và chuyên gia bảo mật có thể
trình bày mức độ dễ dàng để chiếm quyền truy cập không xác thực từ xa tới hệ
thống nào đó
47
b) Cách dùng
Cú pháp chung của Hydra là:
Hydra [[-l LOGIN|-L FILE] [-p PASSWORD|-P FILE]]|[-C FILE]] [-t task] [-w
wait] [server server | IP] [service://server[:port]]
Ví dụ:
48
hydra –f –L login.txt –P password.txt 192.168.10.1 http-get
Trong đó:
-f: finish:tìm được cặp username và password hợp lệ đầu tiên sẽ kết th
Các file đính kèm theo tài liệu này:
- H4317898NG D7850N Vamp192 S7916 D7908NG BACKTRACK 5 2727874 KHAI THamp193C .pdf