李家同他是怎麼拿到電機及計算機學位的啊-_-

台灣教育最大的問題,就是像他這種廢柴竟然可以當教授啊。

先前我批評過李家同的破爛英文能力。說憑他這種屁英文也敢教訓別人英文不好。可是其實我們知道台灣本來就不重視專業,既然連美語補習班找外籍老師都不管人家是幹嘛的,只要臉是白的,就算他學歷只有九年級等級然後在自己國家是流浪漢,在台灣照樣補習班搶著要,付出高額的薪資請這種洋人教英文。在這種環境裡,連TESOL都沒摸過的李家同在那邊寫英文文法書,還會有人笨到去買,這也就不值得訝異了。頂多他就只是又一個自我感覺良好的超級什麼人。

但今天我真的是不行了,沒想到李老伯伯的蠢力上限還遠超出我的估計!

一切都從這篇談資訊安全的文章開始。

在此先做個背景介紹。據他本人的自我介紹,這位先生可是在世界知名的一級強校UC Berkeley拿到電機與計算機學系博士學位的強者!所以他談資訊可不等同於談英文或教育那樣是撈過界,這可是他的本科!

而雖然在之前這篇他談Alan Turing的文章被踢爆說他亂講,而且我還在當時說了像「英國得其Alan Turing,美帝得其Noam Chomsky,台灣得其李家同」這種話來挖苦他,可是當時假設他連Turing Machine這種事情也不懂也不過只停留在假設而已。畢竟要說一個全美十大名校的博士生竟然連自己學門的基礎知識都不懂,這假設還是下的非常大膽。

但這些都只是我個人在看過那篇經典文章之前的天真想法罷了。

再一個背景介紹,那篇文章於西元1996年7月23日刊登在聯合報副刊。說到那一年呢,也是我首次寫文章被刊登在雜誌刊物上,第一次收到稿費的時候。那一年也是學網的BBS上首次出現一個叫Foxx,很愛找人吵架的id的時代 XD

當時擔任靜宜大學這所全部都是女大學生的校長的李家同,早已天怒人怨名滿天下,也因此在這個WWW剛開始風行,人類即將一腳踏入網路世代的時刻,以他個人的專業背景,寫出這篇讓十幾年後的我們讀了仍然會為他的觀念大驚的經典文章。

全文如下(原文備份)︰

如何防止電腦駭客的入侵 李家同

 聯副讀書人找我寫一篇有關電腦入侵的文章,我之所以答應了,多多少少因為我對這個問題的確很有興趣,也滿在行的。

我必須為後頭我的言論先消毒一下,絕對不是我自己為了要酸他所以先故意講的他多厲害,然後再修理他。這可是他自己說他自己很在行的!

 首先,我要告訴各位的是,電腦駭客 (hacker) 是專門入侵電腦的人,這種人的特徵是年輕,對電腦已經到了瘋狂的程度,人際關係不太好,體育一定也不好。如果你身旁有這種年青小伙子在,他將來就可能是個電腦駭客。

哇哈哈哈,這傢伙連cracker和hacker都不會分啊XD 而且誰說當cracker的人就一定會「人際關係不太好,體育一定也不好」?

當然這不算是專業上的錯誤,這只能說是偏見而已。反正李老伯偏見很多,從對英文不好的人到不補習的人到有創意的人,對他來說都是社會的敗類都是沒有機會成功的廢物。在那個還不用otaku這個詞來貶視那種沉迷於電腦的人的時代,李家同也就是說他們是cracker(然後還跟一般的外行人一樣誤殖為hacker,原因大概也一樣是因為hacker的音譯「駭客」聽起來就像是個愛入侵別人電腦的恐怖份子),然後把現在會對otaku的所有負面印象都倒到這種人身上。

 一般人都以為入侵電腦是為了想得到什麼好處,其實不然,入侵電腦這些怪才只有一個目的,滿足自己的慾望,任何隱而不見的東西,他們都想去看,越是設下重重關卡的電腦系統,他們越要侵入。

 這些駭客的本領也的確驚人,美國政府的電腦系統,他們破解時,簡直易如反掌,有一次,有一位女的駭客,被國防部請去表演,她輕而易舉地在國防部官員們前面表演她如何能夠得到進入電腦的密碼。

要說cracker的話,這點倒是沒有錯。不過就好像漫畫裡的主角宿敵,打贏對手不是為了征服世界而只是為了成為最強,這種心態不需要專業人士也能了解。

 既然『讀書人』要我寫這方面的文章,我就在這向各位解釋一下電腦安全的基本原理。我要聲明,我是假設你的電腦裡的確有極重要的資料,絕不容許外人侵入。因此你的電腦裡如果沒有這種資料,當然也不必採取這些非常嚴厲的措施。

