
每次一有機會跟從事軟體開發的朋友聊天時,我就會問一下他們有關軟體安全的問題。當然,我問的問題很簡單,就是他們的軟體有考慮安全的問題嗎?嗯,其中一種蠻常聽到的回答就是:「有啊,我們的資料在傳輸時有加密。」或者是「沒有耶,我們的資料都沒有做任何的加密。」 噹!這樣的答案聽起來好像很有理,卻是對軟體安全有著極大的誤解。對於軟體安全而言,從需求面可以分成兩大類型,第一類是安全性功能 (Security Feature),像是資料在儲存時要進行加密就是屬於這類需求。另外一類需求我們稱為安全軟體的需求 (Requirements for Secure Software),也是大家比較不熟悉的部份。舉例來說,避免程式受到跨網站腳本攻擊就是屬於安全軟體的需求。 兩者之間的分別其實並不是那麼地明顯,甚至有時候我們也可以把第一類需求歸屬在第二類需求之中。但是簡單來看,安全性功能依舊是屬於產品功能的一部分,所以可視為是用來解決客戶問題的手段。例如,將資料在加密後才加以儲存就可以避免使用者的資料被有心份子所窺探。除了加密之外,像是身分驗證也是很常見的安全性功能。相較於安全性功能,安全軟體的需求解決的是軟體本身的問題,像是如何避免有心份子利用軟體的錯誤取得寶貴的資料,或者是如何確保軟體在遭受攻擊時可以繼續運作。 事實上,軟體安全強調的並不是第一類型的需求,反而是第二種類型。就算你開發的軟體跟安全本身沒有任何關係(例如公司的公告欄網站),依舊有可能因為本身沒有做好安全的防護而導致安全問題的產生。以公司的公告欄網站為例,如果程式存在跨網站腳本的弱點,那麼就有可能讓有心份子修改公告,把自己升職為總經理。也就是因為這樣,所以我們在討論軟體安全時,不管該軟體是不是具有安全性功能,都必須考慮到安全軟體的需求。 這兩種類型的需求往往各自獨立,但是必須特別注意的是,一旦安全性功能出現問題,其所導致的危害往往將更為嚴重。舉例來說,一旦身分驗證系統出現問題,那麼就有可能導致系統內所有資料的外洩。所以對於安全性功能來說,我們通常必須更加小心地確保其沒有安全上的疑慮。除了安全性功能外,一些高價值的功能(如商品交易)也是必須多加小心的地方。
cyrilwang 發表在 痞客邦 留言(1) 人氣(714)

之前我在 [從電影看資安] 誰才是大將軍 - 大兵小將 這篇文章中提到資安專家利用假冒的觀念來減少危險,後來甚至演變出所謂的 Honeypot/Honeynet,這類機制不但可以用來減少駭客攻擊的有效性,甚至可以用來學習駭客的行為以利資安專家對抗駭客所發動的攻擊。我在文章最後提到假冒的觀念對於攻擊與防守的雙方都同樣重要,甚至攻擊方對於假冒更是駕輕就熟,畢竟攻擊要成功,完美的假冒往往是一個基本條件。但是像是 Honeypot 這種用來誘敵的機制,對於攻擊一方的用途卻是到了近期才被加以利用。這倒也不是說明資安專家就比駭客更加聰明,而是資安專家往往比較被動,所以對他們採用 Honeypot 的效用不大。不過一旦駭客發現這是一個好方法,他們絕對不會放棄,而且我相信駭客可以發揮出更好的效果。因為駭客只要放出足夠的煙霧彈就夠資安專家們忙上好一陣子了,而在現今的攻擊情境中,好一陣子已經可以產生決定性的效果。事情會怎麼演變,就讓我們繼續觀察吧。
cyrilwang 發表在 痞客邦 留言(0) 人氣(1,785)

