對於那些在短期內需要一些計算容量,但又不想在固定資產方面長期投資的企業來說,隨需提供的雲計算是一種非常神奇的工具。 由於相同的原因,雲計算對於駭客來說也非常有用—— 很多駭客活動都牽涉到口令、金鑰破解,以及其它形式的暴力解破,所有這些活動需要的都是昂貴和高度並行的計算。
對於駭客來說,隨需的計算資源有兩個主要來源:由消費者PC構成的僵屍網路和服務商提供的基礎設施即服務(IaaS)。 每種形式都可以提供暴力計算所需的隨需計算能力。 僵屍網路的可靠性較差,並且採用異型設備,「提供服務」所需的時間較長。 但它們完全是免費使用的,並且可以擴展到非常巨大的規模;一些研究人員發現,有些僵屍網路甚至由數十萬台PC機組成。 作為商品提供的雲計算提供服務的速度更快,性能可以預測,而且可以通過盜用的信用卡來付帳。
如果您真正瞭解攻擊者在當前能夠以極低的成本獲得多少高性能計算能力,您就會發現,安全控制和攻擊方法之間的力量平衡正在悄然發生戲劇性的變化。 以口令為例。 口令的長度和複雜性決定了對其進行暴力解破所需要的精力。 假設攻擊者能夠訪問口令資料庫中的「亂數」值,而存在漏洞的Web伺服器或驗證服務器都有可能洩露這種資料庫。 亂數通常基於加密亂數演算法等類型的演算法,而且不可逆轉,但可以通過嘗試所有可能的口令值對其進行暴力破解。 這種暴力計算會在遠離驗證服務器的地方進行,因此不會受到三次嘗試後鎖死機制的限制。
如果採用單核CPU,破解一個8個字元的口令需要很長的時間。 根據演算法和口令複雜性的不同,可能需要幾個月,也可能是幾年。 但這個問題可以通過高度並行的方式來解決:搜索空間可以按需要分割為許多「批次」,並且交給多個CPU以並行方式加以處理。 使用僵屍網路或IaaS時,攻擊者可以在幾分鐘或幾小時的時間裡計算出過去需要幾年才能得到的結果。
一位德國的研究人員使用Amazon的彈性計算雲,以及專門為CPU密集型圖形計算而設計的新型集群計算服務在這方面進行了演示。 從演算法的角度來看,圖形和口令破解的計算過程非常相似:矩陣和向量數學計算。 結果很有啟發性:使用單個集群實例,該研究人員只用49分鐘便破解了最多6個字母組成的口令。 此次試驗的總成本:每小時的計算2.10美元(最短可按小時收費)。
隨著雲計算的盛行,雲計算也像任何其它技術一樣,會被壞人發現並成為他們的新工具。 在考慮風險和收益的平衡時,我們必須進行安全控制的成本/利益評價,並且考慮到所有人的計算成本已經大幅度降低,當然也包括攻擊者在內。 在這種情況下,我們必須對口令、無線金鑰、靜態加密,甚至老式的SSL演算法都進行重新評價。 您認為「不可行」的難題或許對於「普通」駭客來說已經變成非常稀鬆平常的事情。