為什麼我覺得把這個代換成人腦就會變成一品笑話呢?XD 「如果你的腦裡有極讚的智慧,那當然不容許外界污染,可是如果你的腦裡跟某人一樣裝屎,那不但不用擔心被外界污染,還怕你去污染外界」XD

 首先,我們必須使能夠碰到電腦的人越少越好,而且我們主機要有能力隨時判斷使用我們電腦的人是敵是友。

 我曾在空軍服役過,空軍戰鬥機,不分敵我,在雷達幕上,都是一個小白點,因此我們裝上敵我識別器,使雷達能夠分辨敵我。敵我識別器是一個自動接受和發射訊號的機器,每天我方的空軍隊都會發出一個指令,將所有我方的戰鬥機的敵我識別器,都調到同一的頻率,同時雷達也調成這一頻道,如此,一旦我方的軍機收到雷達的訊號,就會發出一種訊號,雷達上就會在這架軍機的白點下面顯現一個外加的白點,也就是說,凡是沒有黑點的飛機就是敵機。

 這種敵我識別器的觀念也可以使用到電腦安全系統上的,我們一定要規定只有特定的終端機(其實,也是電腦)才能和我們主機來往,對於每架這種特定的電腦,我們應該在上面裝一個特別製造的硬體,任何時間,主機可以向所有連上線的電腦終端機發出訊號,如果的確是我們認可的電腦終端機,這架終端機會有所回應,而如果不是被認可的終端機,就不會有回應,這等於是一種敵我識別器,用這種方法,我們可以很容易地找到所有的外來入侵者,因為外來入侵者絕不可能坐在被認可的終端機前用鍵盤。

其實我讀到這裡的感想是,這位老兄是不是連port都不知道啊…?

為什麼可以直接把主機當成是像「雷達」一樣四處接收資訊的儀器呢?就算是在那個1996年的時代,你的server不想做什麼服務,也只有把相對應的port關掉,只開那幾個讓別人連的port就好啦。也只有對外開放的port才需要做防護。

啊或許我錯怪他了。那個時代只用Windows 95或Windows 3.1的人,怎麼可能會有port的觀念呢?這個系統全無這方面的防護機制可言啊。

而且他說什麼裝敵我偵測器也很奇怪。就算不多探討這個機制的荒謬程度,其實只要想想,從1996年至今又過了十幾年,這十幾年來有哪家智障公司曾經開發過利用那種機制的資安防護系統嗎!?如果它是有效的,怎麼都沒人敢用呢?況且我想到一個當代很有效的殺人法(就算是現在,也還是具有一定殺傷力,不過殺的多半可能是電話吧XD),DoS。

它不是說要在允許使用的終端機上頭裝硬體然後定期狂丟廣播訊號,看是不是認可的再決定要不要回覆嗎?那表示這個終端機必須一整天都處在等待接收網路上這類訊號的狀態,這樣它才可以回覆發訊號端告訴人家我這是合法使用者嘛。好了,那如果我是一個惡意攻擊者,我知道你這個終端機的ip,然後我用整個lab的所有電腦對你這台終端機丟一樣的訊號轟炸,每台電腦一秒都丟個好幾次,那會發生什麼事呢?

你這台本來是設定在要做合法連線的終端機,就在忙著接收如潮水般湧進的垃圾訊號中,原本來自你要連的主機server來的訊號反而接收不進來了。啊你說系統沒被入侵啊,對啊,可是它被打到不能用了,這樣跟被入侵的差別只在資料有沒有被偷走吧?

我完全不能理解這種要做client-server連線的安全機制,竟然有由server端當發信方然後client端當接收方這種事情。只要有一點知識的人都知道一向都是client端丟request給server端吧?還叫server端不斷廣播訊號,等待那天有個想連過來的client端回應咧,神經病。

說難聽點,以下的防護機制更完美呢︰使用者要連線前,打電話給管理員說他要連了,管理員再開個私人通道讓他連進去,連完了通道切掉。你看這樣不就不怕被DoS嗎?

 以上所講的是電腦聯接出去的終端機,終端機必須是特定的,否則就不准用,現在我們可以要求得更嚴格,在這些終端機上工作的人也必須是我們認可的,一般人只用密碼來作身份認定,我們可以要求得更嚴格,舉例來說,最好我們可以要求終端機要插入一張磁卡才可以啟動,更可以規定使用者必須也插入他上司的磁卡,使入侵者更難發揮。

