關于弱口令的思考及實戰(zhàn)演練

0x00 前言


前段時間腾务,在做mysql弱口令檢測優(yōu)化,痛苦的把mysql源碼讀了一遍躏哩。業(yè)余時間就一直在想關于弱口令的林林總總。其實很多個人信息泄露骇陈,都是由于缺乏安全意識震庭,使用12345 888888 asdfghjkl等弱密碼造成的。

今天我就用實際行動來證實一下你雌,弱口令的危害器联。

0x01 思路


海康威視等廠商旗下的設備婿崭,大多都采用了很簡單的初始密碼拨拓,而且大部分用戶也不會去修改初始密碼。
今天我們來驗證一下氓栈,能否通過弱口令來訪問這些公共設備渣磷。

首先我們需要一個引擎,來抓取暴露在互聯(lián)網(wǎng)上的在線設備的信息授瘦,而恰恰就有這么一個強大的引擎:

https://www.shodan.io 是一個檢索全球在線設備的引擎醋界。比方說輸入關鍵字“Apache”竟宋,就能檢索到世界范圍內的很多Apache主機的詳細信息。

好了形纺,利用這個引擎丘侠,我們就來做一次有趣的編程。

0x02 準備環(huán)境:


1.  操作系統(tǒng)逐样,我們首選Linux
2.  編程語言蜗字,Python3
3.  shodan網(wǎng)站引擎的python庫(以及API_KEY)

確認Python3已經安裝,然后安裝第三方shodan庫:

sudo pip3 install shodan

0x03 Shodan API 使用:


通過下面一段代碼脂新,可以發(fā)現(xiàn)這個API的使用還是很簡單的


# !/usr/bin/env python3
# -*- encoding:utf-8 -*-

'''
read the API doc, we know the format of results
{
        'total': 8669969,
        'matches': [
                {
                        'data': 'HTTP/1.0 200 OK\r\nDate: Mon, 08 Nov 2010 05:09:59 GMT\r\nSer...',
                        'hostnames': ['pl4t1n.de'],
                        'ip': 3579573318,
                        'ip_str': '89.110.147.239',
                        'os': 'FreeBSD 4.4',
                        'port': 80,
                        'timestamp': '2014-01-15T05:49:56.283713'
                },
                ...
        ]
}
'''

__author = 'zhe'

import shodan
import json
import os

MY_SHODAN_API_KEY = 'replace to your own api key'
api = shodan.Shodan(MY_SHODAN_API_KEY)


def GetRawJsonPath(key_words):
    file_path = os.path.join(os.getcwd(), key_words + '_raw.json')
    return file_path


def Search(key_words):
    try:
        # Call api to search key_words, and save results in a dict
        results = {}
        results = api.search(key_words)
        print( ('search %i matched result about %s') % (results['total'], key_words))

        # We save the results to a json file
        with open(GetRawJsonPath(key_words), 'w') as f:
            f.write(json.dumps(results))
            print(('results saved to path: %s') % GetRawJsonPath(key_words))

    except shodan.APIError as e:
        print ('Error: %s') % e




def test():
    Search('NVR Webserver')


if __name__ == '__main__':
    test()

下面就是我們運行python腳本后得到的Json文件:


json 格式的搜索結果

0x04 信息提取


打開剛剛得到的Json文件挪捕,我們發(fā)現(xiàn)詳細,但是我們只需要其中的一小部分信息争便。
所以接下來我們來提取對我們有用的信息
上代碼

def Parse(key_words):
    data = {}
    filter_data = []
    with open(GetRawJsonPath(key_words), 'r') as f:
        data = json.load(f)

    for item in data['matches']:
        elem = {}
        elem['city'] = item['location']['city']
        elem['ip'] = item['ip_str']
        elem['port'] = item['port']
        filter_data.append(elem)

    # save filter json to file
    with open(GetFilterJsonPath(key_words), 'w') as f:
        f.write(json.dumps(filter_data))
        print(('filter results saved to path: %s') % GetFilterJsonPath(key_words))

同樣级零,運行腳本后,得到結果:

[
  {
    "city": "New Rochelle",
    "ip": "72.69.197.*",
    "port": 80
  },
  {
    "city": "Baotou",
    "ip": "116.116.225.*",
    "port": 80
  },
  {
    "city": "Baotou",
    "ip": "1.31.92.*",
    "port": 80
  }
...
]

0x05 先驗證一下


這時候滞乙,弱口令就排上用場了妄讯,我們隨機驗證幾個:

Paste_Image.png

很容易就登陸進去了

Paste_Image.png
Paste_Image.png

0x06 批量驗證,篩選有效設備


現(xiàn)在就需要了解HTTP協(xié)議了酷宵,我先去惡補一下網(wǎng)絡協(xié)議>>>

這一步,我的思路是躬窜,用腳本批量構造POST請求浇垦,分別驗證每一個設備密碼是否正確(這里可以考慮使用弱口令表,來暴利破解)
但是現(xiàn)在就卡在了荣挨,如何構造正確的POST請求男韧,請求中包括用戶名和密碼信息。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末默垄,一起剝皮案震驚了整個濱河市此虑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌口锭,老刑警劉巖朦前,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鹃操,居然都是意外死亡韭寸,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門荆隘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恩伺,“玉大人,你說我怎么就攤上這事椰拒【” “怎么了凰荚?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長褒脯。 經常有香客問我便瑟,道長,這世上最難降的妖魔是什么憨颠? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任胳徽,我火速辦了婚禮,結果婚禮上爽彤,老公的妹妹穿的比我還像新娘养盗。我一直安慰自己,他們只是感情好适篙,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布往核。 她就那樣靜靜地躺著,像睡著了一般嚷节。 火紅的嫁衣襯著肌膚如雪聂儒。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天硫痰,我揣著相機與錄音衩婚,去河邊找鬼。 笑死效斑,一個胖子當著我的面吹牛非春,可吹牛的內容都是我干的。 我是一名探鬼主播缓屠,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼奇昙,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了敌完?” 一聲冷哼從身側響起储耐,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎滨溉,沒想到半個月后什湘,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡业踏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年禽炬,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片勤家。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡腹尖,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情热幔,我是刑警寧澤乐设,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站绎巨,受9級特大地震影響近尚,放射性物質發(fā)生泄漏。R本人自食惡果不足惜场勤,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一戈锻、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧和媳,春花似錦格遭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至她倘,卻和暖如春璧微,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背硬梁。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工前硫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人荧止。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓开瞭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親罩息。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理个扰,服務發(fā)現(xiàn)瓷炮,斷路器,智...
    卡卡羅2017閱讀 134,638評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,871評論 25 707
  • 一递宅、快速術語檢索 比特幣地址:(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串...
    不如假如閱讀 15,901評論 4 88
  • 有一本暢銷書叫《斷舍離》娘香,講的是把家里不常用的東西扔掉。有好多人愿意囤積貨物办龄,特別是一些老人烘绽,總不舍得扔東西。我認...
    臧叔閱讀 657評論 0 3
  • 七夕剛過俐填,當所有人還沉浸在那天屬于自己的浪漫時刻的時候安接,我們科室的所有同事卻被重癥監(jiān)護室那一大束刺眼的紅色玫瑰花感...
    那時那刻閱讀 288評論 0 1