親愛的黑客朋友,下次去GeekPwn極棒比賽記得先燒一炷香_風聞
观察者网用户_243785-2020-10-30 13:32
文|謝幺

GeekPwn 極棒大會主舞台
0
大家好,我是謝幺。
老淺友都知道,自淺黑科技開播以來,每年10月24日我們都會參加GeekPwn極棒大賽。當觀眾。
GeekPwn的官方全稱是“極棒國際安全極客大賽”,所謂“安全極客”,在我的語境裏其實就是“黑客”的意思。也許是因為“黑客”這個詞蒙冤已久,成見太深,為了保平安,主辦方才用的“安全極客”。
GeekPwn極棒是一個風光的舞台,每年選手們在台上破解各種東西,手機、智能門鎖、路由器、智能音響……主持人驚呼,觀眾鼓掌,聚光燈照在身上,一羣記者圍着採訪… …當然,這僅僅對挑戰成功的選手而言。
在這個舞台上,每年也有不少項目當場“翻車”。那些選手也許付出了同等的努力,卻因為各種突發原因挑戰失敗,黯然離場,沒有獎金,自費參賽,沒有采訪。
翻車年年有,今年特別多,所以我想拿出來聊一聊。
1
時間回到1024那天,昏暗的觀眾席,我,史中,木子並排坐,眼前明亮的舞台上正在進行第一個破解挑戰項目:「有物理防護和硬件加密的雙重保護,為什麼我的虛擬貨幣還是丟了?」
簡單翻譯過來就是:破解兩個智能保險箱和一塊加密硬盤,拿到裏頭的密鑰。之所以扯上虛擬貨幣,是因為現實世界中,確實有人會這樣保管加密貨幣的密鑰。
左邊是選手,右邊是要破解的保險箱
主持人蔣昌建宣佈挑戰開始,倒計時20分鐘,三位選手站到電腦前,一位開始劈里啪啦敲鍵盤,一位站在旁邊協助,另一位戴上藍色橡膠手套。

如果按照“正常劇情”,他們會先破解A品牌智能保險櫃,拿到裏頭紙條上的第一串密碼,再破解另一個B品牌智能保險櫃,拿到裏頭的加密硬盤,再現場破解它,拿到第二串密碼。
就是這兩個保險箱
據評委透露,最後一個破解加密硬盤的過程“相當精彩”,因為涉及到硬件層面的破解,要現場電焊,視覺效果很好。
不像純軟件破解項目,觀眾只能看到選手啪啪啪敲鍵盤。不知道的還以為選手在玩金山打字通。
咳咳……讓我們回到嚴肅的比賽現場。隨着挑戰進行,會場裏響起詭異而陰森的音樂,頗有些諜戰片的氣氛。
不到兩分鐘,戴手套的選手默默走到舞台右側的兩個保險箱前,輕輕點按密碼。
”啊?這麼快?”主持人蔣昌建驚呼。

