網路安全:攻防技術-Google Hacking的實現及應用

來源:互聯網
上載者:User
前言

  google hacking其實並算不上什麼新東西,在早幾年我在一些國外網站上就看見過相關的介紹,但是由於當時並沒有重視這種技術,認為最多就只是用來找找未改名的mdb或者別人留下的webshell什麼的,並無太大實際用途。但是前段時間仔細啃了些資料才猛然發覺google hacking其實並非如此簡單...

  google hacking的簡單實現

  記得以前看見過一篇文章寫的就是簡單的通過用www.google.com來搜尋dvbbs6.mdb或conn.inc來獲得一些網站的敏感資訊.其實使用google中的一些文法可以提供給我們更多的資訊(當然也提供給那些習慣攻擊的人更多他們所想要的.),下面就來介紹一些常用的文法.

  intext:
  這個就是把網頁中的本文內容中的某個字元做為搜尋條件.例如在google裡輸入:intext:動網.將返回所有在網頁本文部分包含"動網"的網頁.allintext:使用方法和intext類似.

  intitle:
  和上面那個intext差不多,搜尋網頁標題中是否有我們所要找的字元.例如搜尋:intitle:安全天使.將返回所有網頁標題中包含"安全天使"的網頁.同理allintitle:也同intitle類似.

  cache:
  搜尋google裡關於某些內容的緩衝,有時候也許能找到一些好東西哦.

  define:
  搜尋某個詞語的定義,搜尋:define:hacker,將返回關於hacker的定義.

  filetype:
  這個我要重點推薦一下,無論是撒網式攻擊還是我們後面要說的對特定目標進行資訊收集都需要用到這個.搜尋指定類型的檔案.例如輸入:filetype:doc.將返回所有以doc結尾的檔案URL.當然如果你找.bak、.mdb或.inc也是可以的,獲得的資訊也許會更豐富:)

  info:
  尋找指定網站的一些基本資料.

  inurl:
  搜尋我們指定的字元是否存在於URL中.例如輸入:inurl:admin,將返回N個類似於這樣的串連:http://www.xxx.com/xxx/admin,用來找管理員登陸的URL不錯.allinurl也同inurl類似,可指定多個字元.

  link:
  例如搜尋:inurl:www.4ngel.net可以返回所有和www.4ngel.net做了連結的URL.

  site:
  這個也很有用,例如:site:www.4ngel.net.將返回所有和4ngel.net這個站有關的URL.

  對了還有一些操作符也是很有用的:
+ 把google可能忽略的字列如查詢範圍
- 把某個字忽略
~ 同意詞
. 單一的萬用字元
* 萬用字元,可代表多個字母
"" 精確查詢

  下面開始說說實際應用(我個人還是比較習慣用google.com,以下內容均在google上搜尋),對於一個居心叵測的攻擊者來說,可能他最感興趣的就是密碼檔案了.而google正因為其強大的搜尋能力往往會把一些敏感資訊透露給他們.用google搜尋以下內容:

intitle:"index of" etc
intitle:"Index of" .sh_history
intitle:"Index of" .bash_history
intitle:"index of" passwd
intitle:"index of" people.lst
intitle:"index of" pwd.db
intitle:"index of" etc/shadow
intitle:"index of" spwd
intitle:"index of" master.passwd
intitle:"index of" htpasswd
"# -FrontPage-" inurl:service.pwd

  有時候因為各種各樣的原因一些重要的密碼檔案被毫無保護的暴露在網路上,如果被別有用心的人獲得,那麼危害是很大的.下面是我找到的一個FreeBSD系統的passwd檔案(我已做過處理):

圖一

  同樣可以用google來搜尋一些具有漏洞的程式,例如ZeroBoard前段時間發現個檔案代碼泄露漏洞,我們可以用google來找網上使用這套程式的網站:
intext:ZeroBoard filetype:php

  或者使用:

  inurl:outlogin.php?_zb_path= site:.jp

  來尋找我們所需要的頁面.phpmyadmin是一套功能強大的資料庫操作軟體,一些網站由於配置失誤,導致我們可以不使用密碼直接對phpmyadmin進行操作.我們可以用google搜尋存在這樣漏洞的程式URL:

  intitle:phpmyadmin intext:Create new database

圖二

  還記得http://www.xxx.com/_vti_bin/..%5C..%5C....m32/cmd.exe?dir嗎?用google找找,你也許還可以找到很多古董級的機器。同樣我們可以用這個找找有其他cgi漏洞的頁面。

  allinurl:winnt system32

圖三

  前面我們已經簡單的說過可以用google來搜尋資料庫檔案,用上一些文法來精確尋找能夠獲得更多東西(access的資料庫,mssql、mysql的串連檔案等等).舉個例子樣本一下:

