1. 程式人生 > >GoogleHacking的原理及防範

GoogleHacking的原理及防範

簡述:GoogleHacking是利用Google的搜尋引擎快速查詢存在脆弱性的主機以及包含敏感資料的資訊,最近這種以前由黑客手動進行操作的攻擊手段可以通過一種新的蠕蟲病毒來自動完成。為了引起大家對GoogleHacking的關注與重視,我們編髮了這篇文章希望大家通過對Hack的攻擊手段的瞭解,更好的保護自己的資訊保安。本文中重在對GoogleHacking攻擊手段的理解,對一些攻擊的細節不予詳述請諒解。

  前言:

  2004年在拉斯維加斯舉行的BlackHat大會上,有兩位安全專家分別作了名為You found that on google ? 和google attacks 的主題演講。經過安全焦點論壇原版主WLJ大哥翻譯整理後,個人覺得有必要補充完善一些細節部分。今天向大家講述的是Google的又一功能:利用搜索引擎快速查詢存在脆弱性的主機以及包含敏感資料的資訊,甚至可以直接進行傻瓜入侵。

  用google來進行“滲透測試”

  我們今天滲透測試人員在實施攻擊之前,往往會先進行資訊蒐集工作,而後才是漏洞確認和最終的漏洞利用、擴大戰果。在這裡我們現在要談的是:
一、利用google查詢被人安裝了php webshell後門的主機,並測試能否使用;
二、利用google查詢暴露出來的INC敏感資訊.
OK,現在我們開始:

  1.查詢利用php webshell


  我們在google的搜尋框中填入:
  Code:
intitle:"php shell*" "Enable stderr" filetype:php


  (注: intitle—網頁標題  Enable stderr—UNIX標準輸出和標準錯誤的縮寫filetype—檔案型別)。搜尋結果中,你能找到很多直接在機器上執行命令的web shell來。如果找到的PHPSHELL不會利用,如果你不熟悉UNIX,可以直接看看LIST,這裡就不詳細說了,有很多利用價值。要說明的是,我們這裡搜尋出來的一些國外的PHPSHELL上都要使用UNIX命令,都是system調用出來的函式(其實用百度及其他搜尋引擎都可以,只是填寫搜尋的內容不同)。通過我的檢測,這個PHPWEBSHELL是可以直接Echo(Unix常用命令)。一句話就把首頁搞定了:

  Code:
echo "召喚" > index.jsp

  在得到的

  Code:
echo /


  後再寫上:"召喚"

  現在看看首頁,已經被我們改成: "召喚" 了

  我們也可以用WGET上傳一個檔案上去(比如你要替換的葉子吧)。然後execute Command輸入 cat file > index.html or echo "" > file

echo "test" >> file

  這樣一條條打出來,站點首頁就成功被替換了。同樣的也可以

  Code:
uname -a;cat /etc/passwd


  不過有點要注意,有些WEBSHELL程式有問題,執行不了的,比如:
http://www.al3toof.com/card/smal ... c_html&command=
http://ramsgaard.net/upload/shell.php

這些站的php是global register off   

  解決方案:
  我們可以利用相關工具進行在網際網路進行搜尋,如果有資訊被濫用,到http://www.google.com/remove.html 提交你希望刪除的資訊,
控制搜尋引擎機器人的查詢.

  2.搜尋INC敏感資訊

  我們在google的搜尋框中填入:

  Code:
.org filetype:inc
我們現在搜尋的是org域名的站點的INC資訊(因為google遮蔽掉了搜尋"COM"資訊,我們還可以搜其他gov,cn,info,tw,jp,edu等等之類的)

  PS:我在看許多PHP程式設計人員在程式設計時候,都喜歡把一些常寫的程式碼或配置資訊,寫在一個.inc的檔案中,如shared.inc、global.inc、conn.inc等等,當然這是一個很好的習慣,包括PHP官方網站都是如此,但不知你有沒有注意到這裡面含一個安全隱患問題。

  我有一次在寫一個PHP程式碼時,無意中寫錯了一句話,當我在瀏覽器裡檢視此PHP檔案時,竟然發現螢幕詳細的顯示了我所出錯的PHP檔案路徑及程式碼行。(PHP錯誤顯示配置是開著的.此功能在PHP裡是預設的!),這就是說當我們無意寫錯程式碼(同樣.inc檔案也一樣) 或者PHP程式碼解析出問題時,而PHP錯誤顯示又是開著的,客戶端的使用者就會看到具體url地址的.inc檔案,而.url檔案如同txt文字一樣,當在瀏覽器中瀏覽時,就毫無保留地顯示了它的內容,而且不少站點在.inc檔案寫了重要的資訊如使用者密碼之類!包括國內著名海爾公司以及嘉鈴摩托公司,我之所以敢公佈是因為我本人測試過,http://www.haier.com/su ***/inc/conn.inc 暴出的資料庫ID密碼用客戶端連不上去,網站關閉了1215,而且防火牆也過濾掉了。

  好,INC的知識說完後,我們繼續又搜尋到了好多,找到一個暴露了MYSQL口令的,我們又可以用客戶端登陸上去修改資料了.這裡涉及到資料庫的知識,我們不談太多,關於"INC暴露敏感資訊"就到這裡結束吧
當然我們可以通過一些辦法解決:

  1,你可以專門對.inc檔案進行配置,避免使用者直接獲取原始檔。
  2,當然比較好的方法是,加上並且改副檔名為.php(PHP可以解析的副檔名),這樣客戶端就不會獲取原始檔了。

  這裡,我將FreeMind繪製的圖片用文字表示了.
  有關Google Hack的詳細資訊,幫助我們分析踩點
  連線符:

  Code:
+      -       :         .        *         |

  操作符:

  Code:
"foo1 foo2"  
filetype:123  
site:foo.com   
intext:foo  
intitle:footitle   
allinurl:foo

  密碼相關

  Code:
:“index of”
htpasswd / passwd     
filetype:xls username password email   
"ws_ftp.log"     
  "config.php"   
allinurl:admin mdb  
service filetype:pwd (frontpage)  


  敏感資訊:

  Code:
"robots.tx"
"disallow:"
filetype:txt
  inurl:_vti_cnf (frontpage files)
allinurl:/msadc/samples/selector/showcode.asp
allinurl:/examples/jsp/snp/snoop.jsp
allinurl:phpsysinfo
ipsec filetype:conf
intitle:"error occurred" odbc request where (select|insert)
"mydomain.com" nessus  report
"report generated by"


  結尾:

  如果要拿ROOT許可權就要具體問題具體分析了,不過有了SHELL許可權就好提了,網上有很多根據WEBSHELL提升許可權的文章大家可以參照一下.
通過google我們還可以搜尋到很多有用的東西,不過是細節,要通過資訊收集慢慢分析、擴大、進行入侵。

  這些我就不具體分析了.給大家個思路,大家慢慢研究好了。到這裡,這篇文章就要結束了,寫這篇文章的目的是為了引起大家的關注與重視,瞭解新的HACK手段,瞭解新的防護方法,事物都有兩面性,在當今Google盛行的時代,在充分利用google的同時.也應該看得更全面。