觀眾席,中哥扭頭對我説:“今年看樣子還挺順利。”我説這畢竟是第一個項目,主辦方肯定得把最穩的一匹的放在第一個,開門紅嘛……
話音剛落,台上傳來一個聲音:“選手好像遇到了一些網絡問題……”台上的評委説。
嚇得我們兩個毒奶趕緊閉嘴了。
原來剛才選手並不是過來破解,而是發現智能保險櫃連不上網,過來看看啥情況。
五分鐘過去了。怕冷場,評委和主持人不停地説話。三位選手依然站在電腦前,臉色開始不太淡定,藍色橡膠手套也摘下。
又一個五分鐘過去了,又一個五分鐘過去了,保險箱還沒破開,硬盤沒拿到。
觀眾席,我身邊的一位媒體老師也調侃:“哈哈,我要是這保險櫃的廠商,肯定要出一篇稿子宣傳一下,連極棒選手都破解不了。”
這讓我想到當年央視的《正大綜藝》,一個老外挑戰撞碎鋼化玻璃的吉尼斯紀錄,結果拱了半天就撞碎一塊,給中國的鋼化玻璃打了個結實的廣告。
“中國的鋼化玻璃質量太好了”
“5、4、3、2、1……倒計時結束,很遺憾,挑戰失敗。”主持人蔣昌建説:“我們依然要給他們掌聲鼓勵”,現場響起掌聲,聚光燈打在三位選手身上,他們還沒緩過神,就依次和主持人握手,下台。
他們當時的尷尬,大概就好比你是一位秋名山車神,想當眾展示飆車神技,結果過了20分鐘,車引擎沒點着,觀眾還給你鼓掌和安慰。
“啥情況?不應該啊?”
按照常理,他們肯定有能力破解這幾款設備,並且一定是成功給主辦方演示過(不然不會讓他們上台),可是他們在台上呆了20分鐘,啥也沒發生。
有問題,肯定哪裏出了問題。
2
本以為第一個項目只是意外,結果意外接連發生,相當意外。
第二個項目是今年極棒主推的項目之一:極棒首創的利用AI技術特製口罩來欺騙人臉識別算法的CAAD挑戰賽決賽。
簡單來説,就是戴上口罩,騙過AI人臉識別系統,讓它把張三認成李四。
四組選手登台,來頭不小,有的來自清華北大這樣的頂尖高校,也有的來自螞蟻集團這樣的頭部科技公司,現場觀眾的心理預期一下子拔高。
挑戰項目有三關:
第一關是在150秒內,選手利用提前自制的特殊口罩,騙過舞台左邊自動販賣機的“白盒”人臉識別算法,讓它誤以為是主持人蔣昌建,再跑到舞台右邊,騙過自動取款機的“黑盒”人臉識別算法,讓它誤以為是特斯拉創始人埃隆·馬斯克。
評委在演示流程
這裏順道科普一句,所謂“黑盒”是指選手不知道系統內部識別人臉的運作方式,而“白盒”則是指它的內部運作模式和算法是公開的。就好比你要跟黑盒、白盒兩個人打架,“白盒”的武功門派和招數你是知道的,“黑盒”是不知道招數的,所以通常認為黑盒更難。(但是也不一定,説不定黑盒裝得很神秘,其實菜得一逼)
第二第三關難度依次遞增,口罩遮住臉的面積由第一關的3/4依次降為2/3和1/2——遮住的部分越少,偽裝難度越高。
同時,偽裝的目標也變成了“黑寡婦”、“美國隊長”、“川建國”和“普京”——外國人的臉和選手差異更大,更難偽裝。
第一組選手上場,倒計時150秒開始。
咚咚咚… …詭異而陰森的背景音又響起… …不得不説這舞台燈光音效做的還挺好。
氣氛烘托得挺好,但是比賽結果讓人大跌眼鏡:四組選手只有一組挑戰成功第一關,成功騙過人臉識別系統,其他三組的偽裝全部撲街,要麼機器毫無反應,要麼人臉識別置信度始終在0.4上下徘徊(要超過0.5才能通過),眼看着150秒倒計時結束,宣告失敗。

AI認為選手是蔣昌建的置信度是0.466238
比賽中途,台上評委幾次要求重新挑戰,並且重啓機器和現場燈光,以降低環境干擾,可是試了好幾次,結果差不多。
評委的種種舉措讓觀眾席的我意識到一個問題:選手在台上的表演一定跟之前他們測試的情況差別很大。

一組選手正在嘗試偽裝成馬斯克
最終,由於第一關只有一個隊伍通過,所以第二關和第三關沒有繼續進行,觀眾們沒有機會看到選手用口罩變臉“川建國”。
從初賽一路篩選出來的最優秀的4組選手,難道就這?不應該啊。
直覺告訴我,肯定是哪裏出了問題。
3
下午,“5G網絡劫持”項目登台,選手來自我們的老朋友騰訊玄武實驗室。
也許是被上午一路翻車的陣勢嚇到,他們跟主辦方申請把演示過程挪到場外。
按照“正常劇情”,他們將在不觸碰目標手機的情況下,劫持手機和附近5G基站的通信網絡,給目標手機下發一條任意號碼和內容的短信——這意味着黑客利用這個漏洞的人可以冒充你媽、銀行、警察蜀黍或者別的任何一個號碼給你發短信。
挑戰開始,倒計時20分鐘。
根據現場評委的描述,他們這次發現的漏洞相當厲害,屬於基礎通信協議的設計缺陷,這意味着這個漏洞並不存在於某個具體的設備,而是廣泛存在於基站和手機之間的“交流方式”上。
就像我們之前提過的“插座打架”問題,你很難説是插座還是插頭有毛病,而是整體設計的遺留問題。

