Hi猴誊,大家好;我是叮當貓侮措,工作緣故許久未更新博客啦懈叹;今天給大家?guī)砹艘稽c小福利喲;猜猜是啥分扎?咳咳澄成,看標題就知道啦吧,沒錯我今天就為了揭開拼夕夕旗下某站的JS加密算法,特地抽空錄制了一套視頻墨状,獻給大家卫漫;本套視頻主要講解如何從調(diào)試開始到最終完成整個算法破解工作;在此期間歉胶,我將教大家如何通過使用Chrome開發(fā)者工具快速定位到函數(shù)調(diào)用入口,掌握了調(diào)試后將繼續(xù)引領(lǐng)大家進入js代碼翻譯過程 – 將混淆過的字段翻譯成我們可讀的代碼巴粪;
就在剛剛通今,我錄制完視頻后,我聽到了一個很意外的消息肛根;據(jù)說拼夕夕被某灰(色)產(chǎn)羊(毛)業(yè)給強奸了辫塌;擼到了好多好多的無門坎X券,聽到這個消息我的第一反應是派哲,千百萬只草泥馬在奔跑著臼氨,據(jù)說有人拿它充了幾十萬話費?只想說哥們芭届,你也是厲害了储矩,啊哈哈,不過這好像沒我們鳥事褂乍;也跟本文無關(guān)持隧,就略過吧…….
在通過關(guān)鍵詞搜索后我們通過抓包就可以很清晰的看到請求的參數(shù)里包含了加密的算法。
咋看之下這個請求并沒有什么太大的難度逃片;僅僅只有四個字段屡拨,我們只需模擬完成這四個字段即可完成整個商品搜索請求,但問題來了褥实,后面三個參數(shù)我們是可以很簡單就能完成呀狼;第一個隨機生成的加密串又是怎么來的呢?很顯然它是經(jīng)過了JS的加密運算而成的损离;那么既然知道是加密生成的哥艇,勢必就要解密來還原它的算法了。
按F12打開Chrome的開發(fā)者工具通過搜索關(guān)鍵詞:crawlerInfo 找出相關(guān)的文件僻澎,然后在相關(guān)的文件中再次搜索該關(guān)鍵詞她奥;從下圖可以看到共匹配了兩條數(shù)據(jù);那么為了方便我們調(diào)試(Debug)則應在旁邊打上斷點怎棱;然后鍵入關(guān)鍵詞點擊搜索并觸發(fā)該斷點哩俭。
在經(jīng)過漫長的調(diào)試之后最終我們會來到一個叫做 k()的函數(shù)之中;這個函數(shù)便是該加密算法的入口函數(shù)拳恋,我們只需依照著葫蘆畫瓢的方式將JS的加密方法還原出來即可完成破解凡资;詳細的破解過程請前往觀看視頻;完整的解密方案請點擊前往我的博客獲取隙赁;
視頻教程觀看入口:http://list.youku.com/albumlist/show/id_52081027.html