這款黑客專屬的最危險的搜索引擎,可能包含你的資訊!
- 2019 年 11 月 5 日
- 筆記
作者: Lateautumn4lin
來源:雲爬蟲技術研究筆記
Shodan是什麼?
Shodan是一種搜索引擎,允許用戶搜索連接互聯網的設備和明確的網站資訊,例如在特定系統上運行的軟體類型和本地匿名FTP伺服器。Shodan可以像Google一樣使用,但可以根據標籤內容索引資訊,標籤內容是伺服器發送回顯給客戶端的元數據。為了獲得最準確的結果,可以對字元串進行一系列篩選過濾,再使用Shodan搜索。總而言之,我們仍可以說,Shodan是一個搜索引擎,可用於查找網路中存在的特定設備和設備類型。
它就像一個互聯網地圖,可以讓我們看到哪個設備連接到哪個地區或特定設備上打開了哪個埠,或某個系統正在使用什麼作業系統等。而不是在特定搜索詞上找到特定內容,SHODAN旨在幫助用戶在標籤引導下有效的搜索到特定內容(桌面,伺服器,路由器,交換機等)。
Shodan怎麼使用?
Shodan從Web上的伺服器和設備中提取相關服務和埠之類的特護標籤。由於現在幾乎每個新設備都會有一個網路介面(甚至可能是家裡的冰箱),以便於遠程管理,因此我們可以訪問無數的網路伺服器,網路設備,家庭安全系統等。
了解shodan是非常重要一步,起初你可能會認為它很複雜,但是當你慢慢了解和使用它之後,你會發現shodan十分好用並且具有海量的資料儲備。
Shodan的基本原理是如下:

那Banner是什麼呢?在探測埠時數據包里存在Banner資訊
HTTP/1.1 200 OK Server: nginx/1.2.19 Date: Sat, 13 Oct 2017 16:09:24 GMT Content-Type: text/html; charset=utf-8 Content-Length: 5322 Connection: keep-alive
這是一個普通的HTTP Banner,可以從上獲知服務端使用的是1.2.19版本的nginx。Shodan的Banner處理機制比較複雜,我們這裡只需要知道探測埠是來往的數據包中包含Banner,並包含了主機的部分資訊即可!
我們首先現在官網https://www.shodan.io/註冊帳號,當然,可以直接用Google帳號登錄。

我們嘗試搜索一下『ssh』

我們可以看到,我們搜索出的結果包含伺服器國家分布、伺服器所屬組織分布等等的資訊。當然,如果像前面單純只使用關鍵字直接進行搜索,搜索結果可能不盡人意,那麼此時我們就需要使用一些特定的命令對搜索結果進行過濾,常見用的過濾命令如下所示:
hostname:搜索指定的主機或域名,例如 hostname:"google" port:搜索指定的埠或服務,例如 port:"21" country:搜索指定的國家,例如 country:"CN" city:搜索指定的城市,例如 city:"Hefei" org:搜索指定的組織或公司,例如 org:"google" isp:搜索指定的ISP供應商,例如 isp:"China Telecom" product:搜索指定的作業系統/軟體/平台,例如 product:"Apache httpd" version:搜索指定的軟體版本,例如 version:"1.6.2" geo:搜索指定的地理位置,參數為經緯度,例如 geo:"31.8639, 117.2808" before/after:搜索指定收錄時間前後的數據,格式為dd-mm-yy,例如 before:"11-11-15" net:搜索指定的IP地址或子網,例如 net:"210.45.240.0/24"
如果我們都對這些結果不感興趣,我們也可以使用Explore這個功能,這個功能類似於github trending,能夠發現最有趣的老哥們的創意。

這些只是算Shodan的基本用法,Shodan為我們提供了這麼好的數據,我們怎麼使用就得發揮各位的腦洞啦!!!
Shodan怎麼通過命令行使用?

我們現在看到了Shodan的Web介面使用,要是我們想要在做一些自動化操作不免要把關於Shodan的操作嵌入程式碼當中,所以官方體諒我們這些開發者,推出了基於Python的Shodan庫,地址是https://github.com/achillean/shodan-python.
基本使用如下:
from shodan import Shodan api = Shodan('MY API KEY') # Lookup an IP ipinfo = api.host('8.8.8.8') print(ipinfo) # Search for websites that have been "hacked" for banner in api.search_cursor('http.title:"hacked by"'): print(banner) # Get the total number of industrial control systems services on the Internet ics_services = api.count('tag:ics') print('Industrial Control Systems: {}'.format(ics_services['total']))api-key 可以通過這個網站來獲取https://account.shodan.io
Shodan有那些黑科技玩法?


終於來到大家最興奮的環節了!我整理了網上各位腦洞大開的老哥的黑科技玩法,大家可以照著嘗試一下哦,不過建議謹慎對待~~~
1
查未授權訪問的攝影機
網路上經常會有一些安全不大好的外國攝影機,而我們就能利用網路空間搜索引擎找出這些不安全的外國攝影機,而這些攝影機有時會對著人,你就會看到各種。。。。
2
查找一些奇奇怪怪的東西
咳咳,其實我很純潔,我什麼都不懂。你們懂就行啦~
3
查找被黑網站
黑網站變現的有效途徑之一就是js挖礦,我們可以查找挖礦腳本的特徵來搜索被黑網站。
總結

Shodan總體來說算是網路空間資產的搜索工具,對於我們這些小白來說就是一種黑科技的產品,但是對於網路安全的大佬來說是日常必不可少的神器,感興趣的朋友可以自己去深入了解一下,其他的諸如BinaryEdge和ZoomEye完全可以和Shodan相媲美。這三種服務雖有細微差別,但都為OSINT(網路空間搜索引擎)提供了有價值的擴展。

