網路偵察技術(一)搜尋引擎資訊收集

不愛學習的Shirley發表於2021-04-16

    簡單地說,網路偵察掃描的目的就是:瞭解你的獵物!只有充分了解了攻擊目標,才能更加有針對性地對其進行攻擊。

    網路偵察掃描主要分為以下3步:

  • 踩點——通過網路搜尋獲取目標公開資訊;
  • 掃描——通過掃描技術獲取目標系統根據具體的資訊;
  • 查點——根據掃描結果進一步對目標進行鍼對性檢測。

    根據許多網路攻擊者的偵察經驗,一般需要偵察以下內容:

    (1)靜態資訊:

         ① 主機或網路的IP地址(段)、名字和域。

         ② 各種聯絡資訊,包括姓名、郵件地址、地理位置和電話號碼等。

         ③ DNS、郵件和Web等伺服器。

         ④ 目標機構的業務資訊。

         ⑤ 網路拓補結構。

    (2)動態資訊:

         ① 目標主機是否開機。

         ② 目標主機是否安裝了某種你感興趣的軟體。

         ③ 目標主機安裝的是什麼作業系統。

         ④ 目標主機上是否有某種安全漏洞。

    (3)滿足指定條件(如某地域、某廠家)的聯網主機或裝置。

    (4)其他一切對網路攻擊產生作用的相關資訊。

 

    網路偵察方法:

         ① 搜尋引擎

         ② whois資料庫資訊:資訊寶庫

         ③ 域名系統

         ④ 網路拓撲

         ⑤ 社交網路

         ⑥ 其它偵察手段

    

    1. 搜尋引擎資訊蒐集

        當前提供Web搜尋業務的主要公司有國外的Google、Yahoo,國內著名的百度公司等。下面主要是以百度為例來簡單介紹如何使用搜尋引擎來進行網路偵察。

        通常人們使用百度搜尋東西時,都只是簡單的輸入檢索關鍵詞,然後進行搜尋。但其實百度檢索裡面有很多可以幫助我們提高檢索效率的命令和操作符,下面將對其進行簡單介紹。

(1)index命令

    在關鍵詞輸入框中輸入 index of mp3 ,按【Enter】鍵或者單擊“百度一下”按鈕進行搜尋,就可以得到mp3網站的資源列表,單擊開啟它,就可以看到所有相關資源。

(2)intitle:[檢索條件]

    用途:用於檢索標題中含有特定文字的頁面。

    在查詢那些將Web頁面配置成可顯示不同檔案系統目錄的索引時非常有用,可能返回站點管理員意外洩露的敏感檔案和配置資料。

(3)site:[域]

    用途:返回與特定域相關的檢索結果。

    域的層次沒有限制,可以是具體的域,如www.csdn.net,也可以是.edu、.org等頂級域。

    例如,想要檢索csdn.net域的Web站點中所有包含“人臉識別”的結果,那麼可以輸入“site:csdn.net 人臉識別”,檢索結果如下圖所示。

 

(4)filetype:[檔案字尾]

    用途:檢索特定型別的檔案,比如檢索Word文件,Excel表單等。

    例如,想要檢索csdn.net域的Web站點中所有pdf檔案,那麼可以輸入“filetype:pdf site:csdn.net”,檢索結果如下圖所示。

(5)inurl:[關鍵詞]

    用途:限定在URL中搜尋。

    通常情況,任何網站的URL都不是隨意設定的。很多時候,URL連結和網頁內容密切相關,可以利用這種相關性來縮小範圍,快速、準確得找到所需要的資訊。

    例如,輸入“cnkikw inurl:sanzhiyu.php”即可查詢URL中有字串“sanzhiyu.php”且網頁正文中包含字串"cnkikw"的所有頁面。

(6)link:[Web頁面]

    用途:給出和指定Web頁面相連結的站點。

    例如,輸入"link:www.csdn.net"即可檢視和www.csdn.net相連結的所有站點。

    威脅:可能洩露目標站點的業務關係。

(7)related:[站點]

    用途:顯示與特定的檢索頁面類似的Web頁面。

    例如,related:www.csdn.net。