DoS/DDoS (阻斷服務攻擊) 對許多人來說,早已經是耳熟能詳的名詞。以 DoS 的定義來說,只要能夠讓服務中斷,不管用什麼方法都可以算是 DoS 的攻擊。所以,拿榔頭把連結伺服器的路由器給敲爛,絕對也是 DoS 攻擊的一種。這樣的攻擊方式除了被逮捕的風險高了許多,而且在效率上也不夠好。所以除非你跟某家企業有深仇大恨,而且報著必死的決心,不然請勿輕易嘗試此一作法。也因此以網路為主的遠端 DoS/DDoS 才是主要的攻擊手法,駭客想盡一切辦法讓使用者無法連結到某個企業的網路服務,像是把網路頻寬或伺服器的運算資源消耗殆盡。 而這一兩年極為熱門的話題 - SaaS (或大家比較常聽到的雲端運算),除了它本身產生的資安考量外,SaaS 與 DoS/DDoS 還有其他的關聯。首先,SaaS 的架構讓駭客擁有了更多且更便宜 (甚至免費) 的資源來對攻擊目標的資源進行消耗的行為。嚴格來說,甚至可以說是以 Botnet 為主的地下經濟本身就是一種 SaaS 的服務,只是買方甚至連軟體都不用操作就可以收到結果。另外之前提到利用 SaaS 架構提供破解 WPA 的服務,雖然不是用來進行 DoS/DDoS 的攻擊,卻也是利用 SaaS 來增強破壞力的應用。 除此之外,隨著 SaaS 架構的風行,有人預計利用 DoS/DDoS 攻擊手法來對企業進行威脅的事件將會持續增加。原因之一是很多 SaaS 架構採用用多少算多少的計費方式,這樣的方式也就表示用的越多,帳單的金額就越高。在此情況下,DoS/DDoS 攻擊就算無法癱瘓企業的網路服務,也將使得帳單金額大增。因此,駭客可以利用這樣的預期損失而對企業進行事前的勒索。我個人覺得這雖然有其道理,但是 SaaS 的服務通常可以設定帳單金額的上限,所以在最差的情況下,被攻擊企業的網路服務也”只是”完全停擺,並不會有金額大爆炸的情況發生。倒是 SaaS 的模式,讓企業遭受 DoS/DDoS 攻擊時的損失容易量化,因此方便駭客對勒索金額進行”合理的”喊價。不論如何,當 SaaS 讓資源的應用變成價格化後,DoS/DDoS 攻擊已經不再只是單純的”給他死”,而有更多的操作空間可以讓駭客獲取利益。這年頭,當駭客不但要有技術能力,還得有商業頭腦才行。 相關連結:
cyrilwang 發表在 痞客邦 留言(0) 人氣(777)

之前我討論過許多次關於更新的重要性並介紹了相關的工具,然而對於許多資訊背景的人員來說,上補丁 (Patching) 一詞或許比更新更令人覺得親切。不管是叫做更新或是上補丁,指的都是利用置換程式執行檔 (或其他相關檔案) 的方式來修正應用程式 (包含作業系統等各種程式) 的問題,這類問題包含安全性的問題、功能的提升、或是一般操作性的錯誤。 雖然 Patching 是解決應用程式問題時最有效也是最重要的方法,但是 Patching 在實際的應用上卻也存在著不少的困擾: 如果存在問題的應用程式是商業軟體,使用者通常只能等待原廠提供更新檔案。在此之前,使用者無法對應用程式本身做任何的處理。對於安全性的問題而言,這段更新前的空窗期將會讓應用程式處於一個毫無防備能力的困境。這類問題就是所謂的 Zero-day Attacks。 早期的攻擊手法多以網路與作業系統作為目標,而這類產品的供應商大多屬於大型的組織,所以提供更新的速度與品質具有一定的質量。但是現在攻擊手法多以應用程式為主要攻擊目標,所有相關的供應商服務能量不一,再加上技術能力的良莠不齊,導致等待時間的空窗期變得更長,使用者甚至無法取得正式的更新檔案。 就算是使用 Open Source 的應用程式,一旦發生問題後雖然使用者可以自行對於應用程式本身進行修改,但是對大多數的使用者而言並不具備這樣的技術能力與資源 (人力/時間)。再加上原開發團隊屬於志願性質,因此對於提供更新的保證顯得更加的薄弱。 組織在進行實際更新作業前,往往必須經過審慎的測試過程。對於越重要的系統,測試過程的時間也就越長,也就是說越重要的系統處於未更新的時間越長。然而這類系統一旦發生問題,所產生的危害卻也更大。在兩者影響相互放大的情況下,讓問題的嚴重性急速惡化。
cyrilwang 發表在 痞客邦 留言(0) 人氣(373)

