第63節(jié)
書(shū)迷正在閱讀:天生喜歡你、甜味兒Alpha 完結(jié)+番外、娘子,在下有眼無(wú)珠、真千金想開(kāi)了(重生)、當(dāng)年鐵甲動(dòng)帝王[重生]、人面鯢、本能迷戀、神秘大佬在線養(yǎng)貓 完結(jié)+番外、技術(shù)流學(xué)霸在八零年代、[綜英美]總有反派綁架我
作者有話要說(shuō): 此處應(yīng)有“參考文獻(xiàn)”大概上千篇。 但是作者懶得裝這個(gè)逼,請(qǐng)大家將就腦補(bǔ)一下吧。 …… 好吧,其實(shí)因?yàn)槎际腔A(chǔ)知識(shí)儲(chǔ)備,不用查資料也能寫(xiě)【手動(dòng)狗頭 第58章 沒(méi)有去上課的時(shí)夜, 今天坐在圖書(shū)館里,借用這邊的網(wǎng)絡(luò)。 當(dāng)楚英縱上完課來(lái)招人的時(shí)候,就看見(jiàn)這冰山小學(xué)弟坐在某個(gè)多功能媒體室的最角落里, 若有所思地看著自己的筆記本電腦,眉頭有若有似無(wú)的皺起痕跡。 ——問(wèn)題真的很難解嗎? 楚英縱走進(jìn)來(lái)帶上了門(mén), 看了時(shí)夜一陣, 不知不覺(jué)把自己帶來(lái)的橘子全剝好了,悄悄放在時(shí)夜手邊。 時(shí)夜抬頭看向楚英縱。 楚英縱:“我超安靜的!沒(méi)打擾你!” “……”時(shí)夜默默地又低下了頭。 過(guò)了一會(huì)兒, 楚英縱偷瞄著時(shí)夜屏幕上的內(nèi)容, 見(jiàn)他這次好像在看一個(gè)dll文件, 看函數(shù)名的名字大概為:certdllverifymicrosoftrootcertificatepolicy…… 楚英縱不由好奇地問(wèn):“你不是要破解手機(jī)嗎?怎么在看數(shù)字證書(shū)的東西?” 時(shí)夜道:“ecc更新了新版本,和ios兼容性不是很好,可能有漏洞?!?/br> 楚英縱聽(tīng)了, 精神一振:“有道理??!” 他跟著也瞄起了屏幕,粗略地看了看里頭新更新的函數(shù)。 根據(jù)版本更行后的對(duì)比來(lái)看,微軟這次主要是修改了幾個(gè)證書(shū)鏈接策略有關(guān)的函數(shù), 新增了幾個(gè)對(duì)于新協(xié)議的兼容性入口。 時(shí)夜若有所思地來(lái)回調(diào)試,將一些關(guān)于內(nèi)存對(duì)比的代碼進(jìn)行了高亮處理。 楚英縱對(duì)于這點(diǎn)東西還是能看懂的, 好奇地說(shuō):“是這里在對(duì)公鑰進(jìn)行對(duì)比嗎?” 時(shí)夜說(shuō):“嗯?!?/br> 數(shù)字證書(shū), 可以類(lèi)比人的“簽證”,需要通過(guò)官方信賴(lài)的機(jī)構(gòu)進(jìn)行簽發(fā)。 用微軟發(fā)明的這個(gè)橢圓曲線算法(ecc)來(lái)進(jìn)行舉例:簽證機(jī)構(gòu)首先選取一個(gè)私鑰, 將私鑰定義一條橢圓曲線,引入額外參數(shù), 來(lái)得到橢圓上的另一個(gè)解, 這個(gè)解就是公鑰。 私鑰這個(gè)東西只有簽證機(jī)構(gòu)自己知道,但是公鑰是要發(fā)布到全網(wǎng)上的。 當(dāng)簽證機(jī)構(gòu)給某個(gè)軟件簽發(fā)數(shù)字證書(shū)的時(shí)候,他會(huì)用自己的私鑰、某些局域參數(shù)和哈希值一并來(lái)產(chǎn)生簽名, 也就變成了那個(gè)軟件的“簽證”。 然后,公網(wǎng)上的任何人,都能夠使用公鑰,來(lái)比較這個(gè)軟件的簽證,也就是自己再通過(guò)一次橢圓曲線計(jì)算,可以對(duì)比得到結(jié)果是否相等—— 相等就說(shuō)明“簽證”就是官方機(jī)構(gòu)簽發(fā)的,沒(méi)問(wèn)題了; 如果不相等,那么這就是“無(wú)效簽證”,這個(gè)軟件就是可疑的,是沒(méi)有護(hù)照的黑戶(hù),不予信任。 這一整個(gè)數(shù)字簽證的過(guò)程,就是一場(chǎng)不對(duì)稱(chēng)的加密策略。 “不對(duì)稱(chēng)”就在于:簽證機(jī)構(gòu)持有私鑰,而所有人都持有公鑰,整個(gè)過(guò)程只能驗(yàn)算,卻無(wú)法逆推。 就像國(guó)家掌握了印錢(qián)的防偽技術(shù),所有人都能簡(jiǎn)單地用看一看、摸一摸的手段來(lái)驗(yàn)明錢(qián)幣的防偽標(biāo)記,但是沒(méi)有人能偽造出這種標(biāo)記來(lái)。 這種技術(shù)也能最大程度地幫助計(jì)算機(jī)軟件來(lái)防偽,也就變相保證了設(shè)備本身的安全性。 但是,在時(shí)夜的世界里,沒(méi)有不可能一說(shuō)。 畢竟——“世界上沒(méi)有絕對(duì)安全的系統(tǒng),只有尚未被發(fā)現(xiàn)的漏洞”。 他來(lái)回調(diào)試著更新后的ecc簽證算法,接著發(fā)現(xiàn)了一個(gè)叫做“certverifycertificatepolicy”的函數(shù),連續(xù)傳遞了四個(gè)證書(shū)相關(guān)的參數(shù),而且未做任何處理,便傳向了下游的函數(shù)。 他陷入了沉思。 楚英縱見(jiàn)時(shí)夜突然停在了某個(gè)確定的位置上,不由也盯著看了半晌,抓耳撓腮的問(wèn):“時(shí)小夜,我能看懂oid這個(gè)參數(shù),剩下三個(gè)是什么意思?” 時(shí)夜拿起筆,隨手在紙上寫(xiě)下了這幾個(gè)參數(shù),對(duì)他解釋道:“假設(shè)根證書(shū)的私鑰是p,這個(gè)私鑰我們無(wú)從得知,但ecc的基點(diǎn)為g,那么公鑰就是pg。這幾個(gè)參數(shù)只是在自定義橢圓曲線的參數(shù)r、s和公鑰……” 說(shuō)到此處,他聲音突然停住了。 楚英縱猛地“啊”了一聲,說(shuō):“那這么校驗(yàn)的話,我自己傳參進(jìn)去,用一模一樣的自定義參數(shù),不就可以用隨便一個(gè)私鑰也可以進(jìn)行簽證了?” 時(shí)夜沉默片刻,說(shuō):“你想的不錯(cuò)?!?/br> 時(shí)夜在電腦上打開(kāi)了命令提示符,開(kāi)始使用openssl命令,自己偽造一系列參數(shù),嘗試生成新的ecc證書(shū)。 然后用偽造的ecc證書(shū),他隨手對(duì)一個(gè)三無(wú)小軟件做了簽名。 楚英縱看到一半的時(shí)候,已經(jīng)自發(fā)自覺(jué),默默地將自己的手機(jī)掏了出來(lái),連接到電腦上。 接著,時(shí)夜嘗試將軟件安裝到他的手機(jī)上—— 數(shù)字簽名校驗(yàn)通過(guò)。 軟件安裝成功。 到這一步,楚英縱的嘴巴已經(jīng)變成了“o”型,叫道:“哇哇哇哇哇哇哇我們發(fā)現(xiàn)了一個(gè)0day!時(shí)小夜,發(fā)了??!” 時(shí)夜平靜地:“嗯?!?/br> 他繼續(xù)做著接下來(lái)的工作,檢查了一下這個(gè)自己偽造的數(shù)字證書(shū),名字只是隨便打了一個(gè)“1”而已,簽名者的名字和日期都沒(méi)有,但在系統(tǒng)里卻是可被信任的“正常證書(shū)”。 楚英縱就沒(méi)這么淡定了,傻笑著原地轉(zhuǎn)了兩圈,往時(shí)夜的嘴里塞了兩瓣橘子,喜滋滋道:“這可是數(shù)字證書(shū)的漏洞,提交給微軟起碼是個(gè)‘危重’級(jí)別。到時(shí)候獎(jiǎng)金發(fā)下來(lái),時(shí)小夜你要成百萬(wàn)富翁了!” 橘子很甜,時(shí)夜默默地吃了,舔了下嘴唇。 楚英縱看得怦然心動(dòng),又開(kāi)心地親了他一下。 學(xué)長(zhǎng)也很甜,時(shí)夜默默地被親了,然后才隨口道:“先不提交?!?/br> 楚英縱這才想起來(lái):“啊對(duì),這才是第一步呢,你真的打算要破解ios系統(tǒng)13?” 時(shí)夜:“嗯。” 說(shuō)話間,時(shí)夜手頭的動(dòng)作沒(méi)有停,將證書(shū)打包進(jìn)了自己的ios破解包里。 得到了一個(gè)價(jià)值連城的微軟0day,好像對(duì)他沒(méi)有產(chǎn)生任何影響。 也許他更高興的,其實(shí)是自己能夠在解題的步驟上更進(jìn)了一步。 楚英縱不覺(jué)間也安靜了下來(lái),看著他專(zhuān)注的側(cè)臉,呆呆地想了一會(huì)兒事情。 片刻后,楚英縱說(shuō):“阿夜,你有沒(méi)有考慮過(guò)真的破解掉了系統(tǒng)以后,你可能會(huì)有很大名氣,你不一定喜歡的那種……” 時(shí)夜停頓了一下。 他真的沒(méi)有考慮過(guò)——現(xiàn)實(shí)世界的很多東西,本能地不在他的意識(shí)范圍里。 這時(shí)楚英縱說(shuō):“當(dāng)年ios四代的時(shí)候,不是好像是歐洲的一個(gè)高中生破解出來(lái)的嗎?他當(dāng)晚就成名了,還被蘋(píng)果公司告了。雖然最后法庭判斷是‘智力好奇’,并沒(méi)有定罪……” “我知道?!睍r(shí)夜說(shuō),“這是法律的灰色地帶?!?/br> 楚英縱低著頭道:“時(shí)小夜,我們可以出于學(xué)術(shù)的目的去嘗試,但是你可以答應(yīng)我,不用來(lái)做非法的牟利嗎?” 時(shí)夜看了他一陣,嘴角好像帶著一抹淡淡地笑意,說(shuō):“好?!?/br> 楚英縱這才重新活躍起來(lái),樂(lè)呵呵道:“好!接下來(lái)還有要幫忙的地方不?我也來(lái)我也來(lái)!灑家這輩子還沒(méi)干過(guò)這種大事——刺激!!” 這一整天,楚英縱都忍不住和時(shí)夜泡在了圖書(shū)館里。 他們一起看那些佶屈聱牙的函數(shù),一起調(diào)試各種亂七八糟的參數(shù),一起被深?yuàn)W的數(shù)學(xué)問(wèn)題虐得懷疑人生。 每當(dāng)?shù)搅四X細(xì)胞死亡的時(shí)候,楚英縱就默默地剝一個(gè)橘子喂給時(shí)夜,時(shí)夜就不自覺(jué)地吃掉了……結(jié)果晚飯他根本吃不下。 楚英縱去外面帶了兩大碗餛飩回來(lái),又開(kāi)始給時(shí)夜喂一個(gè)、喂一個(gè),怕他不吃晚飯會(huì)餓著似的。 最后兩人不得不一起癱軟在沙發(fā)上。 楚英縱是大腦放空,累的。 時(shí)夜是撐的。 到了晚上,余景樹(shù)果然又開(kāi)始加班了。 他用內(nèi)部軟件給時(shí)夜發(fā)消息:【顧問(wèn)先生,您今天有新的進(jìn)展嗎?我們這邊已經(jīng)額外準(zhǔn)備了一些文件,你可以看一看?!?/br> 時(shí)夜:【有?!?/br> 余景樹(shù)很是驚訝:【方便和我解釋一下么?!我馬上打電話過(guò)去?!?/br> 時(shí)夜:【不方便,楚英縱睡著了?!?/br> 余景樹(shù):【你們?cè)谒奚釂幔磕憧梢猿鋈ソ与娫?,不?huì)吵到他的?!?/br> 時(shí)夜:【不,我看著他?!?/br> 余景樹(shù):“??”這是什么意思,您為啥看著他睡覺(jué)?太言簡(jiǎn)意賅了。一和這孩子對(duì)話,總覺(jué)得自己又要開(kāi)始禿頭了。 其實(shí),時(shí)夜只是被楚英縱纏住了。 傻學(xué)長(zhǎng)歪倒在沙發(fā)上,睡著了嘴巴還一張一合的,像一條擱淺的美男魚(yú)。 時(shí)夜伸出手,將他身下的數(shù)據(jù)線抽出來(lái),給用了一天的手機(jī)充電。 楚英縱迷迷糊糊間不滿地哼了兩聲,伸手抓住了時(shí)夜的腰,用臉在他后腰上蹭了兩下,然后又打起了呼嚕來(lái)。 時(shí)夜:“……” 時(shí)夜伸出手指頭,撩撥了一下楚英縱顫動(dòng)的睫毛,換來(lái)了兩聲小豬似的哼哼。 時(shí)夜歪了歪頭,又伸手一一撫觸過(guò)他的鼻梁、眉梢、微張的嘴唇,還有很多他感興趣的地方。 被吵得狠了,楚英縱不耐煩地翻了個(gè)面睡,嘴都不自覺(jué)地嘟了起來(lái)。 可是時(shí)夜好像找到了新的玩具,有種樂(lè)此不彼的愉快感,完全忘記了自己正在運(yùn)行中的電腦。 楚英縱又睡了一會(huì)兒,總覺(jué)得身上哪兒都癢癢,最后還是一骨碌爬了起來(lái),頂著滿頭亂毛道:“算了算了,我們回宿舍睡吧?” 時(shí)夜眸光深深地看著他,說(shuō):“嗯。” 楚英縱臉蛋都睡紅了,起身迷迷瞪瞪地收拾東西,將橘子皮都丟進(jìn)垃圾桶里,順便隨口道:“解題嘛,不急于一時(shí),明天等我下課了再來(lái)找你……” “但是‘這道題’我很喜歡,希望明天盡早開(kāi)始工作。”時(shí)夜忽然說(shuō)著,想了想還補(bǔ)充了一句,“希望晚上也可以做。” 楚英縱懵了半天:“我靠,這就是學(xué)神的境界嗎?比不了比不了?!?/br>