當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 21ic電子網(wǎng)
[導(dǎo)讀]回想七年前,我的第一家公司……

這幾天看到公司有校招的同學(xué)不斷入職,抬頭一看臺(tái)歷,不算實(shí)習(xí),正式工作滿7年了。7年光陰,彈指一揮間。

記得7年前,簽訂勞動(dòng)合同加入我的第一家公司:百度。

說(shuō)來(lái)也挺奇怪,我本來(lái)校招投遞的崗位是C/C 開(kāi)發(fā)崗,結(jié)果由于面試過(guò)程中,面試官看我在內(nèi)核技術(shù)、逆向分析技術(shù)和底層系統(tǒng)編程上上有一些經(jīng)驗(yàn),于是把我分到了內(nèi)核攻防組,做驅(qū)動(dòng)開(kāi)發(fā)。

那時(shí)候,我們團(tuán)隊(duì)分了兩個(gè)方向:

1、漏洞安全攻防

2014年,正是微軟宣布停止對(duì)Windows XP技術(shù)支持的時(shí)候,為了守護(hù)國(guó)內(nèi)數(shù)量眾多的XP用戶(說(shuō)是守護(hù),其實(shí)就是搶占市場(chǎng)),各個(gè)安全廠商都開(kāi)始推出XP安全防御產(chǎn)品,其中比較出名的就是360的XP盾甲。

國(guó)內(nèi)的信安評(píng)測(cè)機(jī)構(gòu)CNCERT搞了一個(gè)XP安全挑戰(zhàn)賽,隔幾個(gè)月就來(lái)一次PK,在不同的XP電腦上分別裝上各家的安全產(chǎn)品,然后使用一些漏洞EXP進(jìn)行攻擊,看看誰(shuí)守得住。主要的幾個(gè)玩家就是360、騰訊電腦管家、金山毒霸、北信源,還有就是百度。

咱們團(tuán)隊(duì)中的漏洞安全攻防組就是負(fù)責(zé)這個(gè)方向,把XP上能使用的漏洞基本上全都擼了一遍,然后把更高系統(tǒng)Win7、Win8上的一些安全機(jī)制(比如DEP、ASLR等等)通過(guò)內(nèi)核驅(qū)動(dòng)的方式移植到XP上去,以增強(qiáng)XP的安全能力,抵御安全攻擊,贏得比賽。

我記得360的XP盾甲做了一個(gè)功能,Windows XP啟動(dòng)時(shí),伴隨啟動(dòng)進(jìn)度條的出現(xiàn),會(huì)出現(xiàn)經(jīng)典的LOGO,360把這個(gè)logo改了,居然改成了360的logo,當(dāng)時(shí)年輕的我被震的一愣一愣的,居然還有這種騷操作。

不過(guò)很快,身邊的同事就拿到ntldr進(jìn)行了逆向分析,找到了360這一招的原理,我們也照貓畫(huà)虎,把這個(gè)LOGO換成了咱們百度的,不過(guò)沒(méi)有推到產(chǎn)品上,估計(jì)會(huì)被噴的,只當(dāng)是技術(shù)研究罷了。

團(tuán)隊(duì)中的成員好多都是從360挖過(guò)來(lái)的大牛,那段時(shí)間,跟著這些大佬們學(xué)到了許多東西,我在二進(jìn)制漏洞方面入門差不多就是那個(gè)時(shí)候。

2、競(jìng)品攻防對(duì)抗

我主要的精力是放在這一塊的。如果說(shuō)前面第一個(gè)方向是和漏洞攻擊做對(duì)抗,那這個(gè)方向就是和競(jìng)爭(zhēng)對(duì)手打交道,這一部分更加有意思。

競(jìng)品對(duì)抗分為三塊,安裝、啟動(dòng)與優(yōu)化、反卸載。

安裝,就是競(jìng)爭(zhēng)對(duì)手會(huì)想進(jìn)一切技術(shù)手段對(duì)我們的產(chǎn)品進(jìn)行圍追堵截,如果你的電腦上安裝了競(jìng)品,可能你下載了一個(gè)百度殺毒的安裝包,安裝莫名報(bào)錯(cuò),各種依賴缺失,甚至連安裝包都下載不成功,各種情況都有。