再談到 DDoS 之前,我們要先談到 DoS (Denial of Service,阻斷服務攻擊)。 DoS,嚴格來說其所指的並不是一種特定的攻擊方式,而是所有影響資訊可用性 (Availability) 的破壞行為。換句話說,DoS 並不以竊取機密資料 (Confidentiality) 或破壞資料完整性 (Integrity) 為主。對許多人而言,AIC (Availability、Integrity 與 Confidentiality) 中的 A 可能會被認為是其中危害最小的一個。畢竟對於大多數的 DoS 攻擊而言,攻擊過後就像沒有甚麼事情都不曾發生一樣,所有的網路、系統、程式還是可以持續運作。但是隨著人類對於資訊系統依賴程度的提高,DoS 的影響已經從原來的不便,擴大到了會造成實際金錢的損失,有時候甚至可能是生命的損失。而且可用性受到影響,往往也最容易被使用者所發現,所以對服務提供者來說,直接面對的問題就是因此導致使用者信心的流失。DDoS (Distributed Denial of Service,分散式阻斷服務攻擊) 的目的與 DoS 一樣,只是利用人 (機) 海戰術來增加破壞的成功機率。除了增加成功的機率,人海戰術也可以讓被攻擊的對象失去明確的回擊目標(這裡指的回擊不一定是技術上的回擊,更包含法律上的回擊)。 也因為這樣,舉凡任何一個資訊系統內的元件都可能是 DoS/DDoS 攻擊的目標。包含網路頻寬、網路設備、伺服器、應用程式,都是可能的對象,而且不管是軟、硬體都無法避免受到這類問題的影響。如果以 TCP/IP 協定來說,從實體層、網路層、傳輸層,再到應用層,每一層都有可能成為 DoS/DDoS 的目標。這樣看來,很多看似不相干的攻擊行為,其實都可以歸類在 DoS/DDoS 的範疇之內。舉例來說,當一個駭客透過 SQL Injection 的方式將整個資料庫內的資料刪除時,雖然跟傳統上所認知的 DoS/DDoS 攻擊不同,但是卻也是一種貨真價實的 DoS 攻擊,而其透過的管道則是應用程式的弱點。如果以這種角度來看,DoS/DDoS 幾乎可以說是無法 (完全) 加以避免的,因為任何資訊安全的弱點都有可能被用來當作 DoS/DDoS 攻擊的管道。不過幸運的是,沒有人會讓這樣的事情發生,因為這樣一來廠商就沒的混了,所以在大部分的資料中針對 DoS/DDoS 還是有一些標準的手法可供參考 (這樣才有辦法找出共通性的解決方案)。
cyrilwang 發表在 痞客邦 留言(0) 人氣(3,732)

