網路安全的問題,早已是各大企業所重視的課題,如今的網際網路,充滿著各種危險性,許多來自四面八方的駭客蠢蠢欲動,或許他是提醒網管人員的建設性Hacker,也或者是想要破壞及竊取資料的Cracker,也或是在一般人心中的滋事份子,無論如何去定義他,他就是存在。
每天有成千上萬的駭客在找尋各種作業系統漏洞,畢竟作業系統也是人寫出來的,既然是人,就會有疏失的地方,很多著名的virus或worm 都是透過各種漏洞來進行滲透攻擊,像前幾年陳盈豪所設計的CIH病毒,就是利用系統漏洞,然後間接破壞BIOS,相當難纏,近年疾風殺手等病毒,都是利用微軟所發布的漏洞,來趁一般民眾來不及更新時大舉入侵,讓人防不慎防。
通常微軟會在其官方網頁放上各種新發現系統漏洞的更新程式,駭客就可以趁這段時間來寫病毒,進行破壞,這算是中段的駭客,真正高段的駭客則是在研發人員還未發現之前,就自己找到漏洞攻擊,;而最初級的駭客,則是利用別人寫好的程式來到處亂玩,每天這種不知死活小夥子可是到處亂竄,讓人啼笑皆非,但對於一般民眾還是有些殺傷力。
現在小弟就來介紹幾種駭客常用的入侵手法,手法千萬種,但大多都會有幾種固定的模式:
(1) 最簡單的密碼破解:利用簡單常用的帳號密碼來測試,像是administrator, user, password雖然您可能會覺得很簡單,但實地測試之後,你會發覺比你想像的要簡單很多,這也暴露了一般人對密碼管理的不重視,讓駭客有機可趁,再來就是用字典生成軟體,再搭配掃描軟體例如流光等,就可以用CPU來替你”猜密碼”,速度就要看你的CPU等級以及密碼複雜度。
(2)用一些掃描軟體來看看你的電腦上開了哪些port,例如superscan 可以查詢有哪些服務是被開啟,因而決定要使用哪一種攻擊方式。
(3) 利用Script語言的特性,來進行攻擊,因為直譯式的語言很容易在輸入期間被竄改其原始碼,這很難防範,只能靠寫程式的人多做一些保護。
(4) 還有一種可能很多人聽過的buffer overflow attack 緩衝區溢出攻擊,個人認為這個手段實在是高明到不行,發明這個方法的人一定是個天才,他怎麼運作呢?首先他利用某些語言沒有對邊界作一嚴格限制的特性,將buffer裡裝的大小超出他的預設,來讓程式當掉 ,然後利用記憶體被覆蓋掉的那一區塊去執行他所想要執行的程式,可能有點饒舌,有個概念就好。
(5) 還有就是利用網頁綁上一些破壞性的強制程式,或是寄一些帶有惡意程式碼的病毒信,好在6.0以後的版本改善了不少,提高了一些安全性。
(6)再來就是下木馬,下的方式很多,常用的就是用欺騙的手法夾在其他正常的檔案偽裝起來,讓人不知不覺的執行,之後client端就可以遙控那些被重木馬的server端,運用最近的電影Troj,為所欲為了。
(7) 還有一種就是DOS,或是DDOS,這種攻擊毫無職業道德,純脆就是要攻擊某個網站,他是利用各種被下木馬的電腦,再同一時間聯合對某server發出大量無效封包,造成網路癱瘓,稱為阻斷式服務攻擊,像許多大企業都曾遭受這種攻擊。
(8)再來就是比較高段,利用列舉的方式對目標電腦作分析來入侵,通常是用來竊取商業機密,或是同業間的攻訐。
介紹完以上幾種常見的攻擊手段,實在打得很酸,小弟再來說一下關於ip隱藏的技巧:通常會採用3種方法隱藏IP 第一種就是用動態IP,這樣他每次上網都可能是不同的ip位置 這是初級的第二種就是使用代理伺服器Proxy 這樣顯示出來也不知真正的ip,不過要注意的是還是在同一個網段上,前兩種方式都很簡單 ㄧ般人都可以做到 但是如果真正警方要抓你,跟ISP業者合作 ㄧ樣可以把你揪出來 只是ㄧ般人抓不到,而第三種 也就是全世界駭客普遍的方法 把別人的電腦當作跳板伺服器或是使用外國的代理伺服器交互切換。
看完這麼多關於網路安全的問題,想必讀者對於自己電腦的安全性,一訂有更深一層的體悟,說實在的,要防範也不是很困難,只要把網路線拔掉就好,XD;當然是開玩笑的,以下提供幾種基本防護措施:
(1) 電腦一定要設密碼,且越長越好,最好還夾著特殊字元。
(2) 防火牆一定要開,且要讀一些相關資訊,例如用windows 2000的人最好注意135~139port以免被入侵而不自知。
(3) 時常更新修正檔,在許多網站都會有系統漏洞的更新檔,定期更新可免受許多不必要的攻擊。
(4) 防毒軟體一定要定期更新,才能擋住大多數新的病毒。
(5) 不明的應用程式絕對不要亂開,很可能執行到一些惡意程式。
(6) 不要上一些怪怪的網站,以免被綁一些惡意程式,不然就要把安全性的層級設高一點。
(7) 現階段無線網路不是非常安全,盡量要多做一些保護措施。
以上這些方法主要是針對一般用戶來建議的防護措施,如果是企業主,當然就要更多的保護措施,因為你是暴露在公眾場合,很容易就被人攻擊;一般人照以上的方法可以抵擋80%以上的攻擊,這樣就可以安心多了。
星期六, 12月 04, 2004
星期一, 10月 25, 2004
[遊戲設計]遊戲性的迷思
"GamePlay"這個名詞,在近幾年的遊戲中,不斷被提起,究竟什麼是遊戲性?以玩家角度來說,"好玩的遊戲就是個遊戲性高的遊戲"。好不好玩,實在是非常主觀的概念,牽涉到民族性、成長環境、個人喜好等,簡單來說,我把它用以下幾點來評估。(1)豐富性--遊戲內容除了主幹豐富外,最好要增加許多旁支劇情,甚至隱藏式的情節;如果能附有各種額外的意涵,就能達到加分的效果。許多玩家在網路上討論的,不只是劇情而已,還喜歡旁敲側擊的挖掘遊戲中各種元素,元素越豐富,越能讓玩家樂在其中。 (2)耐玩度--這可不是說只要遊戲內容多就會耐玩,像簡單的魔術方塊,雖然玩法單調,卻會讓人一玩再玩,歷久不衰。很大的原因在於其變化性高,每次玩都不會有相同的過程,遊戲中如果加強變化性,就可以提昇遊戲的耐玩度。(3)融入程度--這就是所謂"忘記遊戲";如果你在CS玩狙擊戰場,瞄準人頭的時候,突然對手飛也似的到處亂竄,你很快就會從遊戲中醒過來,所以遊戲不管單機或online,打擊外掛可以有助提升玩家融入程度,為遊戲而遊戲,整體遊戲性就會大打折扣。(4)介面人性化--這對開發者而言,是一項辛苦的工作,越貼近玩家,工程師就需要花更多的心力;但是人性化的介面可以減短新手上手的曲線,便利的操作,可以為遊戲加分不少。(5)細節程度--為什麼日本遊戲玩起來就是這麼的細緻?因為他注意到了許多遊戲開發者常忽略的小地方,一個小小的場景轉換,一個遊戲的特殊音效,一個小小遊戲提點,在在都打動了玩家的心,多注意這些小細節,會讓玩家在潛意識中對這個遊戲產生莫名的好感。(6)音樂音效--最後不能免俗的,一款遊戲的成功與否,與音樂絕對脫不暸關係,以最近很紅的仙劍奇俠傳電視劇來說,當時此遊戲會如此轟動,他的音樂音效搭配成功,佔了很大的因素。"對的時間作對的事"這句話,在遊戲中就是,"對的時間放對的音樂"。以上幾點如果能達到六七成就是一款很棒的遊戲啦,你可以試著舉幾個例子來驗證看看。
回到標題,"遊戲性的迷思",這句話是站在開發者的角度來討論的。許多遊戲開發新手常犯的錯誤就是以為提高遊戲性是一件簡單的事,連基本尋路演算法都不會,能寫出好玩的追逐遊戲?MSN上的旋轉方塊,很好玩,看起來寫這個遊戲不難,但我看過三種民間寫的版本,每個玩起來就是沒有像在MSN上這麼好玩,不是旋轉時機配合抓不好,就是配置變換不恰當,一樣同款遊戲,功力不夠的人,寫起來就是不好玩,也就是遊戲性不佳。再舉別的例子,很多人應該都玩過打磚塊,如果你也有玩過翻譯機上面的打磚塊,你就會發現,怎麼彈跳這麼死,就這幾條路線,隨便也知道下ㄧ步會彈到哪裡,令人無法持續玩下去。如果真這樣,對於開發者而言是一件遺憾的事。奉勸各位遊戲設計新手,不要想說我開發的遊戲一定不會這樣那樣,等你功力到一定的程度之後,再來好好在遊戲性上著墨,共勉之。
回到標題,"遊戲性的迷思",這句話是站在開發者的角度來討論的。許多遊戲開發新手常犯的錯誤就是以為提高遊戲性是一件簡單的事,連基本尋路演算法都不會,能寫出好玩的追逐遊戲?MSN上的旋轉方塊,很好玩,看起來寫這個遊戲不難,但我看過三種民間寫的版本,每個玩起來就是沒有像在MSN上這麼好玩,不是旋轉時機配合抓不好,就是配置變換不恰當,一樣同款遊戲,功力不夠的人,寫起來就是不好玩,也就是遊戲性不佳。再舉別的例子,很多人應該都玩過打磚塊,如果你也有玩過翻譯機上面的打磚塊,你就會發現,怎麼彈跳這麼死,就這幾條路線,隨便也知道下ㄧ步會彈到哪裡,令人無法持續玩下去。如果真這樣,對於開發者而言是一件遺憾的事。奉勸各位遊戲設計新手,不要想說我開發的遊戲一定不會這樣那樣,等你功力到一定的程度之後,再來好好在遊戲性上著墨,共勉之。
[程式語言]Lua 簡介
Lua是ㄧ個輕巧好用的腳本語言,同時也是ㄧ個內嵌式語言,為什麼我選用它作遊戲中的腳本語言?原因它沒有python如此複雜的架構,Lua所提供的功能,對於一個遊戲的腳本語言,已是綽綽有餘。 Lua發明在巴西,從1994年的第一版開始,到現在已經有了第五版,它是個免費且放原始碼的語言,底層由C架構出來,支援程序性以及物件導向語言。它應用的範圍很廣,在遊戲界最有名則是應用在"柏德之門",作為其遊戲中的腳本語言,之後的文章會對Lua有更多的介紹,相信你也會愛上它的小巧實用。 http://lua.org (Lua 官方網站 你可以在裡面獲得更多資訊 包括wiki以及使用手冊)
訂閱:
文章 (Atom)