實(shí)際上,是競(jìng)爭(zhēng)對(duì)手的產(chǎn)品在背后作祟,當(dāng)它識(shí)別到百度的產(chǎn)品在安裝時(shí),會(huì)各種使絆子,一開(kāi)始通過(guò)文件MD5來(lái)識(shí)別,我們官方發(fā)布的每一個(gè)安裝包的MD5都會(huì)第一時(shí)間被競(jìng)爭(zhēng)對(duì)手拉入黑名單,一遇到直接就被干。

后來(lái)我們改了策略,安裝包下載自動(dòng)隨機(jī)生成,每一次下載的MD5都不一樣,這樣才勉強(qiáng)逃過(guò)絞殺,不過(guò)對(duì)手也不是吃素的,后面又改成文件特征識(shí)別,比如文件內(nèi)部含有“baidu”等字符串,就列入黑名單,那段時(shí)間,百度網(wǎng)盤(pán)和百度音樂(lè)等幾款客戶端軟件還因此被殃及過(guò)。沒(méi)辦法,我們只好再次抹掉這些特征,或者進(jìn)行加密,不讓它們明文出現(xiàn)。

再后來(lái),對(duì)手改成了通過(guò)文件圖標(biāo)來(lái)識(shí)別對(duì)手,提取PE文件的圖標(biāo)識(shí)別是不是我們,總之,在這個(gè)過(guò)程拉鋸了很多回,非常有意思,各種損招都有。

啟動(dòng)與優(yōu)化,這是更有意思的部分。躲過(guò)了安裝這才是闖過(guò)了第一關(guān),接下來(lái)的日子,每一天都充滿了危機(jī)。

可能某一天,用戶什么也沒(méi)做,我們的產(chǎn)品就起不來(lái)了,這叫開(kāi)機(jī)啟動(dòng)使絆子,讓我們起不來(lái)。

還可能競(jìng)品可能彈個(gè)窗告訴你:內(nèi)存吃緊,趕緊優(yōu)化。然后你一點(diǎn)加速球,對(duì)手就把我們的進(jìn)程干掉了,甚至把我們直接都卸載了,文件、進(jìn)程、注冊(cè)表啥也沒(méi)了,消失的悄無(wú)聲息。

那我需要做的當(dāng)然就是對(duì)抗競(jìng)品的這些騷操作,卸載必須由用戶手動(dòng)通過(guò)控制面板或者我們自己的卸載軟件發(fā)起,需要識(shí)別競(jìng)品的卸載行為,攔截刪文件、殺進(jìn)程、刪注冊(cè)表等一系列操作。

任何一個(gè)安全產(chǎn)品都有主動(dòng)防御的功能,直接調(diào)用系統(tǒng)API進(jìn)行上面的操作肯定會(huì)被我們的主動(dòng)防御攔截掉,對(duì)手也深知這一點(diǎn)。所以,想要干掉我們,對(duì)手得在內(nèi)核模式下,用驅(qū)動(dòng)調(diào)一些比較底層的函數(shù)繞過(guò)我們的安全防御。

那我們要做的就是和它進(jìn)行對(duì)抗,直接的內(nèi)核硬碰硬不是好辦法,一不小心容易把電腦干藍(lán)屏,我們選擇了比較巧妙的一招:攔截通信。

對(duì)手要搞我們,他們處于Ring3模式下的應(yīng)用程序總得和他們的Ring0模式下的內(nèi)核驅(qū)動(dòng)程序通信吧,就是DeviceIOControl,所以我們逆向了他們的通信協(xié)議,一旦發(fā)現(xiàn)要搞的目標(biāo)是我們,就把這條消息攔截掉,這樣他們的驅(qū)動(dòng)收不到消息,也就不知道要搞我們了。

在這一部分,我們進(jìn)行了好幾個(gè)月的對(duì)抗,對(duì)手不斷變化通信協(xié)議,不斷變化通信的設(shè)備名稱,甚至加密傳輸,我們也就見(jiàn)招拆招,兵來(lái)將擋,水來(lái)土掩。