這也就是説,不論目標用的哪款手機、也無論是移動、電信還是聯通的網絡,不論基站是哪個廠家生產的,都在這個漏洞的射程裏。
… …咚咚咚… …詭異而陰森的背景音又響起… …(氣氛還是要造一下的)
可是十分鐘過去了,現場大屏幕裏,兩位選手開始皺眉,抿嘴,破解進度似乎陷入停滯。
選手要求場外評委重啓了一次目標手機,問題依然沒解決,他們似乎一直在交涉着什麼。
評委手上是目標手機
“選手可能遇到了一些困難,提出了一些不太合理的要求。”場外評委諸葛建偉説,選手要求檢查一下目標手機,看看出了啥問題。但立即被場內的評委“TK教主”於暘拒絕:“按照規則,選手不能接觸目標手機。”
時間又過去幾分鐘,距離倒計時結束越來越近,比賽項目似乎沒有進展,選手再次提出想把目標手機連上電腦看看出了啥問題。
“等一下,等一下!諸葛(建偉),選手他們是要求插上線是嘛?這個肯定是不行的!”數據線連上的前一秒,被場內的評委TK厲聲喝住。
右下角是場內直播台
我猜當時坐在內場的TK內心一定很糾結,因為這倆選手來自玄武實驗室,説直白點就是TK教主門下的小弟,TK本人也一定親眼看過他們成功破解。可是,現在他是極棒的評委,必須得保證公平公正。
“選手你可以讓評委幫你看看出了什麼問題,但是選手自己絕對不能接觸手機。”他説。
20分鐘倒計時結束。
“那麼我們宣佈,這個項目挑戰失敗。”TK説完,若有所思,似乎還在琢磨,到底哪兒出了問題。怎麼搞的,怎麼搬到場外也翻車?
“TK教主”於暘(右一)
4
要來了要來了,“形同虛設的車鎖”項目開始了。顧名思義,某款智能汽車,搭載藍牙車鑰匙,可是不巧,藍牙系統偏偏有個漏洞,選手可以在不用鑰匙,不接觸車的情況下直接用一部手機打開車門。
評委在場外停車鎖門,車鑰匙送到會場裏,選手上場,倒計時20分鐘開始。
據場內評委介紹,如果不出意外,整個過程大約在5~8分鐘左右,只需一台手機,手起機落門開鎖。
可是不到2分鐘,選手的表情就開始凝重起來。
熟悉的一幕出現了——“信號出了點問題。”選手怎麼也連不上汽車的藍牙——連不上藍牙,也就沒辦法進行下一步的破解。
… …咚咚咚… …詭異而陰森的背景音響起… …(音效師傅又上班了)
紅色的倒計時一秒一秒地跑着,選手站在原地猛滑手機,有些不知所措。
5
一切像是有預兆。
開場致辭時,極棒創始人“大牛蛙”王琦提前打了預防針:“假如現場挑戰出現各種意外甚至事故,希望大家能諒解……”
從2014年開始,幾乎每年的極棒都不可避免地出現各種意外,王琦都被搞怕了,每年結束時,他都連連跟現場觀眾和選手道歉。
有一年比賽地點選在香港的郵輪上,結果船出了海,信號不好,許多項目受影響,之後極棒再沒上過船。
最初,大家懷疑是有些廠商害怕自家產品被現場破解,爆出負面新聞,於是趁着比賽進行時臨時關掉產品服務器,或者派人來現場干擾——但這只是猜想,沒人拿出證據,也沒逮到現場干擾的人。
後來極棒乾脆把所有破解的目標產品的品牌都打上碼,減少廠商們的顧慮。
可是現場“翻車”的情況依然存在。
“這是一場所見即所得的比賽,沒有排練,沒有預演,一切都是真實的……所以待會兒挑戰無論成功或失敗,大家都要給予選手掌聲鼓勵……”蔣昌建主持過至少三屆極棒大賽,他也有經驗。
今年極棒的頭一天晚上,我提前去過現場,當時導演正好在走台,調試燈光,他指着頭頂招呼燈光師傅:“這個燈明天要關一下,別影響選手。”他也有經驗。
可是“黑天鵝”還是出現了。
這個場子像是有一個幽靈籠罩,隨時給選手們套上一個“翻車buff”。
6.啥情況?
謝幺:“真相有很多個!”
1)玄(dao)學(mei)
當天下午,為了證明實力,玄武實驗室拉着一羣記者,當着我們的面又完整演示,過程非常順利,3分鐘不到就完成,一洗“翻車之恥”。
用號碼20201024發送的短信:Hacked by tencent xlab
“我只能用玄學來解釋了。”玄武實驗室的馬卓告訴我,上場之前他們自己試了起碼有十七八遍,一次也沒失敗過。
**“哪怕是正式上場前的兩三分鐘前我們都還在試,都是成功的。”**可是等到倒計時一開始,目標手機的信號就莫名其妙開始斷斷續續,就跟沒網似的。
等到倒計時結束,宣佈挑戰失敗,又過了幾分鐘再試,又好了,見鬼!
“看來這真的只能用玄學來解釋了。”我當時甚至懷疑是他們起的這個隊名影響了運勢。
“有沒有可能是攝像師直播用的攝像機或者別的無線傳輸設備干擾?”我問馬卓。
照現在看來,如果正式上場前後都能成功,唯獨正式上場時失敗,那直播攝像機的無線設備很可疑。
“我們沒有證據,所以不能這麼説,雖然也不排除可能性。”馬卓説。
2)現場觀眾影響
第一個上台嘗試破解保險箱和加密硬盤的選手鄧丁通告訴我:“剛一上台時我用電腦連WiFi,圖標轉了七八秒才連上。”當時他就感覺哪裏不太對,“通常密碼是對的,一兩秒就能連上。”但當時已經站在舞台上,就沒想那麼多。
比賽倒計時開始後,他們發現網絡非常卡,“發一個數據包到服務器響應需要30秒左右。”後來路由器重啓了一次,有一段時間短暫連上了一會兒網,“後面就怎麼都上不了。”
他説,下台後他們很不甘心,把保險箱搬到後台的過道再次嘗試,發現保險櫃一分鐘不到就破開了。弄得他們不知道該開心還是難過。。。。。。

