<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Shodan — 互聯(lián)網(wǎng)上最可怕的搜索引擎

          共 3115字,需瀏覽 7分鐘

           ·

          2022-05-29 08:09

          二條:來挑戰(zhàn)下這 10 個 Python 問題!
          三條:Python 關于字典的操作,看這個就夠了!

          ↑?關注 + 星標?,每天學Python新技能

          后臺回復【大禮包】送你Python自學大禮包

          Shodan 在百度百科里被給出了這么一句話介紹:Shodan是互聯(lián)網(wǎng)上最可怕的搜索引擎。

          為什么呢?與谷歌、百度等搜索引擎爬取網(wǎng)頁信息不同,Shodan爬取的是互聯(lián)網(wǎng)上所有設備的IP地址及其端口號。

          而隨著智能家電的普及,家家戶戶都有許多電器連接到互聯(lián)網(wǎng),這些設備存在被入侵的可能性,這是十分危險的。

          說了這么多,給大家體驗下shodan,讓你們有更切身的理解。打開 shodan.io,在搜索框輸入?Hikvision-Webs?:


          你會搜素到這個品牌的攝像頭設備遍及全球的IP及其暴露的端口號:



          可以看到,這臺機器暴露了17、80、111、995、3128、5000、6000、20547端口,黑客可以根據(jù)這些端口進行針對性的攻擊。

          不過也不需要過于擔心,如果你的服務不存在漏洞,一般是無法攻入的。但有些端口號會暴露攝像頭的web管理端,如下:



          那么黑客可能可以用暴力破解的方式,強行進入攝像頭后臺管理端,獲取到實時的錄像。

          謹記這會侵犯別人的隱私權,是違法的行為,我們是遵紀守法的好公民所以知道它的原理和危害就足夠。我們的目的是運用技術保護好個人隱私,如非必要不將攝像頭接入互聯(lián)網(wǎng),一定要接入的話,不能使用容易被破解的弱口令。

          Shodan Web端非常好用,但如果我們有從 Python 搜索的需求怎么辦?

          沒關系,Shodan 官方也提供了 Python SDK 包,下面就來講講這個 SDK 包的使用。

          1.準備



          開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南?進行安裝。

          (可選1)?如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝 Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了 Python 和 pip .

          (可選2)?此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點:Python 編程的最好搭檔—VSCode 詳細指南

          請選擇以下任一種方式輸入命令安裝依賴
          1. Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。
          2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
          3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.

          pip install shodan


          2.注冊賬號獲取API



          使用 Shodan 必須注冊賬號,注冊網(wǎng)址:https://account.shodan.io/register


          輸入完相關信息,點擊 CREATE 會跳轉(zhuǎn)到個人賬戶頁:


          此時 API Key 會顯示你的API秘鑰,請記錄這個秘鑰,后續(xù)會使用到這個秘鑰去請求接口。

          3.Shodan 基本調(diào)用



          Shodan 本質(zhì)上就是一個搜索引擎,你只需要輸入搜索的關鍵詞:

          # 公眾號:Python 實用寶典
          # 2021-05-04
          from?shodan import?Shodan

          api = Shodan('你的API KEY')

          def?search_shodan(keyword):
          ????# 調(diào)用搜索接口
          ????result = api.search(keyword)

          ????# 顯示所有IP
          ????for?service in?result['matches']:
          ????????????print(service['ip_str'])

          search_shodan("Hikvision-Webs")


          結(jié)果如下:


          可惜的是,普通API只能像這樣搜索關鍵字,無法使用過濾條件如:?Hikvision-Webs country:"US"?搜索美國境內(nèi)的所有 Hikvision 網(wǎng)站管理端。

          如果你想要使用過濾條件,Shodan 需要你升級API權限:

          挺貴的,不過還好是一次性支付,永久使用。


          4. Shodan 高級使用



          Shodan 的用處當然不僅僅是在黑客攻防中,它還能用于統(tǒng)計。如果你想要了解哪些國家的使用這款攝像頭的數(shù)量最多,可以使用 Facets 特性。

          # 公眾號:Python 實用寶典
          # 2021-05-04
          from?shodan import?Shodan

          api = Shodan('你的API KEY')
          def?try_facets(query):
          ????FACETS = [
          ????????'org',
          ????????'domain',
          ????????'port',
          ????????'asn',
          ????????('country', 3),
          ????]

          ????FACET_TITLES = {
          ????????'org': 'Top 5 Organizations',
          ????????'domain': 'Top 5 Domains',
          ????????'port': 'Top 5 Ports',
          ????????'asn': 'Top 5 Autonomous Systems',
          ????????'country': 'Top 3 Countries',
          ????}

          ????try:
          ????????# 使用 count() 方法可以不需要升級API,且比 search 方法更快。
          ????????result = api.count(query, facets=FACETS)

          ????????print('Shodan Summary Information')
          ????????print('Query: %s'?% query)
          ????????print('Total Results: %s\n'?% result['total'])

          ????????# 顯示每個要素的摘要
          ????????for?facet in?result['facets']:
          ????????????print(FACET_TITLES[facet])

          ????????????for?term in?result['facets'][facet]:
          ????????????????print('%s: %s'?% (term['value'], term['count']))

          ????except?Exception as?e:
          ????????print('Error: %s'?% e)

          try_facets("Hikvision-Webs")


          得到結(jié)果如下:


          從 Top 3 Countries 中可以看到,這款攝像頭使用數(shù)量排名前三的國家分別是:美國、日本和德國。

          沒想到吧,Shodan 居然還能用于產(chǎn)品分析。同樣地原理,如果你把關鍵詞改為?apache?,你可以知道目前哪些國家使用apache服務器數(shù)量最多,最普遍被使用的版本號是什么。

          簡而言之,Shodan 是一個非常強大的搜索引擎,它在好人手里,能被發(fā)揮出巨大的潛能。如果 Shodan 落入壞人之手的話,那真是一個可怕的東西。

          為了避免受到不必要的攻擊,請大家及時檢查所有聯(lián)網(wǎng)設備的管理端的密碼,如果有使用默認密碼及弱口令,立即進行密碼的更改,以保證服務的安全。

          本文所有源代碼可在下方公眾號(非本號)后臺回復:shodan 下載。

          我們的文章到此就結(jié)束啦,如果你喜歡今天的Python 實戰(zhàn)教程,請持續(xù)關注Python實用寶典。


          1. 秋招拿了7個offer,分享一些反思和經(jīng)驗

          2. 9個很酷的CMD命令,你要知道!


          瀏覽 88
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  在线a√视频 | 青青草先锋资源 | 国产高清码 在线观看 | 欧美亚洲日韩中文字幕 | 五月av |