1
本文作者: 史中 | 2016-06-20 08:50 | 專題:100個頂級黑客的故事 |
如果你是一位京東的新員工,那么你要小心了。
當(dāng)你打開自家企業(yè)的BBS,很可能看到一個帖子,提示點擊進去就可以領(lǐng)取京東內(nèi)部福利。
當(dāng)你的工作郵箱收到一封郵件,提示你密碼已經(jīng)過期,需要你使用舊密碼重置。
沒錯,你遇到了騙子。你登陸了虛假的“釣魚網(wǎng)站”,把信息泄露給騙子。然而劇情在此刻華麗反轉(zhuǎn),這個“騙子”居然是京東自己的安全部門。如果你不幸上當(dāng),等待你的是被關(guān)進“小黑屋”,接受“安全再教育”。
如此“釣魚執(zhí)法”血腥得讓人欲哭無淚。正所謂“一入京東深似海,從此惡習(xí)全能改?!边@些“釣魚執(zhí)法”的發(fā)明人,就是京東安全第一人,京東安全應(yīng)急響應(yīng)中心 JSRC 的老大李學(xué)慶。
【京東應(yīng)急安全響應(yīng)中心(JSRC)負責(zé)人 李學(xué)慶】
和自己的員工“逗悶子”當(dāng)然不是 JSRC 的全部任務(wù)。作為一個安全應(yīng)急響應(yīng)中心,和騰訊的 TSRC、百度的 BSRC、阿里巴巴的 ASRC 一樣,京東的 JSRC 有一個主要任務(wù)——堵住一切有可能產(chǎn)生破壞的漏洞。
形象地來說,京東就像一艘在深海中航行的郵輪,船板掉漆、船艙銹蝕每時每刻都在發(fā)生,JSRC 就像在巨輪上下巡回的工程隊,不斷對它進行修補,保證這個賽博世界的百貨商店從里到外的光潔堅固。
如果你是一名黑客,確切地說是一名白帽黑客,你研究出的任何可以攻擊京東的漏洞,都可以通過 JSRC 提交給京東。而你能獲得的,將是頗為實惠的獎勵,例如價值1000元的京東購物卡神馬的。
嚴重漏洞1天,高危漏洞3天,中危漏洞7天,低危漏洞14天。這是我們對于不同漏洞的修復(fù)時間。
李學(xué)慶告訴雷鋒網(wǎng),根據(jù)白帽子提交的漏洞等級不同,他們會得到相應(yīng)的獎勵,而且在重大促銷或者節(jié)假日前夕,為了充分保障系統(tǒng)的正常運轉(zhuǎn),還會有翻倍獎勵?!袄缃衲?6.18 之前,我們搞了一個雙倍積分的活動,白帽子提交高危漏洞,最高可以得到折合12000元價值的獎勵?!?/p>
對于同樣是白帽黑客出身的李學(xué)慶來說,JSRC 更像是京東和黑客江湖溝通的一間茶室。他帶領(lǐng)30多位關(guān)注京東的黑客組成了核心白帽群,不僅經(jīng)常溝通他們發(fā)現(xiàn)的漏洞詳情,還定期邀請業(yè)內(nèi)大牛進行技術(shù)講座。
以上這些玩法,是他經(jīng)歷了血的教訓(xùn)才習(xí)得的。某種程度上說,“黑客江湖”是大公司的“朝野”不得忽視的力量,因為行俠仗義的“俠客”們往往能攪動巨大的且不容忽視的波瀾。
早在JSRC建立之前的2011年。剛剛加盟京東不久的李學(xué)慶就遭遇了一次危機。那就是當(dāng)時業(yè)界的信息泄露事件,很多公司都遭受了這次事件帶來的余震。彼時由于京東沒有 JSRC 這樣專門處理漏洞的部門,白帽子發(fā)現(xiàn)漏洞之后并不能直接提交給京東,導(dǎo)致雙方交流不暢,最終并不愉快。
這次沖突對于京東和黑客江湖來說都很傷元氣。這也讓李學(xué)慶堅定了要推動成立 JSRC 這個“總理各路黑客衙門”。
JSRC中的每個成員對應(yīng)京東的一條業(yè)務(wù)線。一旦確認漏洞,就會緊盯著相關(guān)部門“縫漁網(wǎng)”。
因為安全損失是沒有辦法估量的。
李學(xué)慶說,對于高危漏洞,如果出現(xiàn)業(yè)務(wù)和安全打架的問題,要首先處理安全問題,沒有商量的余地?!斑@流程是經(jīng)過高管討論之后,形成的剛性制度。”
【京東內(nèi)部漏洞響應(yīng)系統(tǒng)流程】
從 JSRC 成立到今天,大致有五年時間。今天來看,京東的業(yè)務(wù)線安全性已經(jīng)具備了標(biāo)準(zhǔn)的防御力,真正危險的漏洞即使偶爾被找到,也會在當(dāng)天被修復(fù)。但是作為電商,京東實際上面臨著一些特別的威脅:
用“樹大招風(fēng)”來形容這個一線電商比較貼切。說來無奈,騙子使用的手段并不高明,無非是偽裝成京東客服給用戶打電話行騙,或者偽造一個類似京東的釣魚網(wǎng)站騙取用戶錢財。
當(dāng)然,做這些詐騙動作的前提是,騙子要掌握用戶的登陸密碼和個人信息。李學(xué)慶告訴雷鋒網(wǎng),根據(jù)他掌握的資料,京東最近幾年并沒有發(fā)生成規(guī)模的用戶信息泄露。但是京東仍然感受到壓力,因為其他平臺不斷出現(xiàn)用戶信息泄露事件。通過“撞庫”,很多黑產(chǎn)還是可以拿到一些京東用戶的登陸密碼。
如果一個 IP 頻繁登陸不同的賬號,并且失敗的次數(shù)還很多,那這就是很明顯的撞庫行為。
針對這部分用戶,京東基本及時的要求用戶重置密碼。另外,每個進行登陸操作的設(shè)備都被給定一個設(shè)備指紋,如果一個賬號以前都是用 iPhone 登陸,突然在安卓手機上登陸,并且 IP 也不在常用地點,那么系統(tǒng)就可能會啟動防止盜號的流程。
如果一個用戶登錄京東之后,沒有選擇商品的動作,而是馬上使用余額或者京券、東券,這也是一個非常可疑的動作?!?/p>
這些就是 JSRC 對付黑產(chǎn)的一些招式。
用戶的數(shù)據(jù)是京東的“首要機密”,所以在 web 傳輸?shù)倪^程中,凡是敏感的數(shù)據(jù)都會被打碼,也就是“***”的狀態(tài)。當(dāng)然,仍然有很多情況下, 服務(wù)需要請求“姓名、電話、郵箱”等完整的信息,這個時候,就要對請求的頻率做限制。
當(dāng)然,一個有效的制度一定要對內(nèi)部人員也有完整的權(quán)利限制。
市場部做活動,很多時候會提取一些用戶的數(shù)據(jù)出來做抽獎。這個時候,我們會給這些信息附加一些“key值”,有了這個動作,就可以記錄這些信息的使用時間、使用量級,還有負責(zé)人。而且這個key帶有有效期,例如一個月,過期之后就不能讀出用戶信息了。這樣,哪怕是出現(xiàn)了信息泄露,也可以追蹤溯源,查到責(zé)任人。
實際上,用戶的數(shù)據(jù)全部存儲在京東服務(wù)器的數(shù)據(jù)庫中,這些數(shù)據(jù)一旦被竊取,將會是災(zāi)難。然而,在業(yè)內(nèi)對于數(shù)據(jù)庫的安全有一些比較成熟的操作方法。例如所有的數(shù)據(jù)都經(jīng)過了高度加密,即使通過了層層防御拿到了這些數(shù)據(jù),也是沒有辦法破譯的。
前一段時間被媒體關(guān)注的領(lǐng)英用戶數(shù)據(jù)庫泄露,就是因為他們沒有在數(shù)據(jù)中“加鹽”(做加密混淆),才有了扎克伯格的 Twitter 賬號慘遭破解的后話。
【2014年“出品”的某京東秒殺器】
前幾年秒殺器橫行,專門盯著京東做促銷的秒殺活動。那時候我們會專門混入這些“秒殺京東”的群,甚至?xí)ㄥX買來他們兜售的秒殺器來研究,封堵惡意攻擊。
近幾年反秒殺的技術(shù)臻于成熟,這樣的威脅減少了。李學(xué)慶告訴雷鋒網(wǎng),JSRC 還會有針對性地獲取一些威脅情報,所以可以在敵人進攻之前筑好“防御工事”。
“對于我們的技術(shù)研發(fā)體系,我還是比較有自信?!崩顚W(xué)慶說,“因為每次大促,我們都會做很多準(zhǔn)備,包括業(yè)務(wù)抗壓能力,雙倍積分鼓勵白帽子找漏洞,收集威脅情報?!?/p>
“所以這次618,我們還是比較淡定。”
淡定并不表示 JSRC 的童鞋們可以北窗高臥。李學(xué)慶說:
這次“618 電商節(jié)”之前,我們把京東核心業(yè)務(wù)域名都進行了一次大排查,針對程序員經(jīng)常范的錯誤以及嚴重漏洞逐一排查一遍。我們的一個小兄弟在手工檢測一個新業(yè)務(wù)時發(fā)現(xiàn)了一個注入點,有可能竊取數(shù)據(jù)。經(jīng)過和業(yè)務(wù)溝通,最后發(fā)現(xiàn)這個項目存在六七處代碼問題,那天是周五,我們一起加班到了晚上,解決了這個問題。
在 618 之前一次針對白帽子的活動中,雖然有雙倍積分的誘人獎勵,但是這么多高水平的白帽子只找到兩三個有一定威脅的注入或者越權(quán)漏洞,這一點讓他覺得京東的安全性還是有保障的。
盡管總體上安全無虞,李學(xué)慶的日?;顒尤匀皇菐ьI(lǐng)兄弟們?nèi)f(xié)調(diào)各部門修補無數(shù)的小漏洞。
例如前幾天我們在web端發(fā)現(xiàn)了一個跨站漏洞,也協(xié)調(diào)開發(fā)部門修復(fù)了問題,然而我們卻沒有意識到,這個問題在手機 App 端同樣存在。直到手機端同樣爆出了問題,我們才去修復(fù)。
當(dāng)然,這次 618,剁手黨們并沒有意識到京東的安全性存在問題。JSRC的所有任務(wù),就是用7*24小時的待命讓用戶感覺不到自己的存在。李學(xué)慶覺得,這是一個安全人員的專業(yè)精神所在。
【2014年618,劉強東客串快遞員送貨】
讓所有的京東同事都學(xué)會“安全地工作”,是李學(xué)慶的職責(zé)。如文章開頭所言,一言不合就“釣魚執(zhí)法”,是他對同事進行教育的方法之一。
此外,他還曾經(jīng)給幾千名同事做過安全講座。
2011年的時候,我在臺上教所有的員工密碼設(shè)置的技巧,告訴他們怎樣的密碼才算復(fù)雜,才算有強度。
例如,程序猿可以用老婆名字的縮寫(前提是要有老婆)前后加上大括號,再附加520之類的表白,就可以構(gòu)成一個強密碼。另外,你還可以寫詩,例如鋤禾日當(dāng)午,里面充斥著大小寫混搭。
當(dāng)時人們聽得熱血沸騰,紛紛回去改密碼。后來幾天我竟然解到了幾個電話:“李老師,我忘記了自己設(shè)置的密碼,幫幫我。。?!?/strong>
然而,還有少數(shù)人死活不改內(nèi)網(wǎng)登陸密碼,即使李學(xué)慶屢次教導(dǎo)仍然“執(zhí)迷不悟”。
他不改,只好我?guī)退?。在排查的時候,我用常用的密碼字典去撞庫,發(fā)現(xiàn)了一些弱密碼,我直接從遠程把他的桌面換掉,顯示:你的電腦被黑了。
被“黑”的同事打開電腦,被嚇得著實不輕。。。”
這就是來自李學(xué)慶這個黑客的“魔鬼訓(xùn)練”。他目的雖然不是讓人人都是白帽子,但是至少人人都要有安全意識。也許這種“黑”同事的惡作劇,正是他心目中最好的教育方法。
其實,2011年那次“信息泄露”風(fēng)波,對于 JSRC 的建立顯然起到了推動作用。提起那次事件,李學(xué)慶仍然感慨萬千。
我相信所有的白帽子,他們的初衷都是為了幫助京東。如今因為 JSRC 的存在,京東和白帽子“刀劍相向”的局面應(yīng)該不會再發(fā)生了。
他的邏輯很簡單:因為朋友之間處理問題,要用朋友的方法。
JSRC 成立四年,團結(jié)了五十多個核心白帽子。他們拱衛(wèi)著京東這個代碼海洋中的“巨輪”。
安全遠不是兒戲,而是真槍實彈的對抗。和其他電商一樣,京東同樣面臨諸多戰(zhàn)役。對于李學(xué)慶和 JSRC 來說,他們的使命正在于此。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。