<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          送書(shū)|逆向系列-你一定要懂的MD5加密

          共 3095字,需瀏覽 7分鐘

           ·

          2021-12-10 13:53


          逆向的步驟

          逆向的步驟主要包含以下幾點(diǎn):

          • 抓包

            抓包的過(guò)程其實(shí)很簡(jiǎn)單,在學(xué)爬蟲(chóng)入門(mén)的時(shí)候,想必這是每一個(gè)同學(xué)都必學(xué)的一個(gè)階段。打開(kāi)開(kāi)發(fā)者調(diào)試工具,刷新頁(yè)面,即可在network面板查看到加載出來(lái)的數(shù)據(jù)包。

          • 調(diào)試

            當(dāng)找到目標(biāo)數(shù)據(jù)包時(shí),根據(jù)目標(biāo)數(shù)據(jù)包form data中的關(guān)鍵字參數(shù)進(jìn)行全局查找,便基本上可以查找到目標(biāo)參數(shù)所在的js文件,通過(guò)斷點(diǎn)的方式即可查找到目標(biāo)值。注意:這僅僅只是針對(duì)大多數(shù)網(wǎng)站的方式。

          • 扣取js

            當(dāng)找到目標(biāo)參數(shù)的值的生成方式時(shí),便需要通過(guò)方法棧的跟蹤找到目標(biāo)參數(shù)生成值的方法即可,并將js代碼復(fù)制出來(lái)并運(yùn)行代碼即可。

          • 改寫(xiě)js

            有時(shí)候,扣去下來(lái)的js代碼存在不規(guī)范,需要進(jìn)行簡(jiǎn)單的修改。這一點(diǎn)需要各位同學(xué)熟悉js的代碼。

          • 本地運(yùn)行代碼

            當(dāng)做完上述的步驟之后,便可以將代碼復(fù)制出來(lái)在本地運(yùn)行出結(jié)果與已知結(jié)果相同即可。

          常見(jiàn)的加密方法

          MD系列

          MD系列中有三種加密方式:MD5、MD4、MD2。

          關(guān)于MD系列中重點(diǎn)講解的內(nèi)容就是MD5,不論是多長(zhǎng)的字符串均能加密成32位或16位字符。MD5編碼是由數(shù)字與字母組成,因此看到位數(shù)以及字母組成形式的字符可以迅速判斷可能是MD5編碼。

          MD5編碼具有不可逆的特點(diǎn),明文可以被加密成密文,但是無(wú)法根據(jù)密文以及加密方式反推明文,極大的保證了安全性。但是目前有不少在線解密MD5的網(wǎng)站,它是怎么樣做的呢?

          其實(shí)很簡(jiǎn)單,它將常見(jiàn)的明文加密成MD5密文的形式,將所得結(jié)果保存起來(lái),當(dāng)需要查詢的時(shí)候進(jìn)行匹配即可。其實(shí)這種方法就類(lèi)似于暴力破解。

          個(gè)人經(jīng)驗(yàn)之談

          關(guān)于MD5的加密,我說(shuō)一下個(gè)人的經(jīng)驗(yàn)一般來(lái)說(shuō)它會(huì)在賬號(hào)與密碼登陸的時(shí)候動(dòng)手腳。(對(duì)于一部分網(wǎng)站)

          我們?cè)谳斎朊艽a的時(shí)候會(huì)采用123456,方便我們記憶。

          為什么這樣說(shuō)呢?

          因?yàn)?23456所對(duì)應(yīng)的16位和32位MD5字符串分別是:

          49ba59abbe56e057 #16位
          e10adc3949ba59abbe56e057f20f883e # 32位

          這一點(diǎn)我們需要熟記,123456的16位密文是49開(kāi)頭,而32位123456的密文是e10開(kāi)頭。當(dāng)在數(shù)據(jù)包中發(fā)現(xiàn)此類(lèi)信息是即可判斷。

          另一點(diǎn)就是程序員一般都不會(huì)沒(méi)事找事干。加密函數(shù)與加密參數(shù)都是放在同一個(gè)js文件中,如果實(shí)在是找不到也沒(méi)有關(guān)系,可以考慮采用方法棧的跟蹤進(jìn)行查找。

          今日網(wǎng)站

          aHR0cHM6Ly93d3cuc29odS5jb20v

          本次網(wǎng)站主要是考慮是如何破解登陸上的MD5加密,和開(kāi)始所寫(xiě)的內(nèi)容相同,一定要按照逆向的步驟進(jìn)行操作。

          首先先進(jìn)行抓包操作:

          如上圖所示,我輸入的密碼是123456,它也給我通過(guò),只是點(diǎn)擊登陸的時(shí)候會(huì)顯示密碼或賬號(hào)錯(cuò)誤。有些網(wǎng)站是不會(huì)通過(guò)123456這種密碼的,那么如果不通過(guò)的話,就要考慮換一個(gè)復(fù)雜一點(diǎn)的即可。

          大家來(lái)看一下,這是不是就是我們要查找的數(shù)據(jù)包呀?

          很明顯,當(dāng)我們看到password的值時(shí)是否就能聯(lián)想到剛剛所描述的加密方式的特點(diǎn)呢?相信各位同學(xué)都已經(jīng)心中有數(shù)了吧!

          form data里面的參數(shù)都是我們可以進(jìn)行搜索的內(nèi)容,比如說(shuō):userid、password、persistentCookie等等,或者是最上方的url里面的值也有可能是我們要進(jìn)行全局搜索的內(nèi)容哦。

          為了節(jié)省時(shí)間,我們就直接對(duì)password進(jìn)行全局搜索。

          經(jīng)過(guò)搜索之后,我們從圖中可以發(fā)現(xiàn),出現(xiàn)的結(jié)果還是蠻多的。但是大家有沒(méi)有想過(guò)一個(gè)問(wèn)題,那就是MD5加密的值是怎么樣傳遞給password的呢?一般來(lái)說(shuō)是不是對(duì)象.password = xxx這樣的形式來(lái)傳遞的呢?因此搜索方式可以修改為password=:

          在password的后面我沒(méi)有加上空格,因?yàn)楝F(xiàn)在所搜索的內(nèi)容是沒(méi)有經(jīng)過(guò)格式化的,如果格式化代碼之后,那么在password的后面就必須要加上空格了。(這一點(diǎn)要注意

          從上圖可以看出,所搜結(jié)果又被過(guò)濾掉了很多,只剩下其中一個(gè)了,這正合我意。

          當(dāng)進(jìn)入這個(gè)js文件之后,再將password搜索一遍,可以看到password的結(jié)果有4個(gè)。

          接下來(lái)便在此行打上斷點(diǎn),來(lái)跟蹤加密函數(shù)。從上面的圖中可以發(fā)現(xiàn)它是通過(guò)utils對(duì)象生成的加密參數(shù)。

          打上斷點(diǎn)之后,可以發(fā)現(xiàn)這個(gè)確實(shí)是我們需要查找的內(nèi)容,經(jīng)過(guò)上面的分析,接下來(lái)便要查找utils關(guān)鍵字。

          經(jīng)過(guò)搜索發(fā)現(xiàn),在當(dāng)前的js代碼中確實(shí)是存在utils關(guān)鍵字,看上去也是一個(gè)對(duì)象,那這就剛剛好驗(yàn)證了我們剛才所描述的內(nèi)容了。

          在這里也分享一下我扣取js代碼的經(jīng)驗(yàn):

          可以先將JS代碼全部復(fù)制下來(lái)到本地,因?yàn)樵跒g覽器中括號(hào)無(wú)法將成對(duì)展現(xiàn),但是在本地文件中是可以成對(duì)出現(xiàn),方便扣取的時(shí)候,不會(huì)少了括號(hào)或者是代碼而報(bào)錯(cuò)。

          將utils代碼扣去下來(lái)之后,便將其進(jìn)行運(yùn)行出結(jié)果即可。

          至此,關(guān)于MD5的加密逆向就講解到這里了。

          更多精彩內(nèi)容,期待下次再見(jiàn)!??!



          送書(shū)


          本周送上這本翹首以待的《Python 3網(wǎng)絡(luò)爬蟲(chóng)開(kāi)發(fā)實(shí)戰(zhàn)(第2版)》!相比第一版這本書(shū)內(nèi)容更全面,章節(jié)設(shè)置更易讀者學(xué)習(xí)。

          本書(shū)介紹了如何利用 Python 3 開(kāi)發(fā)網(wǎng)絡(luò)爬蟲(chóng)。本書(shū)相比于第 1 版,作者為每個(gè)知識(shí)點(diǎn)的實(shí)戰(zhàn)項(xiàng)目配備了針對(duì)性的練習(xí)平臺(tái),避免了案例過(guò)期的問(wèn)題。另外,主要增加了異步爬蟲(chóng)、JavaScript 逆向、App 逆向、頁(yè)面智能解析、深度學(xué)習(xí)識(shí)別驗(yàn)證碼、Kubernetes 運(yùn)維及部署等知識(shí)點(diǎn),同時(shí)也對(duì)各個(gè)爬蟲(chóng)知識(shí)點(diǎn)涉及的請(qǐng)求、存儲(chǔ)、解析、測(cè)試等工具都進(jìn)行了豐富和更新。


          公眾號(hào)回復(fù):送書(shū) ,參與抽獎(jiǎng)(共3本)

          點(diǎn)擊下方回復(fù):送書(shū)  即可!



          大家如果有什么建議,歡迎掃一掃二維碼私聊小編~
          回復(fù):加群 可加入Python技術(shù)交流群



          瀏覽 75
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩黄色视频频在线播放 | 黄色AV小说 | 一级特黄录像免费播放下载软件 | 成人视频一区二区 | 北条麻妃人妻中文无码 |