js加密(七)steam登入

2022-01-29 10:30:33 字數 2465 閱讀 3217

1. url: 

2. target: 登入

3. 分析

3.1 老樣子,抓包,找js。

隨便輸入乙個帳號密碼,點選登入,看看傳送了哪些請求。

一次登入,傳送了兩次請求,第一次的請求結果是乙個json,裡面有兩個引數,是第二次請求中需要的,這個直接新增使用者名稱和乙個時間戳傳送post就可以了,不管它。看dologin。

3.2 有乙個password引數是加密的,其餘兩個看起來不是很重要。下面就對這個引數進行解密。

3.3 複製加密引數,去尋找**出現了這個引數,這裡看起來比較像。

那就打上斷點除錯,找依賴函式,變數,最終扣出可執行js**。

4. python**:

from afterwork.config import

proxies, useragent

import

requests

import

json

import

time

import

reimport

execjs

defgetmodexp(data):

res = requests.post(url='

',data=data,

headers=)

#print(res.text)

jsoninfo =json.loads(res.text)

mod = jsoninfo['

publickey_mod']

exp = jsoninfo['

publickey_exp']

return

mod, exp

defgetdata(username, donotcache):

data =

return

json.loads(json.dumps(data))

defaccountinfo():

username = '

你的使用者名稱

'pw = '

你的密碼

'donotcache = re.sub(r'

\.', '', str(time.time()))[:-4]

#print(donotcache)

#print('1577238990888')

return

username, pw, donotcache

defgetjscode():

with open(

'jscode.js

', 'r'

) as f:

jscode =f.read()

return

jscode

defgetlogindata(username, pw, donotcache):

logindata =

print

(logindata)

return

json.loads(json.dumps(logindata))

deflogin(logindata):

res = requests.post(url='

',data=logindata,

headers=)

print

(res.text)

return

defmainfun():

username, pw, donotcache =accountinfo()

data =getdata(username, donotcache)

#print(type(data))

mod, exp =getmodexp(data)

jscode =getjscode()

ctx =execjs.compile(jscode)

result = ctx.call('

getpw

', pw, mod, exp)

#print(result)

logindata =getlogindata(username, result, donotcache)

#print(type(logindata))

login(logindata)

if__name__ == '

__main__':

mainfun()

結果,登入成功返回這些東西:

學習交流,勿作他用。

RSA加密登入(公鑰加密登入) 安全登入

登入 註冊 支付 基本都要用到加密方案 加密原理 後台生成rsa金鑰對,然後在登陸頁面設定rsa公鑰,提交時用公鑰加密密碼,生成的密文傳到後台,用私鑰解密,獲取密碼明文。前端運用rsa技術進行加密簡單來說分為以下幾步驟 0 4 0.md5加密 引入md5的js,然後使用var md5password...

php加密登入 PHP安全登入 密碼加密

以下是要實施安全登入的登入系統 main login.php username password checklogin.php ob start host localhost host name username root mysql username password mysql password...

bcrypt登入加密

內容來自 npm安裝bcrypt express session 在cookie中生成了特定的id,值對應的就是加密的id值。接下來,我們往伺服器傳送請求的時候,伺服器端會接收這個session id 然後去查詢使用者資訊,查詢到了則使用者登入是成功的。js驗證工具 string 規定必須是字串型別...