日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python解密_python在加密解密中的例子(尽可能去深挖)

發布時間:2023/12/19 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python解密_python在加密解密中的例子(尽可能去深挖) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

在實際測試中,我們一遇到登錄處用戶名和密碼都加密的例子,我們就沒辦法進行深入啦。就像下面的例子,其實加密只是增加我們的攻擊成本,只要還是客戶端,在提交服務器之前,所有的加密基本有跡可循,直接看本地js是如何操作的即可。

在本文中,我會分析問題,然后用python來解決問題。這樣,更貼合實際。

#下面是post提交的參數,可以看到,其中兩處關鍵的地方,是加密過后的。

ZXh0Oz47bDzluJDlj7fmiJblr4bnoIHkuI3mraPnoa7vvIHor7fph43mlrDovpPlhaXjgII7Pj47Pjs7Pjs%2BPjs%2BPjs%2BPjs%2BMhWtdwzKgY7W7gTey2P%2BJbjqPKw%3D&pcInfo=Mozilla%2F5.0+%28Windows+NT+10.0%3B+WOW64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F70.0.3538.102+Safari%2F537.36undefined5.0+%28Windows+NT+10.0%3B+WOW64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F70.0.3538.102+Safari%2F537.36+SN%3ANULL

&typeName=%D1%A7%C9%FA

&dsdsdsdsdxcxdfgfg=8F430408BF32ABBBBF2A49C66FEDB4

&fgfggfdgtyuuyyuuckjg=0300D447DB23BC0305C35A9DECD3C4

&Sel_Type=STU

&txt_asmcdefsddsd=admin

&txt_pewerwedsdfsdff=

&txt_sdertfgsadscxcadsads=

1.檢查本地js

image.png

這是我通過burp抓包后的結果,個人習慣在burp中看頁面信息,方便一遍看一遍測試。

可以看到圖中的js信息,我們把它js格式化一下,

具體網站是:js代碼美化

function chkpwd(obj) {

if (obj.value != '') {

#這里是對dsdsdsdsdxcxdfgfg這個參數進行加密

var s = md5(document.all.txt_asmcdefsddsd.value + md5(obj.value).substring(0, 30).toUpperCase() + '11238').substring(0, 30).toUpperCase();

document.all.dsdsdsdsdxcxdfgfg.value = s;

} else {

document.all.dsdsdsdsdxcxdfgfg.value = obj.value;

}

}

function chkyzm(obj) {

if (obj.value != '') {

#這里是對fgfggfdgtyuuyyuuckjg參數加密

var s = md5(md5(obj.value.toUpperCase()).substring(0, 30).toUpperCase() + '11238').substring(0, 30).toUpperCase();

document.all.fgfggfdgtyuuyyuuckjg.value = s;

} else {

document.all.fgfggfdgtyuuyyuuckjg.value = obj.value.toUpperCase();

}

}

chkpwd 密碼加密方式

md5(用戶名+md5(密碼)的前30位并且字母全大寫+'11238')的前30為字母大寫

chkyzm 驗證碼加密方式

md5(md5(驗證碼大寫)的前30位大寫字母+'11238')的前30位大寫字母

可以看到,在我們試圖去加密一個隱私時,估計也會采取這個方法,

但是我們會把我們怎么加密的去告訴公開嗎?

其實廠家這樣做的只是增加了攻擊成本,但是并未實際保護。

2.python實現加密

其實就是我們用上面的加密方式去輸出

//upper()是把前面字母全大寫,其他就是md5一個知識點

#coding=utf-8

import hashlib

oj = hashlib.md5()

oj.update('admin')

str2 = '123456'+oj.hexdigest().upper()[0:30]+'11238'

oj.update(str2)

print oj.hexdigest().upper()[0:30]

//這里只是一條信息的加密方式,然后我們結合到字典來生成md5后的密碼字典

with open('pass_md5.txt','a+') as fi:

with open('pass.txt','r') as f:

for i in f.readlines():

oj = hashlib.md5()

oj.update(i[:-1])

str2 = '123456'+oj.hexdigest().upper()[0:30]+'11238'

oj = hashlib.md5()

oj.update(str2)

fi.write(oj.hexdigest().upper()[0:30])

fi.write('\n')

# print oj.hexdigest().upper()[0:30]

ok,我們這里把生成的md5字典,結合burp就可以進行爆破啦。

不過可惜的是,驗證碼在參數驗證中,是驗證的,錯后就會一直報驗證碼錯誤。

總結

日后會常常更新,人的憤怒都是對自己無能的憤怒,希望自己慢慢去做出一些改變。加油,挖洞,盡可能的去挖洞。

總結

以上是生活随笔為你收集整理的python解密_python在加密解密中的例子(尽可能去深挖)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。