因為稽核的必要性與重要性日益升高,再加上新版的個人資料保護法已經通過三讀立法,所以內部管理的議題持續受到用戶的重視,而其中一個項目就是所謂的 IP 管理 (IPAM)。IP 管理基本上就是管理 IP 位址的使用情況,從過去的 ISP/Datacenter 管理客戶的 IP 位址,到現在網路管理者用來自行管理內部網路的使用情況。跟 IP 位址運作相關聯的重要協定(包含 ARP、DHCP、DNS 等)所衍生的問題,都是這類產品所必須面對的。 在使用 DHCP 的環境中,對大多數的網路管理員來說,通常最困擾的就是 IP 相衝的問題。也就是有些被稱為小白的終端使用者不循正常方式使用 DHCP,卻逕自設定成固定 IP。當然,這些使用者可能因為無心,不小心設定成 DHCP 伺服器所管理的 IP 位址,因此造成日後透過 DHCP 伺服器取得同一個 IP 位址的電腦設備些許的不便。不過真正的問題是萬一這些使用者設定的是網路設備 (如印表機)、甚至是伺服器所使用的 IP 位址,那會發生甚麼事情可就很難說了。比較嚴重的情形,甚至可能造成服務的中斷。這類問題真正麻煩的地方,倒也不是怎麼解決問題,而是找到問題的源頭,也就是那位小白終端使用者。
cyrilwang 發表在 痞客邦 留言(0) 人氣(2,171)
不管你在工作上是不是從事資安相關的領域,或多或少都曾經面對要在許多不同解決方案中找出最佳作法的情況。如果是採用預算制,比較一般性的做法就是找出預算之內而且效果最好的解決方案。另外一個方法就是找出可以接受的最低成效,然後在此限制下找出最低成本的解決方案。後者通常適用於沒有固定的預算,或是對於成效有一定要求的情況。
嚴格說來,不管是哪一種方式,其實都是在成本與效果之間求取一個最佳解法,只是受到限制的條件不一樣。但是限制條件通常並不是如表面那麼單純且直接。例如以預算制的情況來說,雖然只要在預算內即可,但是有時候省下更多的錢也是功勞一件 (當然也有實際花費跟預算越接近越好的狀況)。而且即使對於省錢與否並不在乎,至少對於解決方案還是會有基本的要求。因此如果已經把預算用完還是無法達到基本的要求,同樣會出大問題。所以,比較明確的說法應該是受到限制的條件比重不一樣,但是基本上要考量的項目卻都是相同的。有關成本與效果的平衡,在資安的領域比較常用 Cost-Effective 這個名詞。接下來我想談談有關成本這個議題。
cyrilwang 發表在 痞客邦 留言(0) 人氣(176)
不知道你是否曾經在上網的時候跳出一個視窗,視窗的內容只有幾個大字(有時還加上一個大大的警示圖示),內容是告訴你你的電腦被惡意程式感染了。如果你曾看過,不知道你當下的反應是甚麼?如果你選擇直接關掉這個視窗,有兩個可能性,一個是你已經練就處變不驚的能力,另外一個就是你有看沒有懂(因為這種視窗的訊息通常是英文)。記得我第一次看到這類訊息的時候,心裡還真緊張了那麼一下。不過我當下的選擇當然不是點選上面的連結,而是開啟我安裝於我電腦內的防毒軟體進行掃描。是的,那個年代還是一套防毒軟體就可以應付大多數情況的年代。掃描的結果當然是沒有發現異常,心裡也因此總覺得怪怪的。只是在幾次之後,就真的也就見怪不怪了。但是,如果你選擇了相信它,進而點選了上面的連結,通常下場就是引狼入室。也就是本來沒有惡意程式的存在,但是因為下載了所謂的移除軟體,而此移除軟體本身才是惡意程式。
上述的方式其實跟現在很流行的假冒成警察或檢調單位的詐騙行為很類似,都是利用威脅的手段促使受害者失去判斷能力,進而達到後續的欺騙目的。而這樣的威脅跟拿刀子架在你脖子上的威脅完全不一樣,因為如果你看到刀子,就知道這一定是不懷好意。雖然通常你也會加以屈服,但是那只是表面上的,心裡面可還是會想辦法逃脫。就算無法逃脫,也會在事後馬上報警處理。但是前者的威脅,卻有可能讓受害者信以為真,所以一時之間沒有採取任何防範措施。其結果就是造成更大的損害,或是讓詐騙分子有更多的時間加以脫身。而以網路而言,大部分問題屬於前者,也就是讓損害持續加以擴大。
這類的軟體有人將之稱為威脅軟體 (ScareWare),利用的正是社交工程的一種手段。嚴格來說,威脅軟體本身並不一定會造成真正的危害,通常造成危害的可能是後續下載的程式。而這類只威脅、卻沒有後續危害動作的程式又稱之為惡作劇軟體 (Prank Software)。當然,有些威脅軟體並不需要額外下載另一個程式,本身在威脅過後就可以馬上”提供”惡意的服務。像前幾天微軟公布了一個叫做Win32/InternetAntivirus的惡意程式,不但冒充成防毒軟體,還製造出假的掃描結果,試圖引導使用者購買另外一個完全沒作用的軟體來解決”問題”。除了騙人之外,這個軟體當然也會順道偷走一些資料,例如帳號/密碼。
cyrilwang 發表在 痞客邦 留言(0) 人氣(119)
有當過兵的人都知道,軍中不管做大大小小的事情,總有一堆表格、資料要填寫。我當兵時負責機房/設備的管理,要填寫的表格,包含輪班表、值勤記錄表、訪客紀錄表、日常保養表(日、周、月)等等,可說是每天有填不完的表格。這些表格,往往也是各級長官的最愛,沒事總要來進行一下所謂的督導。督導除了檢查表格外,機車精實一點的長官還喜歡到處問、到處摸。例如有些長官甚至會檢查絕緣用的凡士林是否塗的過厚或過薄,也因此當時只能抱著如履薄冰的精神,不敢有一絲疏忽。如果運氣好,駐地剛好位於觀光勝地,三天兩頭就有長官前往督導也就稱不上是甚麼奇怪的現象了。 這些督導跟我們所謂的稽核意義其實是一樣的,就是為了確保所有訂定的規範是否有確實遵守,又是否有意想不到的問題發生。稽核在這幾年,因為 ISMS 的風行而受到相當的重視,當然有很大的一個因素就是政府等公務機關的推動。稽核的方法除了看書面的資料外,當然也同樣必須透過觀察、詢問加以確認。但是跟督導的情況不一樣的是,軍中長官通常是從基層幹起,所以對於業務的進行都有一定的實務經驗(至少我當兵的部隊是這樣的)。也就是說要看甚麼、問甚麼、聽甚麼,這些長官可是了然於胸。如果你想欺騙,往往也不是那麼容易(除了書面的資料可以稍微”修飾”一下)。而稽核,不管是第幾方的稽核,稽核人員不見得有實際操作的經驗,甚至可能連足夠的技術背景都沒有。另外,以現在資訊安全涵蓋範圍之廣,就算是有實務經驗的稽核人員,也多是僅限於其中少數幾個部分。當然,稽核是一門專門的學問,有它特有的專業要求。是不是需要有所謂的操作經驗或技術背景才能做好,倒也不一定。但是不熟悉表示被”呼嚨”的機會就會增加,而且是會大幅增加。有句台灣的諺語說得好,『軟土深掘』大概就是這個意思。 雖然身為資安從業人員,道德的遵守是職業的重要素養之一,但是我們也不能因此過於樂觀。更何況,人在江湖總有身不由起的時候。像是這近一年來景氣持續的低迷,或多或少都會影響到資源的利用與分配,所以業務受到影響也是理所當然。但是,稽核可不管這麼多。有做到就是有做到,沒做到甚麼理由也說不過去。而根據近期一份國外的報告顯示,有高達 20% 的資安從業人員承認自己或同事曾經為了通過稽核而說謊。這種數據通常實際的數字只會更高,因為不會有人假裝說謊,但是假裝誠實的人倒是有那麼一些。 我自己沒從事過稽核的工作,所以沒辦法說稽核該怎麼做才能了解實際的狀況,甚至是對組織有真正的幫助。但是我想最基本的要求是稽核跟被稽核的人,不應該處於敵對的狀態,而是應該採用合作的心態,共同找出問題並解決之。要做到這樣,除了雙方要改變外,更重要的是組織也要改變,畢竟員工的心態(至少做法)往往是受到公司文化的影響。如果公司就是鼓勵(或默許)稽核人員在雞蛋裡挑骨頭,或是只要求被稽核者敷衍行事(通常會發生在外部稽核,但是內部稽核也有可能,因為需要稽核的記錄),就是神仙也改變不了雙方緊張的關係。在此情形下,說謊也只能說是早可預期的反應了。如果稽核只變成了虛應故事,甚至是諜對諜的情節,那實在是很無意義且可悲的一件事。
cyrilwang 發表在 痞客邦 留言(0) 人氣(655)
說到人才,有一句成語叫才德兼備,表示一個人除了具備專業的才能之外,也同時擁有高超的品德。這樣的人才,我想就算不是可遇不可求,至少也是萬中選一。所以,我們通常只能退而求其次,包含兩個選擇,有才無德或是有德無才。在商業的環境中,再怎麼簡單的工作,都有一定的”專業”需求,所以有才無德自然便成了大多數情況下的選擇。或者,用一個比較不那麼武斷的說法,品德在商業的環境下,往往不是受重視的要求,甚至有時候違反道德的事情變成了不可說的常態。 然而隨著專業分工越來越細,很多特殊的角色都有其道德的責任。這樣道德的要求,不僅要求對於工作如此,更包含了對社會大眾的責任。嚴格來說,每個職業都要他的職業道德必須遵守,但是對於掌握特殊資訊的職業,其道德要求相對更高。例如律師、醫師,乃至於政治人物,都應該有其道德要求與素養。除此之外,資安從業人員、IT人員、及近來興起的隱私長 (CPO),因為掌握資訊時代的重要資訊,其道德重視程度也越形增高。甚至在去年底的一份調查結果顯示,道德已經成了企業找尋IT人員最重要的考量因素。除了前述的原因,另外一個原因就是經濟衰退造成職場的不穩定,近而產生了更多監守自盜的行為。 前一陣子發生遊戲公司GM監守自盜的行為,就是忽視道德要求下所產生的問題。一般而言,GM在遊戲公司不算是很核心的職務,簡言之不是薪資最高、福利最好的一群,所以對於其人力素質的要求也相對較低。但是如果因此忽略其所掌握業務與資訊的重要性,可能就會產生莫大的風險。除GM之外,其實很多公司的資料庫管理者也是有類似的現象,這些人擁有全公司所有的數位資訊(因為目前大部分的數位資訊都是儲存於資料庫),但是卻不是掌握公司核心業務或技術的人員,所以公司也就往往忽視這些人的存在。這些現象的根本原因在於公司從業務的重要性出發,而不是從風險的角度出發,所以忽略了很多原本應該注意的人事物。 公司針對這些具備高風險的職務,應該訂定相對應的道德要求。包含事前的背景調查、良民證、客制化的工作契約、適當的監測/管理機制,都是可以採用的措施。 另一方面,一些專業的證照近來也越來越強調道德的規範。雖然聽起來似乎有些高調,甚至可能淪於空談,但是我個人認為其重要性絕非一般。雖然對業者而言,用契約規範是比較保險的做法。但是畢竟法律的約束只能算是達到最低的要求,唯有自律才能造成雙贏的局面,而這就需要專業人員對自我的道德要求。所以,有德無才有時(如果不是往往)對業者而言或許是比較好的選擇,而身為專業人員的我們,就”只好”設法成為才德兼備的人才了。 相關連結:
cyrilwang 發表在 痞客邦 留言(0) 人氣(853)