
這是一篇亞馬遜技術(shù)員的福音文章!
亞馬遜涉及的二次開發(fā)是很多程序員的第二個(gè)飯碗,但是亞馬遜的開發(fā)人員也不是蓋的,要攻破他們緊密設(shè)計(jì)出來的東西可不是唾手可得的,想必騷年們必須經(jīng)歷九九八十一難才能取得最后的正經(jīng)。下面我們一起來揭開他的神秘面紗吧。
什么是metadata1?
這個(gè)metadata1,實(shí)際是前端采集的很多形為數(shù)據(jù),這些數(shù)據(jù)組成一個(gè)很大的object,序列化成string后再加密,最終base64編碼得到,大致有以下數(shù)據(jù):
1.鼠標(biāo)點(diǎn)擊數(shù)據(jù):點(diǎn)擊次數(shù),點(diǎn)擊坐標(biāo)、點(diǎn)擊間隔等;
2. 鍵盤按鍵數(shù)據(jù):按鍵次數(shù),按鍵間隔等;
3. 頁(yè)面腳本數(shù)據(jù):動(dòng)態(tài)加載腳本列表、靜態(tài)腳本內(nèi)容塊hash等;
4. 表單INPUT相關(guān):內(nèi)容hash等;
5. 瀏覽器信息:userAgent、location、引用頁(yè)等;
6. 瀏覽器兼容性:css、js相關(guān)的一些兼容檢測(cè)數(shù)據(jù)等;
7. 腳本性能數(shù)據(jù):頁(yè)面相關(guān)的一些事件觸發(fā)時(shí)間;
8. localStrorage數(shù)據(jù):唯一標(biāo)識(shí)ubid;
9. GPU相關(guān)數(shù)據(jù):支持的功能擴(kuò)展等;
10.canvas數(shù)據(jù):繪制一些形狀,如果有表單,還會(huì)將表單中某些元素的內(nèi)容繪制進(jìn)去,最終計(jì)算繪制出來的圖形數(shù)據(jù)的hash值,還會(huì)統(tǒng)計(jì)圖片數(shù)據(jù)中各字節(jié)ascii碼值出現(xiàn)的次數(shù);
研究出來的結(jié)果
圖片: 這是網(wǎng)絡(luò)上一位大神幫我們開的先路,但是很多人來到這里還是懵逼的,包括我自己

還是老老實(shí)實(shí)在瀏覽器上抓個(gè)包看看吧。
這是什么鬼,都是給外星人看的嗎? 那些亞馬遜的程序員為了擾亂視聽,搞出這種東西也是惡心啊.
函數(shù),變量 都是用o0o0 ilil之類很相似的字?jǐn)_亂。他們亞馬遜搞前端的技術(shù)頭搞不好是一個(gè)變態(tài)主義者。哈哈。開個(gè)玩笑,畢竟前端的源碼是透明的,所以需要特殊的加密方式才可以保證他們的算法安全,但是他們能想出這種方式的加密也是頭腦風(fēng)暴了,給破解他們的人狠狠加了一道高墻。

不管三七二十一了,一定要給他破譯出來。 功夫不負(fù)有心人,經(jīng)過九牛二虎之力終于破譯了一部分了。累成狗,最終翻譯出來是這樣的。如下圖,代碼漂亮許多了吧。但是6000多行代碼,,啊。 如果沒有耐心的人 ,真的會(huì)瘋掉。

