Ai trong chúng ta cũng đều biết, Google là một gã khổng lồ trong lĩnh vực tìm kiếm.
Người ta có thể tìm thấy mọi thông tin từ Google. Từ những chuyện to lớn, đến những
chuyện nhỏ nhặc nhất cũng có thể tìm được trên Google. Bất kể thông tin gì, miễn là nó
hiển thị ra trang web thì đều được google tìm thấy.
Chương trước, chúng ta đã có nhắc đến kỹ thuật theo dõi Footprinting, và sau này bạn
gặp một chủ đề là Social engineering , cả hai lĩnh vực này đều có một phần ứng dụng
từ Google để tìm kiếm thông tin, phục vụ cho nhu cầu tấn công hệ thống.
Lợi dụng vào bộ máy tình kiếm Google để truy tìm tông tích đối tượng, thậm chỉ là
dùng Google để tấn công hệ thống. Đó chính là Google Hacking.
Với khả năng tìm kiếm lợi hại của Google, hacker có thề tìm thấy nhiều thông tin hữu
ích, cho quá trình theo dõi mục tiêu và tấn công vào đối tượng. Chương này sẽ trình bày
những thủ thuật tìm kiếm nổi trội của Google, có ý nghĩa đối với một hacker. Từ việc
làm thể nào để bạn tìm được thông tin của mục tiêu, thì bạn sẽ rút cho mình kinh nghiệm
làm thế nào đề không cho thông tin bị rò ra bên ngoài.
12 trang |
Chia sẻ: candy98 | Lượt xem: 594 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Giáo trình Bảo mật mạng - Chương 3: Google Hacking - Nguyễn Tấn Thành, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 3: GOOGLE
HACKING
Nguyễn Tấn Thành
Ai trong chúng ta cũng đều biết, Google là một gã khổng lồ trong lĩnh vực tìm kiếm.
Người ta có thể tìm thấy mọi thông tin từ Google. Từ những chuyện to lớn, đến những
chuyện nhỏ nhặc nhất cũng có thể tìm được trên Google. Bất kể thông tin gì, miễn là nó
hiển thị ra trang web thì đều được google tìm thấy.
Chương trước, chúng ta đã có nhắc đến kỹ thuật theo dõi Footprinting, và sau này bạn
gặp một chủ đề là Social engineering , cả hai lĩnh vực này đều có một phần ứng dụng
từ Google để tìm kiếm thông tin, phục vụ cho nhu cầu tấn công hệ thống.
Lợi dụng vào bộ máy tình kiếm Google để truy tìm tông tích đối tượng, thậm chỉ là
dùng Google để tấn công hệ thống. Đó chính là Google Hacking.
Với khả năng tìm kiếm lợi hại của Google, hacker có thề tìm thấy nhiều thông tin hữu
ích, cho quá trình theo dõi mục tiêu và tấn công vào đối tượng. Chương này sẽ trình bày
những thủ thuật tìm kiếm nổi trội của Google, có ý nghĩa đối với một hacker. Từ việc
làm thể nào để bạn tìm được thông tin của mục tiêu, thì bạn sẽ rút cho mình kinh nghiệm
làm thế nào đề không cho thông tin bị rò ra bên ngoài.
1. Google Hacking Là Gì ?
Nói tóm lại, Google hacking thực hiện những công việc như:
Sử dụng bộ máy tìm kiếm để truy tìm thông tin của đối tượng cần theo dõi.
Cũng là bộ máy tìm kiếm, với những cú pháp tìm kiếm đặc biệt có thể giúp
hacker tìm thấy những thông tin đặc biệt có liên quan đến bảo mật, như username,
computername, password, page logon
Sử dụng Google để thực hiện các vụ tấn công, điều này được làm như thế nào,
hạ hồi phân giải.
Những thông tin được chú tâm
Chức năng tìm kiếm của Google rất lớn, tùy vào phạm trù lĩnh vực mà chúng ta quan
tâm đến những dữ liệu nào. Trong Hacking, chúng ta cần chú ý đến những dữ liệu như
sau:
Sự cố mạng và những thông tin liên quan đến các server có lổ hổng bảo mật.
Những thông báo lỗi (erro message) có chứa nhiều thông tin quan trọng.
File có chứa mật khẩu.
Thư mục có nội dụng nhạy cảm như config, system
Trang đăng nhập (logon page) vào website.
Trang chứa thông tin mạng hoặc dữ liệu nhạy cảm như Firewall log
Google với kết quả tìm kiếm
Với Google, gõ từ khóa tìm kiếm càng ít thì kết quả càng nhiều, ngược lại từ khóa dài
sẽ cho kết quả ít hơn. Kết hợp những từ khóa tìm kiếm đặc biệt, những cú pháp tìm
kiếm của Google sẽ giới hạn phạm vi tìm kiếm, và có kết quả chính xác, nhanh hơn.
Kết quả tìm kiếm của Google thường rất là lớn. Con số vài ngàn là chuyện bình thường.
Tuy nhiên, đã có bao giờ bạn xem đến những trang kết quả cuối cùng chưa. Chắc chắn
là chưa, vì bạn chưa đủ kiên nhẫn. Nhưng chính ở những nơi hẻo lánh ít người đến đó,
lại ẩn chứa những bí mật mà hacker nên đến. Với từ khóa tìm kiếm là administrator,
những trang đầu tiên, bạn có thể thấy những bài viết bình thường trên mạng có liên quan
đến từ administrator. Nếu chịu khó đến những trang kết quả cuối cùng, bạn có thể tìm
thấy thông tin của administrator đang quản lý một website nào đó. Hoặc với từ khóa
username, chúng ta có thể tìm thấy một username đăng nhập hệ thống.
2. Google Hacking Basic
Bây giờ chúng ta sẽ bắt đầu trò chơi thật sự. Những chuyện tưởng chừng như đơn giãn
là tìm kiếm trên Google, lại có thể mang lại nhiều thứ cho hacker. Ngay sau đây, bạn sẽ
tìm hiểu về các kỹ thuật hacking của google. Nó đơn giãn là các chức năng quá hay của
Google mà thôi.
Anonymity with Caches
Chức năng Cache thật sự là quá tuyệt vời của Google. Google lưu lại nhiều website mà
bạn và những người khác truy cập. Bất cứ khi nào, bạn đểu có thể xem lại trang web
được lưu trong bộ nhớ cache này của google, ngay cả khi nó đã bị xóa khỏi server trên
mạng. Và như đã nói Google Cache lưu lại mọi thứ.
Hình 3. 1: Tất cả mọi thứ đều được lưu lại trong Cache
Google lưu lại mọi dữ liệu mà nó thu thập được. Có đến hàng Tegabyte dữ liệu web bị
rò rõ hằng năm. Hacker có thể lợi dụng vào Google để thực hiện một cuộc tấn công ẩn
danh.
Bạn đăng một thông tin lên website của mình. Một thời gian không lâu sau đó, bạn xóa
trang đó đi, vì không muốn tin này phát tán nữa. Thế nhưng mọi người vẫn xem được
những thông tin đó do bạn đăng lên. Họ đã không xem trực tiếp từ website của bạn mà
xem trong bộ nhớ cache của Google.
Bạn vào trang điền thông tin cá nhân khi đăng ký tham gia một trang web bán hàng trực
tuyến. Thật tai hai, khi thông tin đó của bạn được nhà cung cấp dịch vụ bán hàng hứa
là giữ bí mật, mà nó vẫn bị rò rĩ ra bên ngoài. Chuyện gì đã xẩy ra? Đó chính là vì bạn
đã bị Google cache thông tin đó của bạn lại, khi bạn vào xem trang thông tin của mình.
Nói tóm lại, nhiều thông tin nhạy cảm của bạn và của công ty, tổ chức có thể bị Google
cache lại. Và đến lúc nào đó bạn không muốn nó xuất hiện trên internet nữa, thì nó lại
vẫn còn xuất hiện thông qua bộ nhớ cache của google.
Nếu một hacker tinh khôn, anh ta có thể tìm thấy nhiều thông tin hữu ích lưu trong bộ
nhợ cache này.
Sử Dụng Google Như Một Proxy Server
Sử dụng chức năng này chúng ta sẽ tìm hiểu đến công cụ Translate của google, tại địa
chỉ Chúng ta đều biết nó dùng để dịch đoạn văn bản.
Nhưng nếu chỉ có văn bản không, thì chúng ta đã không có Proxy Server. Chức năng
Translate của Google còn cho phép dịch cả một trang web.
Điền địa chỉ trang web vào khung dịch văn bản, Google sẽ giúp chúng ta dịch cả trang
web đó. Khi ấy, chúng ta đang truy cập vào website không đi trực tiếp từ máy của mình,
mà thông qua một máy khác là Google.
Trong trang ví dụ dưới đây, tôi sẽ truy cập vào trang web www.uit.edu.vn thông qua
Google Translate.
Hình 3. 2: Kết quả truy cập website www.uit.edu.vn thông
qua Google Translate
Bạn có thắc mắc là tại sao tôi lại dịch từ tiếng Anh sang tiếng Việt hay không. Đó chính
là vì tôi muốn xem trang web của mình trong tiếng Việt, tiếng gốc của trang web. Bạn
sẽ gặp thông báo lỗi khi cố dịch trang web tiếng Việt sang tiếng Việt.
Xem xét một kết quả của trình tcpdump (trình bắt gói tin), nó thể hiện quá trình giao
tiếp giữa máy tính của bạn với internet, khi bạn truy cập website ở trên.
Hình 3. 3: Kết quả TcpDump
Đầu tiên máy tính của bạn (192.168.2.32:53466) gửi yêu cầu đến web server
(64.233.171.104:80) đây là máy chủ của Google, và toàn bộ quá trình giao tiếp chuyển
dữ liệu không hề xuất hiện máy chủ uit.edu.vn.
Directory Listings
Directory Listings là một website đặc biệt, nó hiển thị danh sách các file và thư mục
tồn tại trên server. Đặc điểm của website kiểu này là không cần lập trình, thiết kế web
phức tạp. Nó được dùng trong các trường hợp chia sẽ tài nguyên. Cũng giống như FTP,
chúng ta hoàn toàn phần quyền được trên các file và directory này.
Hình 3. 4: Kết quả của Directory Listings một website
Hầu hết các ứng dụng webserver sẽ hiển thị danh sách thư mục như thế khi trong địa
chỉ truy cập không có trang mặc định (default page). Những trang mặc định như
index.php, default.htmlđã không được người lập trình web đưa vào thư mục. Thật là
tai hại khi thư mục đó có chứa nhưng tập tin quan trọng, như config.php.
Nếu bạn là người phát triển website thì hãy đặc biệt chú ý đến vấn đề này. Có nhiều
cách nếu bạn không muốn liệt kê thư mục trong trình duyệt kiểu này. Đơn giãn là thêm
file default page rõng vào thư mục. Khi đó người dùng truy cập vào thư mục chỉ thấy
một trang nội dung trắng. Cách khác là dùng file cấu hình .htaccess
Để tìm kiếm những trang web như thế bạn có thể sử dụng từ khóa index of / Tại sao
như vậy. Hãy xem hình 3.4, bạn thấy các trang web hiển thị thư mục đểu có phần nội
dung là index of
Tìm kiếm thư mục và tập tin đặc biệt
Đó là những thư mục như adminitrator, configuration, hay những file *.log, *.sys,
*.conf
Nếu muốn tìm những thưc mục đặc biệt như thế có thể kết hợp thêm từ khóa intitle:
Ví dụ cú pháp: intitle: index of admin hoặc intitle: index of inurl: admin sẽ cho
chúng ta kết quả là những trang web có liên quan đến trang quản trị của website.
Cú pháp intile: index of ws_ftp.log sẽ giúp chúng ta tìm kiếm file ws_ftp.log
Hình 3. 5: Kết quả tìm kiếm thư mục đặc biệt
Server version
Tìm kiếm thông tin phiên bản của ứng dụng phía server sẽ giúp cho hacker có kế hoạch
tấn công tốt hơn. Có nhiều cách tìm kiếm thông tin server:
Dựa vào HTTP Header cũng có thể tìm thấy số phiên bản của ứng dụng.
Một vài công cụ dò tìm (scanning) cũng có thể giúp đỡ.
Trong chức năng Directory Listings ở trên cũng có hiển thị thông tin server ở
dưới, xem lại hình trên chúng ta sẽ thấy rõ dòng thông tin phiên bản của ứng
dụng là: Apache / 2.0.52 (Unix) Server at xml.apache.com Có nghĩa là server
đang chạy hệ điều hành Unix, ứng dụng Apache phiên bản 2.0.52 cho webserver,
và web server có địa chỉ là xml.apache.com.
Để tìm kiếm thông tin phiên bản ứng dụng, có thể dùng cú pháp Server at Ví dụ như
intitle: index of / “server at”
Directory Traversal
“Travel” là du lịch, Directory Traversal có thể tạm hiểu là “đi dạo qua các thư mục”.
Để lý giải cho vấn đề này, chúng ta cùng quay lại với kết quả của Directory Listing ở
hình dưới đây.
Hình 3. 6: Kết quả hiển thị cũa Derectory Listing
Kết quả này đang hiển thị danh sách thư mục cho đường dẫn
/bpa/acadunits/admin/envr/bowman. Nếu để ý, chúng ta thấy có thư mục
« admin » nằm ở trên thư mục hiện hành hai cấp. Và chúng ta còn thấy một liên kết
Parent Directory ở ngay hàng đầu. Đều đó có nghĩa là nếu bấm vào liên kết này, chúng
ta có thể đi đến được thư mục admin, và còn có thể duyệt qua tất cả các thư mục khác.
Đến đây, có thể hiểu Traversal là một kỹ thuật mở rộng kết quả tìm kiếm, từ một mục
tiêu nhỏ.
Bằng cách sử dụng công cụ tìm kiếm của Google, không khó để bạn tìm đến những thư
mục như thế. Ví dụ với cấu trúc tìm kiếm là
site:cl.uh.edu inurl:bpa/acadunits/admin ws_ftp.log
chúng ta có thể tìm thấy nhiều file đặc biệt, và nhiều hơn nữa những thông tin cần thiết.
Để có thể duyệt hết cây thư mục, chúng ta còn một cách nữa, là thay đổi vài nội dung
trong URL. Ví dụ bạn có thể thay đổi từ admin ở trên thành những từ khác có ý nghĩa
như student, public, teacher
Incremental Substitution
Đây cũng là một kỹ thuật dùng để duyệt file và thư mục. Cũng bằng cách suy luận, và
thay đổi những ký tự cần thiết trong đường dẫn URL, chúng ta có thể tìm thấy những
file hoặc thư mục cần thiết.
Ví dụ: Bạn đã tìm thấy file với đường dẫn là /docs/bulletin/2.xls Vậy nếu thay đổi
thành /docs/bulletin/3.xls thì chúng ta có khả năng tìm thấy được file 3.xls.
Một ví dụ khác, bạn tìm thấy đường dẫn /DigLib_thumbnail/spmg/hel/0001/H/
Thử thay đổi thành /DigLib_thumbnail/spmg/hel/0002/H/ Biết đầu sẽ tìm thấy
những điều bất ngờ.
Bằng cú pháp tìm kiếm filetype:xls inurl:1.xls or intitle:index.of inurl:0001 Bạn có
thể tìm thấy những file khác tương tự như vậy.
Hacking Tool
Một vài công cụ download, như IDM (Internet Download Manager), có chức năng giúp
người dùng tìm và tải nhiều file chỉ có một phần đường dẫn thay đổi. Ví dụ bạn có tìm
tải tất cả các file có đường dẫn là .tuoitre.vn/save/media/radio/radio-*.mp3 Trong
đó dấu * đại diện cho ký tự từ 001 đến 099
Extension Walking
Bạn đã thử dùng cú pháp filetype của Google. Nhiệm vụ của cú pháp này, là tìm kiếm
tập tin có phần mở rộng được chỉ định. Chẳng hạn như filetype: HTML sẽ tìm những
file có phần mở rộng là HTML.
Như vậy, nếu bạn biết rằng, vài định dạng file có nội dung quan trọng như .bak, .sql,
.confBạn có thể bắt đầu truy lùng ra chúng. Ví dụ bạn dùng cú pháp intitle:index.of
index.php.bak Có thể chúng ta sẽ thấy được những điều bí ẩn.
3. Google Advanced Operator
Chắc hẳn rằng, ai trong chúng ta cũng từ quen thuộc với những cú pháp tìm kiếm thông
dụng của Google. Áp dụng những cú pháp đó, có thể giúp mình ra kết quả nhanh hơn,
chính xác hơn. Tuy nhiên, vài cú pháp sau đây thì thích hợp cho hacker hơn.
Site
Là toán tử dùng để tìm kiếm thông tin trong một site. Điều này giúp chúng ta giới hạn
phạm vi tìm kiếm lại. Ví dụ cú pháp site: uit.edu.vn sẽ giới hạn phạm vi tìm kiếm trong
trang web uit.edu.vn
Intitle:index of
Cú pháp này đã có dịp chúng ta sử dụng để tìm kiếm thư mục. Nó cũng được xem là cú
pháp lợi hại dành cho hacker
Error | Warning
Đây là hai cú pháp dùng để tìm kiếm thông tin lỗi. Một vài thông báo lỗi khi lập trình
sẽ tạo một lỗ hổng cho hacker thừa cơ đột nhật.
Login | Logon
Cú pháp dùng để tìm trang logon. Nó có thể chỉ là trang đâp nhập website bình thường,
nhưng cũng có thể là trang đăng nhập vào một hệ thống đặc biệt hơn. Đứng trước cửa
rồi, việc tấn công vào trong thế nào còn tùy thuộc vào nhiều thứ.
Username | Userid | employerID | “your user name”
Đây là một loạt các cú pháp tìm kiếm user name để đăng nhật hệ thống. Tại sao chúng
ta tìm được. Đó là do vài lỗi không để ý của người lập trình. Ví dụ anh ta vô tinh cho
hiển thị thông báo “Tài khoản tranvanteo vẫn chưa kích hoạt”
Password | Passcode | “Your password is”
Cũng tương tự như cú pháp về username. Chúng ta dễ dàng tìm thấy nhưng câu thông
báo đại loại như là “Your password is AHTlkYu”
Admin | Administrator
Chúng ta có khoanh vùng tìm kiếm những thông tin có liên quan đến admin với từ khóa
này. Những trang quản trị dành cho admin, những thông tin của admin, và nhiều thứ
khác có liên quan đến admin. Kết hợp với chức năng cache của Google, hiệu quả công
việc sẽ tăng lên.
–ext:html –ext:htm –ext:shtml –ext:asp –ext:php
Và còn nhiều hơn nữa những cú pháp có liên quan đến –ext. Cú pháp này giúp chúng
ta tìm thấy những file mà chúng ta muốn. Với hacker nhưng file đó có thể kể đến như
php, html, bak, conf, sys
inurl:temp | inurl:tmp | inurl:backup | inurl:bak
Cũng giống như với ext, nhưng không tìm theo file nữa mà tìm theo thư mục. Những
thư mục mà hacker quan tâm như temp, backup, admin, conf
intranet | help.desk
Thông tin có liên quan đến bộ phận helpdesk của công ty cũng không thể bỏ qua trong
cuộc tấn công. Cú pháp này giúp chúng ta tìm thấy nhiều thông tin có liên quan đến bộ
phận helpdesk.
4. Google Hacking Tool
Việc phải ghi nhớ những cú pháp tìm kiếm đặc biệt dành cho hacker trên đây làm chúng
ta khó chịu. Rất may là đã nhiều công cụ hổ trợ chúng thực hiện những câu truy vấn tìm
kiếm dễ dàng hơn.
Hình 3. 7: Trang web Google Hacking Database
Đầu tiên và cũng đàng gòm nhất là Google Hacking Database. Tại đây tập hợp kết quả
tìm kiếm của hàng ngàn lổ hổng bảo mật, những file có chứa username, những trang
logon, những file có chứa nội dung quan trọngTruy cập vào website
để khai thác cở sở dữ liệu
khổng lồ này.
SiteDigger Tool, Gooscan,
Goolink Scanner là những
công cụ hữu ích khác, cho
phép chúng ta thực hiện quá
trình tìm kiếm với những câu
lệnh đặc thù hơn, chuyên biệt
hơn của hacker.
Google Hack: Đây là cộng
đồng của Google Hack tại địa
chỉ
Cùng với công cụ mà các nhóm cung cấp, sẽ
giúp chúng ta khai thác tối đa tiện ích của google trong quá trình tìm kiếm và tấn công
hệ thống. Công cụ Google Hack chẳng những cho phép chúng ta tìm kiếm thông tin mà
còn cho phép sử dụng Google như là một Proxy Server.
Hình 3. 8: Giao diện của GooLink
Hình 3. 9: Giao diện của Google Hacks
5. Tổng kết
Kết thúc phần này, chúng ta cần hiểu rõ các vấn đề sau:
Google là một công cụ tìm kiếm mạnh mẽ, nhưng cũng vì mạnh mẽ mà nó trở
thành một công cụ tấn công của Hacker.
Sử dụng công cụ của Google để tạo thành một Proxy Server, dùng trong trường
hợp cần truy cập web ẩn danh.
Có nhiều thủ thuật tìm kiếm khác nhau, cho chúng ta kết quả mong đợi. Nhưng
kỹ thuật tìm kiếm thư mục, tìm kiếm phiên bản serverNhững toán tử và từ
khóa quan trọng, nên biết, cũng được sử dụng trong tìm kiếm để khoanh vùng
tìm kiếm.
Vài công cụ giúp chúng ta nhanh chóng hơn trong việc tạo câu truy vấn tìm kiếm.