既然要那麼嚴格,那為什麼不乾脆規定使用者必須整個人通過一堆包含電網、機槍、鱷魚池構成的保全機制,走進戒備森嚴的機房,在背後有監視攝影機的觀察下直接操作伺服器啊?既然都規定要磁卡了,那幹嘛還要人家從遠端連過去,直接叫人家來機房不是更快?

而且這裡就牽涉到硬體防護的終級境界了。行內有句話說,基本上只要讓人直接接觸到主機,你再強的防護都等於是被破解了。就算你搞什麼磁卡防護,還是什麼必須兩個人同時按特定鍵才能開啟的鎖,還是要射精驗DNA才准使用的生化機制都沒用。反正人家不爽就給你斷電,你整台主機就掛了。或拿個榔頭打爛機器效果也一樣。

所以其實我覺得上頭他講的那個什麼女生輕易破進國防部電腦沒什麼啊。如果給定的條件已經是讓人家可以碰到那台電腦了,那會被破解也只是意料中事吧。這種事普通人也辦得到啊,像是人家電腦給你鎖BIOS密碼,你只要給他電池抽走,BIOS一重設密碼還不是就沒了。

 現在我要談軟體了,軟體中最應注意的是所謂操作系統,操作系統有點像一個大樓的管理制度,假如有小偷想要侵入一間大廈,他一定不能夠走大門,他必須走小門,而且他必須很瞭解大廈的管理制度,如果他不清楚管理制度,就絕對不可能進入大廈的。

其實這整段是廢話。就跟你說想要上廁所,你就要懂馬桶怎麼用一樣。

 在過去,每家電腦的操作系統都很複雜,他都不公佈它的設計原理,原始碼更是絕對保密,如果大家都用這種操作系統,要侵入就會很困。像迪吉多公司所用的VMS操作系統,就是很難入侵的系統,因為很少人知道它是如何寫成的。

李先生確定它沒什麼被入侵是因為它很難被入侵,還是根本沒什麼人在用它?

真的要說嘴的話,DOS最難入侵啊,因為只要能接觸到C>的人就什麼都有了,完全沒在關的門是怎麼需要開鎖?

 可是後來很多人開始使用UNIX操作系統,UNIX的一大特色就是人人都可以瞭解,可以想像的是一旦使用UNIX,要入侵就容易得多了,我的學生經常告訴我他們如何利用UNIX來搞鬼。

哈哈哈,那個時代要幹掉Windows 95怎麼打?只要用知道對方的ip,然後用ping的就好。用ping的持續丟超大封包,自然丟到它炸掉丟到它斷線,就這麼簡單。就是因為那個時代微軟的Windows好打到連智障都知道怎麼打爆,所以根本不需要跑去跟教授炫耀說他哪天又幹掉了一台Windows啊。

李家同這笨蛋連基本道理都搞不清楚,難道學生會跑去跟他說早上吃了一顆荷包蛋嗎?

而且入侵Windows 95很難嗎?李家同一定沒看過人家玩過BO XD

 我們可以將操作系統分成兩類:封閉型和開放型的。封閉型的操作系統雖然有很多缺點但至少不容易被人侵入。開放型的操作系統雖然有很多優點,但極容易被人不法侵入,而且侵入以後,常可以通行無阻,如入無人之境。我們如果要非常安全的電腦系統,就絕對不能應用開放型的操作系統。

話說李家同說的「封閉型和開放型」,到底是什麼呢?既然下面又花時間來講什麼開不開放原始碼,那就不可能是指是不是open source了。該不會是指「有沒有連上網路」吧?-_-

幹,那這個還用一個UC Berkeley的電機與計算機學系博士學位的教授來講嗎?「如果你的電腦不想被人從網路入侵,你的電腦就不要連上網路」,這話有任何的建設性嗎?

而且這年頭誰的電腦還不上網的?他意思是叫大家把網路線拔掉就對了,最安全。這算哪門子講資訊安全?

 關於軟體,還有一件重要的事,就是原始碼的問題,我們通常都用高階語言寫程式,這種程式就是所謂的原始碼,原始碼經過編譯以後變成低階語言的程式,原始碼是可以看得懂的,低階語言的程式看不懂。因此原始碼必須加以妥善保存,一旦原始碼被駭客偷走了,他就可以知道所有的保密措施,要破解,也就易如反掌了。

……什麼叫做原始碼被知道就會被破解的-_-

