某安政府網(wǎng)站js逆向

如有侵權(quán),請(qǐng)聯(lián)系我刪除?


1、引言

????最近想找個(gè)網(wǎng)站練練手,突然想到朋友之前使用模擬瀏覽器爬過(guò)某安的政府網(wǎng)站的新聞發(fā)布信息,看下今天能不能把他成功逆向一下。

? ??

2、分析

? ? ?通過(guò)分析可以看出這個(gè)網(wǎng)站需要__jsl_clearance_s和__jsluid_s這兩個(gè)cookie才能正常的訪問(wèn)網(wǎng)站

? ??__jsluid_s獲取可以通過(guò)第一次訪問(wèn)鏈接由服務(wù)端返回。


? ? 然后通過(guò)第一次訪問(wèn)返回的內(nèi)容是一個(gè)js腳本代碼,我們給他美化一下

? ??

? ? ? ?

? ? ? 然后在瀏覽器的console執(zhí)行一下,本以為_(kāi)_jsl_clearance_s就弄好了

? ??????????

???????誰(shuí)知再次訪問(wèn)鏈接還是521狀態(tài)碼,再次查看一下返回的內(nèi)容

? ??? ?注:需要由第一次從服務(wù)端返回__jsluid_s和上圖js執(zhí)行后的cookie同時(shí)存在才能成功訪問(wèn)下圖body

? ? ? ?

? ? 給他美化一下,發(fā)現(xiàn)美化后有500多行代碼

? ? ? ?

? ? 到這大概就知道他那兩個(gè)cookie是怎么來(lái)的了

3、逆向js

? ? 1、第一個(gè)比較簡(jiǎn)單我就不說(shuō)了,可以通過(guò)下圖直接執(zhí)行,因?yàn)槲野l(fā)現(xiàn)他里面的語(yǔ)法和Python的語(yǔ)法差異太大了,我也懶得給他替換了就直接使用js2py執(zhí)行了

? ??????

? ? ? ? ? ?2、我們還是主要看下第二個(gè)頁(yè)面返回的東西,我們還是先看一下他的入口函數(shù)在哪里,發(fā)現(xiàn)他的入口在哪個(gè)go函數(shù)中

? ? ? ? ??????????

? ? ? ? 3、通過(guò)document關(guān)鍵字搜索發(fā)現(xiàn)他應(yīng)該是在下圖這兩個(gè)地方設(shè)置cookie的

? ??????????????

? ? ? ? 4、通過(guò)上圖大膽推測(cè)下應(yīng)該是_0x5080('0xea', 'dcAK') +'ie'拼接成cookie關(guān)鍵字來(lái)的

? ??????????

驗(yàn)證想法

? ? ? ? 5、通過(guò)在console驗(yàn)證確實(shí)是這樣生成的,那我們對(duì)這些_0x5080('0xea', 'dcAK')加密先手動(dòng)的給他替換一下,讓他更有可讀性

? ??????????

? ? ? ? 6、關(guān)鍵函數(shù)

? ??????????


4、使用Python代碼執(zhí)行

? ??????

5、注意的點(diǎn)

? ? 1、&,>>? 需要通過(guò)ctypes.c_int庫(kù)執(zhí)行

? ? 2、這次只正對(duì)sha1加密逆向,這個(gè)網(wǎng)站還有其他加密邏輯

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容