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ỉ http://translate.google.com.vn 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, .conf…Bạ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ọng…Truy cập vào website http://johnny.ihackstuff.com để 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ỉ http://code.google.com/p/googlehacks 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. 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 server…Nhữ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.

Comments