話說基本的symmetric encryption algorithms,也就是用同一組key將文件加密並解密的演算法,世界上知名的像DES、RC5、IDEA、AES、Blowfish等等,哪一種不是把整個演算法都公開給大家看的?可是它們是有因為這樣就被破喔?

喔那個時代是有個「大家來破解DES」的計劃啦,只是那個時代電腦速度慢,所以號召全世界有上網的電腦加入,每台都分到一小塊區塊來算,而所謂的算也就是用暴力法硬try,看要花多久時間才能破。

既然原始碼都給大家看光了,幹嘛還要暴力破解啊?那當然是因為沒辦法直接破啊。就算是這種最基本的加密法,你也需要一組key來配合,把文件跟那組key配在一起運算以產生加密後的資料,之後再用那組key去把加密的資料解回去。啊你光有個原始碼,找不到key的話是怎麼破解啊?人家的key又不會笨到寫個固定的在source code裡,當然是隨機產生後再另外存成一個密碼檔,有需要再去調用來加密解密啊。

李家同該不會以為所謂的加密解密就只有那種最基本的hash function,推理小說裡最愛用的手法,也就是有個對照表,A對應S、B對應E、C對應X……然後用那個表去查ABC就可以得出SEX的?他該不會連最最最最最基本,那個時代的阿宅打嘴砲最喜歡用的BBS的使用者登入系統使用的演算法,都完全沒聽過吧?

幹,那如果我跟他說那個時代不光是用你用一組key來加密解密的演算法,而且還有你加密用一組key,解密還是用另一組key的演算法喔,他不知道會不會以為我在說什麼天方夜譚?

「有原始碼可以看破解就易如反掌」這種話根本只有完全不懂資訊安全的超級外行人才講的出來啊。而且反過來,正是因為原始碼開放給全世界人看,如果source裡頭有任何一丁點會造成安全漏洞的問題,都會被人給抓出來做修正。因為等於是全世界人都在幫忙把關啊。反而是那種不開放source的系統,誰知道設計者在裡頭搞什麼鬼,有沒有偷偷安裝後門進去啊?哪天中國開發一套金融系統,你看不到原始碼,你就不怕他在裡頭偷放什麼木馬把你資料偷光嗎?

而且最好是開放原始碼的Unix會比不開放的Windows系統好破啦。就算是Windows XP,在上SP2之前,只要用net use就可以輕易殺破整間辦公室裡九成以上的電腦。我以前都用這招來遠端幫人修電腦的,先入侵進去再把要用的工具塞進去,丟個script讓它在定時啟動,人還不用過去咧。李是不知道當年不但是全無防禦措施的Win95/98,連Win2000和WinXP都好破到一點挑戰性都沒有吧?

如果李家同認為只要看得到原始演算法就等於可以破解,那這裡是AES演算法的官方文件,請他易如反掌的破給大家看看吧。

事實上目前世界上被廣泛使用的演算法幾乎都是把演算法開放,因為大家都看過都認可沒有問題啊我們才會敢用啊。而且其實到目前為止絕大多數對這種演算法的密碼破解法都是用try的。就跟電影一樣啊,大部份人喜歡用生日當密碼,所以用生日猜就可以破了。且就算是再強的加密法,使用者的密碼設定總有限制,用電腦硬try的速度跟它拼,總有一天用暴力法猜的出來啊。

所以其實所謂的安全,只是相對性的。如果當代的電腦去try這系統需要2年才能猜到金鑰key,可是所儲存的資訊是半年後就不需要的,那這個系統就能稱之為安全。但當電腦速度快到只需要try3個月就能找到key,那這套系統就不安全。其實真正要涉及的什麼後門的機會實在很低,絕大多數就是看被儲存的資料的生命週期拿去比找到金鑰的時間,看哪個比較長而已。

 程式一旦執行,原始碼就不需要了,我們可以用兩台電腦,一台電腦裝上可以執行的程式,但不含原始碼,另一台電腦只裝上原始碼,要修改原始碼的人非常有限,通常也不需要對外開放,如此一來,要偷原始碼就很困難了。

實際上問題在機器上有沒有原始碼嗎?啊他前頭不是說了「原始碼經過編譯以後變成低階語言的程式」?(而且其實他講錯,最後是編成機器碼來跑,低階語言只是不需要經過compile,並不是電腦直接就看得懂)所以問題在原始碼有沒有放在那台電腦上給人看嗎?當然不是啊。

