2005/8/19

藍色駭客 by 傑佛瑞.迪佛

昨晚在參加JavaTwo之後,馬上坐火車回家,人很多,沒有位置可以坐,兩個小時的時間把這本厚厚的小說藍色駭客剩下的部分看完了,自很久以前的電腦叛客後,就沒有再看過有關駭客的小說了,

整篇小說,以 social engineering 社交工程貫穿整個劇情,每一個hacker/cracker都精通社交工程之道,運用社交手法,通過電腦/同事/朋友/鄰居的檢查,你就可以輕易地潛入每一個人的內心,這本小說的hack手法沒有什麼特殊的地方,但情節緊湊,透過社交工程,作者創造出紀列德與飛特這兩位hacker/craker的攻防戰,還在最後巧妙地設計諾蘭,為了竊取飛特的暗門程式,精心設計一年的社交工程,利用了CCU所有的人順利地拿到暗門的原始碼。

而飛特的親密戰友尚恩Shawn,原來就是飛特創造的一部代理電腦,名字就是以他上班過的公司,Sun-Harvard-Apple-Western-Nec S-H-A-W-N來命名,尚恩在最後忠實地執行飛特設計的任務,成功侵入FBI網路,對紀列德的娘家發出攻堅命令。

很多人都希望自己的小孩聰明,我也不例外,但聰明是把兩面刃,可以為善也能作惡,就像是紀列德與飛特這兩面一樣,雖然他們曾經在一起並肩作戰,但紀列德後來選擇面對現實世界,而飛特卻在網絡世界裡越陷越深,甚至認為自己可以藉由網路操控現實,也就是體現完全的社交工程。

小孩不聰明,父母會擔心他的功課,擔心他未來的學業,小孩聰明卻會擔心他會滿足於永遠的小聰明,而不能腳踏實地做事,每一個人都在寫自己的故事,我想我只能說服自己,他一定會努力向上,等到時機一到,他就得學會自己承擔責任,對自己負責。

JavaTwo的感想還沒寫,但想到hacker,我回想起JavaTWO的一個session,BeanShell,這是個Lightweight Scripting for java,講師把握時間,應該是把該講的全都講了,對於BeanShell的reloadClasses功能,我想可以利用來做live的程式套件更新,就是在服務不關閉的情況下,更新某一支程式或一個套件,尤其再配合remote debugging mode,就可以遙控遠端服務,再配合addClassPath( new URL("http://myserver/~pat/somebeans.jar") ),就可以動態上載程式碼了。

但如果真是這麼方便,那麼這個服務管道可能會被hacker輕易地上傳他的程式碼。所以用的時候要動點手腳,修改不要使用default service port,應該可以避免不少疑慮。