這一步全部完成后 ,需要開始慢慢了解上面大神所指引的那些相關(guān)的字段在破譯文件里的蛛絲馬跡了。其他都沒有什么難點(diǎn),最重要的是 canvas畫圖, 這個(gè)是需要你重新部署一個(gè)canvas環(huán)境,亞馬遜把賬號(hào)規(guī)則加入到canvas畫畫,最后形成一張圖片發(fā)送到他們后臺(tái)進(jìn)行驗(yàn)證。
研究到最后 發(fā)現(xiàn)生成后的圖片是這樣子的,好惡心,什么亂七八糟的。搞不好這個(gè)圖片可以給畫家們靈感還不一定,像什么抽象畫啊 ,又或者是什么后印象主義的什么鬼吧。哈哈,反正就很藝術(shù)。
其他的數(shù)據(jù)都是根據(jù)自己在后臺(tái)隨機(jī)就ok 了。什么鼠標(biāo),鍵盤,系統(tǒng)時(shí)間 ,瀏覽器之類一大堆。最后經(jīng)過千辛萬苦終于把metadata1的算法給生成出來了。 中間還涉及到算法計(jì)算后的加密,總之出來的結(jié)果是這樣的,應(yīng)該是對(duì)的吧。
1.鼠標(biāo)點(diǎn)擊數(shù)據(jù):點(diǎn)擊次數(shù),點(diǎn)擊坐標(biāo)、點(diǎn)擊間隔等;
2. 鍵盤按鍵數(shù)據(jù):按鍵次數(shù),按鍵間隔等;
3. 頁(yè)面腳本數(shù)據(jù):動(dòng)態(tài)加載腳本列表、靜態(tài)腳本內(nèi)容塊hash等;
4. 表單INPUT相關(guān):內(nèi)容hash等;
5. 瀏覽器信息:userAgent、location、引用頁(yè)等;
6. 瀏覽器兼容性:css、js相關(guān)的一些兼容檢測(cè)數(shù)據(jù)等;
7. 腳本性能數(shù)據(jù):頁(yè)面相關(guān)的一些事件觸發(fā)時(shí)間;
8. localStrorage數(shù)據(jù):唯一標(biāo)識(shí)ubid;
9. GPU相關(guān)數(shù)據(jù):支持的功能擴(kuò)展等;
這部分?jǐn)?shù)據(jù)直接在合理的區(qū)間內(nèi)隨機(jī)生成也寫死固定值就好了。
來到關(guān)鍵的一步就是把整理的數(shù)據(jù)post到亞馬遜了。
經(jīng)過抓包后可以看到需要提交這些數(shù)據(jù)

經(jīng)過整理的后的post數(shù)據(jù)提交后又發(fā)生問題了,真的是氣死人了。居然還出現(xiàn)驗(yàn)證碼,這不是要斷了我們的后路嗎。這是不合理的吧,如果亞馬遜大神們費(fèi)盡心思搞出這么一個(gè)算法,還需要驗(yàn)證碼,不是浪費(fèi)時(shí)間嗎? 還不如一開始就直接驗(yàn)證碼,,經(jīng)過一番的頭腦風(fēng)暴,還是想不出解決的方案。腦門里突然閃出一個(gè)邪惡的念頭,就是自動(dòng)填寫驗(yàn)證碼。。這是要把自己逼瘋的地步了。

還好本人學(xué)過一些python的機(jī)器學(xué)習(xí)的東西,就直接學(xué)以致用把,運(yùn)用到實(shí)際上來。就是不知道這個(gè)坑 到底要踩多深而已

現(xiàn)在突然發(fā)現(xiàn)自己真的是無敵了,好神奇的驗(yàn)證碼都被一波神秘的,有學(xué)習(xí)能力的代碼給折服了。

來到這里 只有一句話想說就是 :人生苦短 學(xué)編程命更短。
突破驗(yàn)證碼之后,繼續(xù)試試看如果自動(dòng)登錄了。
問題來。。。問題又來了。。。。。。有句MMP 真的要講。