有原始碼有什麼用?入侵者又沒有要看,而且偷了又要幹嘛?如果那是open source的系統,啊自己去官網抓程式來就有的看了,何必非得要去偷?況且那台電腦上就算沒有原始碼,只要有編譯器,啊入侵的人是不能自己寫code再丟給compiler去編喔?事實上以前就有些案例,是入侵者攻進系統之後,還特地將裡頭的基本指令都重新用自己寫的code重新compile一遍,如此這些程式就都帶有後門,以後他再入侵就可以大搖大擺的走進來了。也因為這樣,市面上許多資安書籍都會建議當發現系統被入侵之後,要注意這些程式有沒有被偷改掉之類的,如果行的話最好整個重灌。而且對於已經上線的重要主機,如果可以不放compiler的話其實也可以不要擺。

 最近大學裡流行兩本書,一本是〞電腦叛客〞(高育松譯,天下文化出版),另一本是〞捍衛網路〞(白方午譯,天下文化出版),這兩本都是介紹電腦駭客的真實故事,讀者不妨去看看這兩本書,然後再來看我的這篇文章,你一定會發現要防止電腦駭客,並非難事,任何人將自己的電腦連到國際網路上去就不該怪別人來侵入你的電腦,任何人用開放型的操作系統,也是自作自受。

意思是說那兩本書也是地雷,他就是讀了那兩本書才會錯誤觀念一大堆就是了。

可惜那時代還沒有Hacking Exposed可以看。不過我覺得就算給他看他也看不懂。基本知識完全是零啊。

 我也希望讀者們想一想一個大家似乎從來不問的問題:〞為什麼電腦駭客從來無法侵入金融機構的電腦系統?〞假如我們銀行的電腦系統被外人入侵了,我們大家都完了,我們辛辛苦苦一輩子的儲蓄可能毀於一旦。

 我認為我們不該過份地自己嚇自己,我們也該聽聽電腦專家的說法,他們會告訴我們,大多數重要的電腦都是非常安全的。

金融機構從來沒被破過嗎XD

而且我反而認為我們不該過份地自己騙自己,比方說自己明明就很沒知識,卻硬要裝什麼對資安很在行,結果也不過是看了兩本地雷書而已。

話說我在那一年首度接觸網路系統跟資安等等,可是到他那篇文章刊出來的時候,我的資安知識就已經贏他了啊。我真的完全不知道他到底是怎麼拿到學位的,又不知道Turing machine,然後現在講什麼知道原始碼就等於系統被破的外行話…

該不會是其實他以前真的很厲害過,可是現在得了什麼老人痴呆症還是腦袋燒壞了,所以變成廢柴了吧?畢竟可是台灣頭幾位拿到IEEE Fellow的強者,以及NCR的重要人物呢!

跟這位一樣都是NCR(New California Republic)的重要人物!

我腦裡響起一句話︰「少年得志大不幸」。