(8)cache:[頁面]

    用途:顯示來自於Baidu快照的頁面內容,對於查詢最近被移出或當前不可用的頁面時非常有用。

    例如,輸入"cache:www.csdn.net"即可查詢www.csdn.net中最近被百度bot抓取的頁面。

(9)刪除(-)

    用途:用於過濾檢索條件。

    刪除操作符在偵察過程中被用來精煉檢索結果,是相當有用的百度功能。

    例如,輸入“bumblebee -insect”即可檢索是bumblebee但是不是insect的詞條,這樣就可以檢索那些以“大黃蜂”為外號的資訊,並且儘量過濾掉與大黃蜂這種昆蟲有關的資訊。

(10)Plus(+)

    用途:告訴Baidu不應該把某個詞過濾掉。(!注意:不是告訴Baidu所有的結果都應該包含某個條件)

    例如,site:www.csdn.net +how +the

(11)並行(|)

    用途:用來表達多個條件中的任何一個。

    例如,如果要查詢“圖片”或“寫真”相關資料,無須分兩次查詢,只需要輸入“圖片|寫真”搜尋即可。百度會提供與“|”前後任何字詞相關的資料,並把最相關的網頁排在前列。

 

    百度、谷歌等搜尋引擎提供的是包含指定關鍵字(詞)的網站(URL),如果要在因特網上搜尋主機、伺服器、攝像頭、印表機和路由器等裝置,則需要使用專用的搜尋引擎,典型的代表有:

        Shodan,網址:https://www.shodan.io

        Zoomeye,網址:https://www.zoomeye.org

     下面主要對Shodan進行簡單的介紹。

    Shodan的搜尋物件

    Shodan的搜尋物件:聯網裝置,特別是很多與工業生產和民眾日程生活密切相關的聯網裝置。可以分為:網路裝置、網路服務、網路系統 和 banner資訊關鍵字 4類。

  • 網路裝置:包含網路連線裝置和網路應用裝置。其中,網路連線裝置指的是將網路各個部分連線成一個整體的裝置;網路應用裝置是指藉助因特網提供的服務。
  • 網路服務:指網路提供的各種服務,如FTP、HTTP和Apache等。
  • 網路系統:包含作業系統和工業生產領域廣泛使用的各類控制系統。
  • banner關鍵字類搜尋物件是指使用者分析Shodan搜尋返回的banner後,將其中的關鍵字作為搜尋物件,如弱口令、匿名登入、管理員和HTTP報頭等。

    Shodan搜尋的基本輸入格式

    Shodan搜尋的基本輸入格式:A B C filter:value filter:value filter:value

       A、B、C為搜尋物件,如網路裝置netcam、網路伺服器IIS。 Filter為Shodan搜尋過濾詞,常見的有地理位置、時間、網路服務三類。 Value為filter對應的值,若filter是埠,則value的值對應為Shodan支援搜尋的埠值。 需要注意的是filter與value之間的冒號後面沒有空格。
       搜尋物件和過濾詞均可預設。在預設搜尋物件情況下,Shodan搜尋滿足過濾條件的各類網路裝置、主機和伺服器。在預設過濾詞情況下,Shodan直接在其資料庫內搜尋指定物件。

 

參考資料:

[1] 網路攻防原理與技術 第2版

相關資料:

[1] shodan學習筆記 https://blog.csdn.net/TimoTolkki1966/article/details/81233710 

[2] shodan新手入坑指南 https://www.cnblogs.com/student-programmer/p/6732873.html

[3] shodan在滲透測試及漏洞挖掘中的一些用法 https://www.cnblogs.com/miaodaren/p/7904484.html

 

    一些碎碎念:

    最近手頭上有很多事情導致部落格好久沒更新了,但還是打算好好將學習的東西記錄下來,不出意外的話,下一篇應該會更新shodan的學習筆記。之後將網路偵察技術包含的幾個方法步驟都給寫完。其實還有幾個最近做的實驗想更新到部落格的,但最近真的太太太太太忙啦,希望能抽點時間把它更到部落格裡吧(#^.^#)。最近還有在弄PYNQ這塊板子,這個板子的特點就是可以用python來跑,但是這幾天卡住了,還不知道能不能弄出來qwq。

相關文章