鄧丁通當時拍的照片
怕我不信,他還發來視頻
看比賽時,我和一個無線電安全領域的朋友聊起翻車這事,他掏出手機,打開一個軟件:“你自己看看現場有多少設備的無線信號干擾。”
鄧丁通告訴我:“原本他打算把破解兩款保險箱和破解加密硬盤分成三個項目報名,但是為了現場效果,就把加密硬盤鎖進保險櫃,做成連環破解,沒想到……”他説為了準備硬盤破解的項目,他提前兩個月就開始準備,結果因為保險櫃沒打開,白費了兩個月功夫。
在破解藍牙車鎖的項目裏,選手也一度連不上目標汽車的藍牙,當時選手就猜測,可能是汽車車鎖的藍牙被附近圍觀的吃瓜羣眾給搶先連上了,又或者是受到路邊的共享單車藍牙鎖信號的干擾。
可是在工作人員嘗試清場之後問題依然沒解決。(當然也有可能是圍觀羣眾並沒有按要求老老實實關掉手機藍牙)。
當天上午,還有一個黑進4G信號基站的項目,儘管最終成功了,卻歷經波折。
正常劇情是:現場擺了一個皮基站(專業術語真的就叫皮基站,是一種比微基站更小的基站……)選手先黑進這個4G基站,再劫持連接了這個基站的目標手機的網絡數據。
結果一上來,現場觀眾的手機信號也被“吸附”上去,而這個皮基站只能承載40多個設備,直接把目標手機的信號給“擠”掉了,連不上網了。
選手內心OS:當時我就慌了啊……
等好不容易連上,選手又發現基站還連着很多現場觀眾的手機,目標手機的數據被淹沒在觀眾老爺們上網的數據流裏。
“有聊微信的,有上網頁的……”選手説可以看到許多觀眾的網絡數據,但不敢亂翻……怕侵犯隱私。
主持人蔣昌建趕緊招呼現場觀眾和台上的工作人員關掉手機,選手和評委又臨時想了個主意:把基站和桌子放進鐵桌子底下,利用桌子鐵網形成的簡易“法拉第籠”來屏蔽信號干擾,這才讓項目順利進行下去,最終演示成功。
當天還有一個外場項目也受到吃瓜羣眾的影響。
選手的目標是用一台自制小設備干擾特斯拉自動駕駛系統的毫米波雷達,讓汽車直接撞牆。
最初的幾次嘗試,汽車的自動駕駛系統開到離牆3~5米處就會自動停下來。選手當時挺懵逼:啥情況?試驗的時候好像不是這樣。
後來他猜測可能是站在附近圍觀的羣眾太多,從而觸發了特斯拉的圖像視覺系統。
旁邊還有不少人騎車路過
根據現場的描述,特斯拉的自動駕駛系統對於正前方的物體主要以毫米波雷達作為決策依據。是直接開過去,還是剎車,主要是雷達説了算,但是一些情況下,圖像視覺系統的決策比重會提高。
在工作人員把圍觀觀眾疏散之後,選手比了個OK手勢,示意開始。
其實還是有一些觀眾
這一次,汽車順利撞牆。
3)燈光
至於那些和光學有關的項目,炫酷的舞台燈光、屏幕光基本是他們的剋星。
就拿下面這張“CAAD口罩變臉”項目的照片來説,選手的臉在人臉識別系統的攝像頭裏大半邊都是白的,嚴重曝光過度。
蔣昌建老師表示:幸好沒成功,這TM也太醜了。。。
具體對比賽有啥影響呢?這裏簡單科普一下“口罩變臉”的原理。
眾所周知,AI識別人臉是通過特徵點來識別的,大概就像這樣:
這意味着,要讓人臉識別系統把選手誤認成蔣昌建,並不需要真的相似,只需要命中足夠多的特徵點即可。
順道説一嘴,其實人類也是通過特徵點來辨認的,只是一般情況下大家沒意識到罷了。比方説下面這兩個人,如果拿去跟真人照片來對比,哪哪都不像,可你一眼就能認出他們是誰——因為命中了你腦子裏“人臉識別系統”的關鍵特徵點。
比賽現場有一組的口罩完全是花的,幾乎看不出是人臉,但它依然能讓人臉識別系統辨認成某個人的臉,就是因為戳中了AI人臉識別系統的“點”。
可是,現場的舞台燈光和屏幕光會改變這些特徵點。
一位來自清華大學的選手告訴我,對他們來説,如果只是找到一張圖片,直接扔到人臉識別系統裏騙過AI,一點都不難,可一旦要把圖案打印在口罩上,再通過一個攝像頭去採集口罩上的圖像,情況就變得複雜和失控。
“不同口罩材料的反光程度、顏料的色差,都有影響”,而且,圖片打印在口罩上,要考慮口罩和臉的弧度,再加上現場燈光的影響,很多關鍵特徵點就會發生改變。
在現實中,哪怕是同樣一張臉,同樣的燈光,僅僅是照射角度不同,最後呈現出來的樣子都可能差別很大,更別説舞台上完全不可控的燈光。
2017年的極棒大賽上,選手小灰灰用一張A4紙破解虹膜識別系統,當時他就很機智地用了一個紙箱子,把手機塞進紙箱子裏識別,避免了現場光線的干擾。
以上干擾因素僅僅是我的個人猜測,很難證實也很難證偽。總之,種種原因把2020年極棒舞台上的成功或失敗永遠烙印在時間軸上。
7
在極棒會場,一個朋友見到極棒的創始人大牛蛙“王琦”,跟他打招呼:“今年比賽辦挺好啊”,王琦嘆了口氣微微搖頭:“嗨,太糟糕了”,禮貌性地寒暄兩句,就扭頭出去抽悶煙了。
作為創辦者,他對它有期待,每年都不夠滿意。“對不起,我們這次做得太差了!”“今年有我們(主辦方)的問題”……他每年都這麼説。
但其實作為觀眾,老實説,我覺得整體觀感還不錯——正是因為有成功有失敗,所以才有懸念,才有看頭。就像徒手攀巖,它的魅力就來自於稍稍失足就粉身碎骨。高空走鋼絲如果挪到地面一米,就沒人看了。
從另一個角度來看,“翻車”證明極棒足夠真實。
**人們總喜歡把黑客和搖滾在精神層面聯繫起來,真·搖滾絕不假唱,哪怕會聲嘶力竭破嗓跑音。**在這個意義上,黑客的舞台也應該是這樣,有成功有失敗,有意外,但必須真實。這一點極棒做到了。
中哥知道我要寫極棒翻車的車,羞射地叮囑我:“你可別傷了大牛蛙的心喲。”