在〈李家同他是怎麼拿到電機及計算機學位的啊-_-〉中有 37 則留言

  1. 我…看不完(…)

    還真是With Greater Power Comes Greater Stupidity啊-_-

    這傢伙當初到底怎麼變成大濕的??

  2. 他的成名作是 Symbolic Logic and Mechanical Theorem Proving,大學因為修AI的關係,所以小弟家裡有謎版。那個時代鑽研這種學問其實真的可以不用會計算機。有關他後來在報紙上發表的言論應該是學問沒有與時俱進卻又自我感覺良好的緣故吧!

  3. 喔喔 關於這個
    只要想想他取得博士學位的那個年代(1960年代)就知道為什麼了
    那個年代沒有廣泛的Internet概念 更別說OSI Model之類的東西了
    而他們做的研究大都是計算理論而非上機實作吧
    因為當時的電腦 他一天能碰一次就不錯了XD
    所以那一代的教授 大多理論比較強 尤其是物理數學方面
    他們可以跟你解釋電路的設計原理
    但是實際作就不見得會了(所以才對數位電路嗤之以鼻啊XD)
    還聽說過有教授不太用C的 因為他們那個年代是用Pascal之類的-_-
    他們這種就是理論可以寫一堆(好吧 也有例外啦XD) 實作都叫學生做啊
    所以我覺得他們沒有實作知識可以理解 但不太能諒解就是了
    (不過我要聲明 認真的優質教授也是不少的)(good)

  4. 不連上網路就不會被入侵的這不就跟王聖人理論的不玩股票就不會被套牢一樣嗎?

    可能中國人的思考都是這個方式吧, Turing真如他所願生在中國的話也許小學畢業就被當北七所以不准升學了-_-

  5. 是蠻可笑的文章, 但是也不能怪他, 因為他讀的是 EE, 不是 Computer Science. 所以我相信他根本沒有讀過 Unix Socket 這一類的書. 所以對於 Computer Network, Ethernet, Internet 的架構與概念是不正確的. 況且密碼學是一門專門的學問, 我遇過一些 PH D. level 的人, 如果是台灣人通常以為懂所有的事, 任何事情都有他自己的看法,但往往不是事實. 台灣的教改不也是改得不好嗎? 是不是李遠哲也撈過界了?

  6. 有句老話說: 君子不器。說”理想中”的讀書人,應該做什麼事都能勝任。李伯伯大概把這句話無限上綱,並實行於生活嘴炮中了 XD

  7. >>從1996年至今又過了十幾年,這十幾年來有哪家智障公司曾經開發過利用那種機制的資安防護系統嗎!?如果它是有效的,怎麼都沒人敢用呢?

    很抱歉,每個網卡的MAC位址都是世界唯一的
    就是可以用來辨別的依據
    許多無線分享器,
    是可以設定只允許某些MAC位址才能使用
    這個方法早就用到不要用了

    至於自然人憑證、網路ATM
    也是這樣概念延伸而出的
    怎麼說沒人使用呢?

  8. >……什麼叫做原始碼被知道就會被破解的

    李家同有說,原始碼知道,密碼就會破解嗎?
    沒有
    原始碼知道後,就可以找出系統漏洞
    自然就不安全了
    哪個駭客是破解密碼進去的?
    那他可以得諾貝爾獎了

  9. >>而且反過來,正是因為原始碼開放給全世界人看,如果source裡頭有任何一丁點會造成安全漏洞的問題,都會被人給抓出來做修正。

    當時(1996年),能針對系統核心碼作修正的人,並不多
    這些技術還算是少數人的領域

    再者
    你覺得你會把金融系統的源碼開放嗎?
    等到你把BUG修補好
    錢早就被領光了~

    開放源碼和不開放源碼的安全性
    是視系統的需求而定
    如果是國家的軍事機密
    你會用開放源碼的系統來作為國防機密的系統?
    可想而見,是不可能的
    李家同並不是全錯的~
    更何況,以現在的觀點批評十幾年前的概念
    真的是雞蛋裡挑骨頭

  10. > 很抱歉,每個網卡的MAC位址都是世界唯一的
    就是可以用來辨別的依據
    許多無線分享器,
    是可以設定只允許某些MAC位址才能使用
    這個方法早就用到不要用了

    這個方法事實上是沒用的,因為很容易假造 MAC address。很多網卡的 driver 甚至讓你可以自己設定你要的 MAC address。
    就算你不知道無線分享器開放了哪些 MAC address,只要偷聽過幾個封包,就可以知道哪些 MAC address 是可以和他講話的。所以這個方法事實上是沒什麼用的。

    > 哪個駭客是破解密碼進去的?
    那他可以得諾貝爾獎了

    事實上很多駭客正是用破解密碼進去的…因為很多人用的密碼都很容易猜出來。

    > 當時(1996年),能針對系統核心碼作修正的人,並不多
    這些技術還算是少數人的領域

    那時 Linux 已經蠻多人用了,我不覺得這算是「少數人的領域」。

    > 如果是國家的軍事機密
    你會用開放源碼的系統來作為國防機密的系統?
    可想而見,是不可能的

    除非你自己開發,不然你覺得開放源碼的系統比較安全呢?還是去和某廠商買他不讓你看始碼的系統比較安全?
    我們都知道,美國國防部現在大量使用 Windows,你認為他們會不會要求 Microsoft 提供原始碼給他們?
    事實上,Microsoft 的確有合作計畫,只要你和他簽約,就能取得他的原始碼。所以,即使是像 Windows 這種沒有開放原始碼的系統,能取得其原始碼的管道,仍是相當多的。

    基本上,我覺得這裡最大的問題是,照李教授的說法,只要你不開放原始碼,被入侵的機會就會降低,但是這是根本上錯誤的觀念。事實上,很多 buffer overrun 的 bug,或是 SQL injection 等入侵方式,都不需要取得原始碼就有可能被發現。認為不開放原始碼就不會被入侵,反而造成錯誤的安全感,反而會更不安全。

    舉個例子來說,李教授舉的 VMS,在他自己推薦的書「捍衛網路」中,就有提到它有一個「大到連卡車都能開進去的洞」。如果一個沒有開放原始碼的 VMS 都可以被人發現這樣的洞,那不是就直接打破他所說的「VMS 因為沒有開放原始碼所以很安全」的說法了嗎?

    順便一提,「捍衛網路」其實是一本不錯看的書。它主要是本小說(雖然是基於真實事件),並不是要講什麼資訊安全。當然它的時代背景已經過時了(它描述的是 80 年代發生的事),但是做為小說來看,仍是很有趣的。

  11. 「很抱歉,每個網卡的MAC位址都是世界唯一的
    就是可以用來辨別的依據
    許多無線分享器,
    是可以設定只允許某些MAC位址才能使用」

    那你怎麼不知道許多 AP 可以複製你電腦的網卡,目的就是遇到鎖 MAC 的網路環境 AP 還可以用? 複製的方式很簡單耶,就是你打什麼 MAC 的值他都吃耶 :p

    「原始碼知道後,就可以找出系統漏洞
    自然就不安全了
    哪個駭客是破解密碼進去的?
    那他可以得諾貝爾獎了」
    開放原始碼不代表你不用 patch,找到漏洞補起來之後就安全了,而且因為是 open source,解法出來你甚至不用等原廠發新的安全更新就可以自己先補一下擋著用。然後字典攻擊是最常見的攻擊法,而且還蠻有用的,因為密碼亂取的人滿街都是,然後這些 cracker 都沒有拿到諾貝爾獎。

  12. > 你會用開放源碼的系統來作為國防機密的系統?
    AES被用來加密美國政府的最高機密文件喔啾咪^.

  13. MAC address只是一個address, 只是因為實體層也需要一個標籤而已, MAC address只有在君子協定的世界中有身分識別的功能, 面對偽造可是一點辦法都沒有.

    你要跟網路ATM/自然人憑證相比, 也請先搞清楚那類IC卡插在電腦時送出去的是什麼東西, 你以為每次都送一樣的?

    另外, “開放給大眾audit的系統遠比封閉實作方式的系統安全”早已是網路安全領域的共識, 而且這個共識不只10年了.

  14. ㄎㄎ, 又有弱者來踢館了啊XD

    “很抱歉,每個網卡的MAC位址都是世界唯一的
    就是可以用來辨別的依據”

    其他人也已經講過了, MAC address假造非常容易.
    事實上MAC根本就沒有任何的保護機制, 它就像是你一般人在抽獎單上填自家住址一樣, 你愛怎麼亂填就怎麼亂填, 你要填一個實際上根本不存在的地方也隨你便. 話說連中華民國的身份證都至少有一碼檢查碼, MAC address連這個都沒有, 我就不知道你拿這個出來講到底是想要證明什麼?

    外頭的分享器鎖MAC會有效, 是因為它們table沒有給人看到. 比方說它限制只有MAC是04:12:78:78:78:78的可以連, 它有效的關鍵在外頭的人不知道要改成這個值, 不在改成這個值的難度.

    “至於自然人憑證、網路ATM
    也是這樣概念延伸而出的
    怎麼說沒人使用呢?”

    所以我說你外行嘛.

    首先, 李家同的說法是雷達說跟磁卡說.

    雷達說的實作? 笑死人了. 叫client端裝設硬體, 再由server端去偵測, 有偵測到的才給通信. 這根本就與全世界所有的網路通訊應用完全相反. 從來client-server connection的實作都是server端開啟一個負責listen的port, 然後由client端去發訊號與server作溝通. 天底下哪有叫server自己去發信找client的??? 單純就觀念來說, 因為世界上的client一定遠多於server, 所以由client去找server, 絕對比叫server去找client合理. 況且就需求上. 一定是client有需求才去利用server的資源, 就好像你想查什麼東西你就會上google去查, 哪有叫google反過來找你問你有沒有東西查的? 最後, 實作上client-server programming通常會有連線逾時的問題要考慮.

    至於什麼磁卡說也很好笑. 磁條卡之所以會被晶片卡取代, 就在它實在太容易被偽造. 且就算是晶片卡, 你要把把關的責任寄託在這種硬體上頭, 可是要拿來定江山的還是裡頭的加密演算法啊, 不安全的東西像磁卡, 你用十張卡還是不安全. 人家可以破你一張卡, 要破你上司甚至你上上司的還不就是一樣的方法, 所以像李家同說的”最好我們可以要求終端機要插入一張磁卡才可以啟動,更可以規定使用者必須也插入他上司的磁卡,使入侵者更難發揮”這根本就沒有用. 一般你說防護措施是第一關密碼第二關磁卡第三關指紋第四關聲音第五關視網膜這種或許還可以隨著關卡的提升增加破解難度. 啊你第一關磁卡第二關磁卡第三關磁卡第四關還是磁卡, 你擺個一百關還是同一套破解法啊, 反而只是提高真正有資格使用的人做認證的麻煩度而已.

    而且把這種憑證機制做進晶片只是讓一般人方便使用, 並不是說用硬體的就會比較安全. 而且它使用的憑證演算法也是公開的. 這就好笑了, 你又說公開原始碼的不安全, 但使用公開原始碼的憑證系統你又說這是安全而且是李家同的觀念, 這還真矛盾啊.

    我根本看不出來你說的”自然人憑證、網路ATM”是從李家同的什麼觀念延伸出來的? 又不是雷達說又不是磁卡說啊. 喔, 如果你要說李家同的觀念是”們可以要求終端機要插入一張磁卡才可以啟動”的話, 那更是倒果為因啊. 請問一下”終端機要插入一張磁卡才可以啟動”的這個實作技術是在李家同寫那篇文章之前還是之後才有的? 難道1996年的時候沒有金融提款卡或是信用卡這種東西, 要等到李家同登高一呼, 說我們需要設計一個卡片, 讓它插進終端機後才能執行喔, 於是乎金融提款卡跟提款機才正式出現在人類的社會上????

    根本就是一個從以前到現在都在使用的系統, 只是因為這系統根本就不安全, 所以才有使用晶片來提高安全性的新世代產品來取代舊式磁卡. 這跟李家同的什麼觀念有啥屁關係? 你老兄想必真的很愛他吧, 愛他到要說他是磁條卡跟信用卡之父.

    “李家同有說,原始碼知道,密碼就會破解嗎?
    沒有原始碼知道後,就可以找出系統漏洞”

    李家同說的是”一旦原始碼被駭客偷走了,他就可以知道所有的保密措施,要破解,也就易如反掌了”. 不只是密碼喔, 他說的是所有的保密措施. 如果是指紋辨識系統, 被知道原始碼之後那就可以破解指紋辨識的防護, 如果是DNA辨識系統, 被知道原始碼之後那就可以破解DNA的辨識. 他可不是只說找系統漏洞, 他說的是所有的保密措施.

    況且如果原始碼開放會比較容易找漏洞的話, 那Windows的漏洞是怎麼找的? 它不是從不開放原始碼嗎?

    “如果是國家的軍事機密
    你會用開放源碼的系統來作為國防機密的系統?
    可想而見,是不可能的”

    美國軍方以前使用的編碼DES, 3-DES跟現在使用的AES. PGP使用的IDEA, 這些全都是公開的演算法啊, 如果公開就是不安全, 那美國軍方是笨蛋了??

    事實上根本相反, 美國軍方根本不可能去使用拿不到原始演算法跟程式碼的系統. 人家在裡頭偷埋什麼後門都不知道, 到時整個艦隊被放自爆程序都不知道.

    你自己在那邊幻想也不查資料就在那邊說不可能. 美國國防機密系統就是用開放源碼的啦. 之前他們還為了要用什麼東西來取代DES辦過大規模徵選咧.

    “當時(1996年),能針對系統核心碼作修正的人,並不多
    這些技術還算是少數人的領域”

    笑死人. 在網路世界上面說網路上的某種資訊是少數人的領域大多數人碰不到.

    那個時代在網路上爬的人就已經脫離了”技術屬於少數人領域”這種小眾的時代了.

    “你覺得你會把金融系統的源碼開放嗎?”

    問題在現在他們用的系統是多半是開放原始碼的啊. 這年頭連orcale都開放了, 你要找到哪一家金融機關的系統不用開放原始碼的實在很難耶.

    而且你沒聽過SET吧? 這是VISA和MasterCard這兩家信用卡公司合力開發的一個電子交易系統. 整個系統的說明文件跟演算法等等的都在網路上公開啊.

    還是你認為VISA跟MasterCard不算是金融機構?

  15. 這篇類似的噗文和文章果真會引來一堆阿同伯的信徒前來胡扯,也看得出會信仰同伯教的信徒邏輯和專業有多麼的淺薄,會一點皮毛就嗆專家嗆得比別人還大聲,結果被打槍到死……..唉,對阿同伯的信徒來說,真的如同Foxx的經典名言一樣:”真實如何不重要,自我感覺良好最重要!”,真可悲!

  16. 以現在的觀點批評十幾年前的概念
    真的是雞蛋裡挑骨頭

    壞就壞在 這是 06 年的文章 ….
    不是 十幾年前的文章阿

發佈回覆給「小魚」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *