入侵方法
route print 查看本機設定網路
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:
例如搜尋:link:www.4ngel.net可以返回所有和www.4ngel.net做了連結的URL.
site:
這個也很有用,例如:site:www.4ngel.net.將返回所有和4ngel.net這個站有關的URL.
對了還有一些操作符也是很有用的:
+把google可能忽略的字列如查詢範圍
-把某個字忽略
~同意詞
.單一的通配符
*通配符,可代表多個字母
""精確查詢
下面開始說說實際套用(我個人還是比較習慣用google.com,以下內容均在google上搜尋),對於一個居心叵測的攻擊者來說,可能他最感興趣的就是密碼檔案了.而google正因為其強大的搜尋能力往往會把一些敏感信息透露給他們.用google搜尋以下內容:
intitle:"indexof"etc
intitle:"Indexof".sh_history
intitle:"Indexof".bash_history
intitle:"indexof"passwd
intitle:"indexof"people.lst
intitle:"indexof"pwd.db
intitle:"indexof"etc/shadow
intitle:"indexof"spwd
intitle:"indexof"master.passwd
intitle:"indexof"htpasswd
"#-FrontPage-"inurl:service.pwd
有時候因為各種各樣的原因一些重要的密碼檔案被毫無保護的暴露在網路上,如果被別有用心的人獲得,那么危害是很大的.下面是我找到的一個FreeBSD系統的passwd檔案(我已做過處理):
同樣可以用google來搜尋一些具有漏洞的程式,例如ZeroBoard前段時間發現個檔案代碼泄露漏洞,我們可以用google來找網上使用這套程式的站點:
intext:ZeroBoardfiletype:php
或者使用:
inurl:outlogin.php?_zb_path=site:.jp
來尋找我們所需要的頁面.phpmyadmin是一套功能強大的資料庫操作軟體,一些站點由於配置失誤,導致我們可以不使用密碼直接對phpmyadmin進行操作.我們可以用google搜尋存在這樣漏洞的程式URL:
intitle:phpmyadminintext:Createnewdatabase
還記得http://www.xxx.com/_vti_bin/..%5C..%5C....m32/cmd.exe?dir嗎?用google找找,你也許還可以找到很多古董級的機器。同樣我們可以用這個找找有其他cgi漏洞的頁面。
allinurl:winntsystem32
圖三
前面我們已經簡單的說過可以用google來搜尋資料庫檔案,用上一些語法來精確查找能夠獲得更多東西(access的資料庫,mssql、mysql的連線檔案等等).舉個例子示例一下:
allinurl:bbsdata
filetype:mdbinurl:database
filetype:incconn
inurl:datafiletype:mdb
intitle:"indexof"data//在一些配置不正確的apache+win32的伺服器上經常出現這種情況
和上面的原理一樣,我們還可以用google來找後台,方法就略了,舉一反三即可,畢竟我寫這篇文章的目的是讓大家了解googlehacking,而不是讓你用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.comfiletype:doc
得到N個不錯的doc。先找找網站的管理後台地址:
site:xxxx.comintext:管理
site:xxxx.cominurl:login
site:xxxx.comintitle:管理
超過獲得2個管理後台地址:
http://a2.xxxx.com/sys/admin_login.asp
http://a3.xxxx.com:88/_admin/login_in.asp
還算不錯,看看伺服器上跑的是什麼程式:
site:a2.xxxx.comfiletype:asp
site:a2.xxxx.comfiletype:php
site:a2.xxxx.comfiletype:aspx
site:a3.xxxx.comfiletype:asp
site:.......
......
a2伺服器用的應該是ⅡS,上面用的是asp的整站程式,還有一個php的論壇
a3伺服器也是ⅡS,aspx+asp。web程式都應該是自己開發的。有論壇那就看看能不能遇見什麼公共的FTP帳號什麼的:
site:a2.xxxx.comintext:ftp://*:*
沒找到什麼有價值的東西。再看看有沒有上傳一類的漏洞:
site:a2.xxxx.cominurl:file
site:a3.xxxx.cominurl:load
在a2上發現一個上傳檔案的頁面:
http://a2.xxxx.com/sys/uploadfile.asp
用IE看了一下,沒許可權訪問。試試注射,
site:a2.xxxx.comfiletype:asp
得到N個asp頁面的地址,體力活就讓軟體做吧,這套程式明顯沒有對注射做什麼防範,dbowner許可權,雖然不高但已足矣,backashell我不太喜歡,而且看起來資料庫的個頭就不小,直接把web管理員的密碼暴出來再說,MD5加密過。一般學校的站點的密碼都比較有規律,通常都是域名+電話一類的變形,用google搞定吧。
site:xxxx.com//得到N個二級域名
site:xxxx.comintext:*@xxxx.com//得到N個郵件地址,還有信箱的主人的名字什麼的
site:xxxx.comintext:電話//N個電話
把什麼的信息做個字典吧,掛上慢慢跑。過了一段時間就跑出4個帳號,2個是學生會的,1個管理員,還有一個可能是老師的帳號。登入上去:
name:網站管理員
pass:a2xxxx7619//說了吧,就是域名+4個數字
要再怎么提權那就不屬於本文討論訪問了,呵呵,到此為止。
關於googlehacking的防範
以前我們站的曉風·殘月寫過一篇躲避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.1301");
header("Location:http://www.google.com");
}
?>
後記
這段時間在國外的一些googlehack的研究站點看了看,其實也都差不多是一些基本語法的靈活運用,或者配合某個腳本漏洞,主要還是靠個人的靈活思維。國外對於googlehack方面的防範也並不是很多,所以大家還是點到為止,不要去搞破壞拉,呵呵。對於一些在win上跑
apache的網管們應該多注意一下這方面,一個intitle:indexof就差不多都出來了:)