allinurl:bbs data
filetype:mdb inurl:database
filetype:inc conn
inurl:data filetype:mdb
intitle:"index of" data //在一些配置不正確的apache+win32的伺服器上經常出現這種情況

  和上面的原理一樣,我們還可以用google來找後台,方法就略了,舉一反三即可,畢竟我寫這篇文章的目的是讓大家瞭解google hacking,而不是讓你用google去破壞.安全是把雙刃劍,關鍵在於你如何去運用.

  利用google完全是可以對一個網站進行資訊收集和滲透的,下面我們用google對特定網站進行一次測試。www.xxxx.com是全國著名大學之一,一次偶然的機會我決定對其網站進行一次測試(文中所涉及該學校的資訊均已經過處理,請勿對號入座:).

  首先用google先看這個網站的一些基本情況(一些細節部分就略去了):
site:xxxx.com

  從返回的資訊中,找到幾個該校的幾個系院的網域名稱:

http://a1.xxxx.com
http://a2.xxxx.com
http://a3.xxxx.com
http://a4.xxxx.com

  順便ping了一下,應該是在不同的伺服器.(想想我們學校就那一台可憐的web伺服器,大學就是有錢,汗一個)。學校一般都會有不少好的資料,先看看有什麼好東西沒:
site:xxxx.com filetype:doc

  得到N個不錯的doc。先找找網站的管理後台地址:
site:xxxx.com intext:管理
site:xxxx.com inurl:login
site:xxxx.com intitle:管理

  超過獲得2個管理後台地址:
http://a2.xxxx.com/sys/admin_login.asp
http://a3.xxxx.com:88/_admin/login_in.asp

  還算不錯,看看伺服器上跑的是什麼程式:
site:a2.xxxx.com filetype:asp
site:a2.xxxx.com filetype:php
site:a2.xxxx.com filetype:aspx
site:a3.xxxx.com filetype:asp
site:.......
......

  a2伺服器用的應該是IIS,上面用的是asp的整站程式,還有一個php的論壇
  a3伺服器也是IIS,aspx+asp。web程式都應該是自己開發的。有論壇那就看看能不能遇見什麼公用的FTP帳號什麼的:
site:a2.xxxx.com intext:ftp://*:*

  沒找到什麼有價值的東西。再看看有沒有上傳一類的漏洞:
site:a2.xxxx.com inurl:file
site:a3.xxxx.com inurl:load

  在a2上發現一個上傳檔案的頁面:
http://a2.xxxx.com/sys/uploadfile.asp

  用IE看了一下,沒許可權訪問。試試注射,
site:a2.xxxx.com filetype:asp

  得到N個asp頁面的地址,體力活就讓軟體做吧,這套程式明顯沒有對注射做什麼防範,dbowner許可權,雖然不高但已足矣,back a shell我不太喜歡,而且看起來資料庫的個頭就不小,直接把web管理員的密碼暴出來再說,MD5加密過。一般學校的網站的密碼都比較有規律,通常都是網域名稱+電話一類的變形,用google搞定吧。

site:xxxx.com //得到N個次層網域
site:xxxx.com intext:*@xxxx.com //得到N個郵件地址,還有郵箱的主人的名字什麼的
site:xxxx.com intext:電話 //N個電話

  把什麼的資訊做個字典吧,掛上慢慢跑。過了一段時間就跑出4個帳號,2個是學生會的,1個管理員,還有一個可能是老師的帳號。登陸上去:
name:網站管理員
pass:a2xxxx7619 //說了吧,就是網域名稱+4個數字

  要再怎麼提權那就不屬於本文討論訪問了,呵呵,到此為止。

  關於google hacking的防範

  以前我們站的曉風·殘月寫過一篇躲避google的文章,原理就是通過在網站根目錄下建立一個robots.txt以避免網路機器人獲得一些敏感的資訊,具體大家看原文章:
http://www.4ngel.net/article/26.htm

  不過這種方法我個人不推薦,有點此地無銀三百兩的味道。簡單一點的方法就是上google把自己網站的一些資訊刪除掉,訪問這個URL:
http://www.google.com/remove.html

  前幾天看見又有人討論用程式來欺騙robot的方法,我覺得可以試試,代碼如下:

if (strstr($_SERVER['HTTP_USER_AGENT'], "Googlebot"))
{
  header("HTTP/1.1 301");
  header("Location: http://www.google.com");
}
?>

  後記

  這段時間在國外的一些google hack的研究網站看了看,其實也都差不多是一些基本文法的靈活運用,或者配合某個指令碼漏洞,主要還是靠個人的靈活思維。國外對於google hack方面的防範也並不是很多,所以大家還是點到為止,不要去搞破壞拉,呵呵。對於一些在win上跑
apache的網管們應該多注意一下這方面,一個intitle:index of就差不多都出來了:)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.