please enable cookies continue 又是什么東西。
難道我的cookies有問題嗎??
我真的該放棄了。 做人真累。。
為了那點(diǎn)薄弱的工資,想想家里的老人 還有老婆 小孩 (先要有個(gè)老婆,再考慮有小孩) 。。必須硬著頭皮繼續(xù)啃下去。
檢查來了好多次cookies 都沒有問題啊。 靈光一閃,知道問題的所在了, 知道答案后,人生再一次跌入了低谷,,因?yàn)樯厦娴尿?yàn)證碼都是白搞瞎搞。。一些都是無用功。
因?yàn)轵?yàn)證碼自動(dòng)填寫后還會(huì)繼續(xù)出現(xiàn)驗(yàn)證碼, 驗(yàn)證碼出現(xiàn)后還有驗(yàn)證碼 。。。。。。無限循環(huán)。
如果手動(dòng)輸入驗(yàn)證又會(huì)跳轉(zhuǎn)到 please enable cookies continue 這個(gè)頁(yè)面。 好吧。我徹底奔潰了。 決定還是放棄。。。
做了十多年的技術(shù),不甘心。
真的不甘心。 就這么放棄了。 所以我還是選擇百度,選擇google 看看大神們能不能再給我靈感。
有一句你妹我只想脫口大罵。。 下面文字有一些高能 ,,大家注意了
當(dāng)我灰心意冷的時(shí)候 當(dāng)我放棄治療的時(shí)候, 索性輸入 www.metadata1.com 后發(fā)現(xiàn) 。。你妹。。你妹 。。
一個(gè)碩大的腦殼兒。 還有一句中文 寫著亞馬遜登錄算法api 。。。。。居然有大神把亞馬遜的算法給攻破了 然后做成接口了,反正自己做不出來,先試試看 人家是怎么弄吧。
還有詳細(xì)的文檔。本人又一次徹底膜拜了

經(jīng)過一波的騷操作后, 哈哈哈哈哈哈哈哈。。。哈哈哈哈哈哈哈。
居然真的 post成功了。。登錄了。

先別高興的太早, 在登錄的中間 還是有一個(gè)小插曲的, 因?yàn)榈谝淮蔚卿?,亞馬遜對(duì)賬號(hào)所涉及的環(huán)境也有判斷的,如果這個(gè)賬號(hào)在新的網(wǎng)線 新的電腦環(huán)境下 會(huì)出現(xiàn)需要郵箱的驗(yàn)證碼

但是這里也還涉及到一個(gè)如何去郵箱里解析出那個(gè)驗(yàn)證碼? 對(duì)大部分技術(shù)員來說 并不難, 用pop3 或者imap 等協(xié)議去獲取就ok 了。 提示一下 郵箱需要開通這些權(quán)限才可以的哦。
最后我瀏覽一下 www.metadata1.com的網(wǎng)站 其實(shí)還是發(fā)現(xiàn) 他們 提供的功能已經(jīng)幫我們想的很周全了。 包括如何 post數(shù)據(jù) 還有如果你真的很懶 他們還提供可以直接返回cookies的數(shù)據(jù)給你 ,這個(gè)真的是懶人的福音啊,有了cookies 就像有了玉璽一樣 天下我有的感覺,畢竟cookies就可以直接登錄了,免了好多麻煩而且可以保持很久。
不想再?gòu)U話了。 直接到大神的網(wǎng)站去調(diào)用接口算了,雖然是收費(fèi)的。但是我覺得還是蠻值得,而且收費(fèi)也不貴,很便宜

套餐很多可以選,自己根據(jù)自己的 業(yè)務(wù)需求去購(gòu)買就行了。5000元有5萬積分,用到吐了。 而且你顧一個(gè)技術(shù) 幫你開發(fā) 或者自己去花時(shí)間研究的 未必搞出來 而且成本肯定也不止5000元吧。難道技術(shù)員的價(jià)值就這么低嗎 哈哈哈哈。。 三思而后行吧。 好像在做廣告的嫌疑 。 好東西一定要分享對(duì)吧,并非廣告。并非廣告。并非廣告。重要事情說三次, 個(gè)人是這么覺得的吧。
亞馬遜metadata1的謎題在這里就全部告破。。再附上最后大神的鏈接 http://www.metadata1.com
還沒有完,,網(wǎng)站上還有賬號(hào)的自動(dòng)生成 和 生成 cookies的騷操作, 想必大神自己在想什么 ,你們都知道了吧。 哈哈。 自己意會(huì)意會(huì)就知道了。估計(jì)后續(xù)大神們還是出更多東西,因?yàn)槲乙呀?jīng)聯(lián)系他們了,你們自己有什么不明白就自己去聯(lián)系吧。。開動(dòng)腦筋 還是有你們想要的東西的。
好了,并非廣告、并非廣告、并非廣告。重要事情再說三次!