后來(lái)發(fā)現(xiàn)我們總是攔截他們的通信,他們決定不再通信了,先把這事情記錄起來(lái),記錄到文件、注冊(cè)表等各種地方,等到關(guān)機(jī)的時(shí)候,我們的驅(qū)動(dòng)程序已經(jīng)停掉了,他們?cè)賮?lái)干這事,或者放到開(kāi)機(jī)的時(shí)候,他們的驅(qū)動(dòng)比我們先加載,我們還沒(méi)起來(lái)就被干掉。

于是,戰(zhàn)場(chǎng)又轉(zhuǎn)移到了關(guān)機(jī)和開(kāi)機(jī)時(shí)刻,驅(qū)動(dòng)停止順序上,比誰(shuí)后卸載,最后留下來(lái)的就有后發(fā)優(yōu)勢(shì),可以進(jìn)行復(fù)活操作,兩邊互相搶,結(jié)果就是用戶的電腦可能關(guān)機(jī)關(guān)半天都關(guān)不了。除了關(guān)機(jī)順序,還會(huì)逆向分析它到底把信息記錄到了哪里,把這個(gè)信息刪掉,也能自保。

在這過(guò)程中,又對(duì)抗拉鋸了好幾個(gè)月,比較有意思的是,對(duì)手似乎和我們達(dá)成了某種"默契",專挑每周五下班的時(shí)候,更新他們新的策略,讓我們加班,真是太不講武德了。

隨著我們DAU的不斷增長(zhǎng),除了一味的防守,我們也開(kāi)始嘗試給競(jìng)品使使絆子,也讓他們嘗嘗這種滋味兒,正所謂以彼之道,稍加修改,還施彼身,其樂(lè)無(wú)窮,我們也來(lái)卸載他們,刪他們文件,殺他們進(jìn)程,刪他們注冊(cè)表。

剛剛?cè)肼毦蛥⑴c這種項(xiàng)目,著實(shí)對(duì)技術(shù)是有非常大的挑戰(zhàn),不管是逆向分析,加解密技術(shù),還是內(nèi)核攻防技術(shù),調(diào)試分析技術(shù),編程功底都是非常大的考驗(yàn),那段時(shí)間寫(xiě)代碼非常謹(jǐn)慎,因?yàn)橐粋€(gè)不小心,可能就會(huì)導(dǎo)致成千上萬(wàn)的用戶電腦藍(lán)屏。沒(méi)錯(cuò),我就因?yàn)閷?xiě)了一個(gè)bug,好像是一個(gè)指針釋放后未及時(shí)置空,導(dǎo)致上萬(wàn)的用戶電腦藍(lán)屏了,把剛剛?cè)肼毑痪玫奈覈樀冒胨馈?/p>

故事的結(jié)尾,可能大家想不到,我們一直和競(jìng)品A做對(duì)抗,和另一個(gè)競(jìng)品B聯(lián)合對(duì)抗A,頗有種三國(guó)時(shí)代,聯(lián)吳抗曹的味道。但在臨近年關(guān)的時(shí)候,競(jìng)品B突然在背后狠狠捅了我們一刀,全面卸載我們,一個(gè)周末,DAU掉了近千萬(wàn),年終目標(biāo)頃刻化為烏有。

那段日子,百度為了推廣他的安全產(chǎn)品,做了不少過(guò)分的事情,各種捆綁,全家桶,很多中高層領(lǐng)導(dǎo)為了KPI,寧愿犧牲口碑。因?yàn)楹透?jìng)品做對(duì)抗,導(dǎo)致產(chǎn)品怎么也卸載不掉,被用戶罵的很慘。據(jù)說(shuō)競(jìng)品B要搞我們的原因就是不小心推廣到了他們公司一個(gè)高管的電腦上,還死活卸載不掉,于是才有了后面的事情,當(dāng)然這只是道聽(tīng)途說(shuō),不知真假。

后來(lái),我也厭倦了這樣的產(chǎn)品和工作,如果是和病毒木馬做斗爭(zhēng)倒也罷了,拿用戶的電腦當(dāng)戰(zhàn)場(chǎng)互相拼殺,實(shí)在不是什么光彩的事情。

恰逢我也想謀求技術(shù)轉(zhuǎn)型,于是開(kāi)始轉(zhuǎn)向新的方向,咱們下次再聊。

作者:軒轅之風(fēng)

來(lái)源:編程技術(shù)宇宙

版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除。

21ic電子網(wǎng)

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