那就乾脆聊聊他吧~
大牛蛙王琦2014年開始做極棒,他一直想讓黑客“破圈”,被廣泛大眾認識和理解,想讓網絡安全意識滲透到廠商和普羅大眾的意識裏。
他也一直在思考怎麼定義黑客,“既不想神化黑客,也不想放大威脅”,去年年底他想到一個詞:醫生。他覺得黑客可以是醫生。
“漏洞並不是因為黑客的出現才存在,恰恰是因為黑客的出現而被修復。”他説。
剛開始的幾年,極棒被一些廠商認為是“亂搞”、“砸場子”、“爆負面”,後來也慢慢被安全行業和廠商接受,央視還和極棒合作推出首部黑客紀錄片《我是黑客》。

“極棒”把黑客破解做成一場“秀”,一場有主持人解説、有現場觀眾,有直播的演出,這是開創性的。翻車的本質也在於此,它承載的東西太多了,既是比賽,又是表演,又要代表一個羣體做自我表達,還要兼顧商業……
他們要把實驗室裏的技術研究搬到環境複雜的舞台上,要兼顧比賽的公平性、要考慮觀賞性,要合規,還要和廠商、網絡安全監管部門溝通協調漏洞如何處理 … … 很難盡善盡美。
但他們就這麼一年一年,一點一點摸着石頭往前趟水。寶寶心裏苦,但寶寶不説。
今年開場致詞時,大牛蛙説現在網絡安全已經成為大學畢業薪酬最高的專業,“這裏我不想太謙虛,這裏面應該有一點點極棒的功勞。”
他説:“這個世界總有這樣或那樣的缺陷或漏洞,我們必須承認,我們這個世界並不完美。”
我們也得承認和接受極棒的不完美。翻車嘛,很正常,翻翻更健康。
事實上,極棒賽場上“翻過的每一輛車”,都是它的勳章,是它在用肉身排雷的鐵證,是它為網絡安全“破圈”走向大眾做的努力,受過的傷。
也許若干年後,極棒的主辦方會把現場的干擾問題統統解決好,每個項目都順利進行,黑客展示的舞台也越來越多,那時我也許還會想念剛辦沒幾年時,那個讓眾多黑客翻車的舞台。
8
選手也在慢慢適應舞台。
這些安全極客們以前只是埋頭倒騰技術,做出個PoC(概念驗證程序),能證明漏洞存在就行,未來要出圈,讓更多人瞭解、理解自己的職業,就得要多考慮現實環境中的複雜性。
鄧丁通偷偷告訴我,今年雙十一,他下單了一台手持頻譜儀,以後參加活動都先檢測一下現場信號是否有干擾。
但是這些設備能不能100%確保下次不翻車呢?不知道。
所以我覺得明年各位黑客朋友如果上極棒,可以先燒一柱香。
順便提一嘴:
1.B站和騰訊視頻都有比賽回放視頻,搜“GeekPwn2020”可看,時長約11小時。
2.文中圖片有我自己拍的,也有現場攝像師拍的,也有的截取自騰訊視頻回放,所以有的高清有的是AV畫質。
3.極棒有個雲安全挑戰賽,這次的冠軍隊名是一串Emoji,有沒有淺友能破譯出來啥意思?歡迎留言,抽取答對者送出GeekPwn貼紙、紀念口罩、斜挎包和主題鑰匙扣~