監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關閉

Web服務防黑談(一)

申請免費試用、咨詢電話:400-8352-114

AMTeam.org

Web服務防黑談(一)

Web服務革命性地把企業(yè)無縫地同世界范圍內(nèi)的客戶和其他公司連結(jié)了起來,令企業(yè)的業(yè)務開發(fā)周期和業(yè)務流程發(fā)生深刻變化。然而,黑客和信息竊賊的非法活動卻可能讓所有這些美好的希望統(tǒng)統(tǒng)落空。

在先前的文章中,我們針對如何保證具有合法授權(quán)的付費用戶訪問Web服務這一問題提出了若干種安全方案。在這篇文章里,我們繼續(xù)討論Web服務安全的另一方面問題,那就是如何把黑客狙擊在Web服務之外。盡管常用于網(wǎng)站的常規(guī)安全技術(shù)大多數(shù)也完全可以應用于Web服務,但是,在具體的實踐中我們還是應該對Web服務多加一份小心。這篇分為兩個部分的文章其宗旨就是討論如何解決這些問題以保證你的Web服務具有最高的安全性。

Web服務黑客

在我們深入鉆研有關Web服務獨有的安全問題之前,你首先得弄清楚你正試圖防范的Web服務黑客到底分成哪些類型。當然,我們無法窺測潛在的Web服務黑客到底具有怎樣的動機,不過,理解可能攻擊服務的黑客類型還是非常重要的。我們主要關注3種類型的黑客,他們分別是破壞者、信息竊賊和功能竊賊。

破壞者

這類黑客的行事目的很簡單——純粹就是制造混亂。破壞者會嘗試關閉你的Web服務、修改Web服務器上的數(shù)據(jù)或者實施其他惡意行為,反正就是為了取樂或者腦子里有水!這類黑客行為不但令人憤怒,而且,從服務可用性的角度看還會損害你的業(yè)務運行,但是它的影響通常也可以通過網(wǎng)站的周密監(jiān)視和優(yōu)秀的備份策略減到最小。另兩種Web服務黑客才是對你的業(yè)務和公司的最大威脅。

信息竊賊

信息竊賊的攻擊目的就是非法地獲取公司或顧客的信息。這類信息可以用來進行信用卡犯罪、敲詐企業(yè)或提供給商業(yè)間諜。相比普通的網(wǎng)站,信息竊賊對Web服務更具危險性,因為許多Web服務特別設計為傳播敏感信息。例如,如果你所在公司的Web服務向你提供的客戶報告包括了信用卡信息、地址或者電話號碼,那么黑客就能夠假冒經(jīng)過認證的用戶竊取這類信息并把它出售給需要這些信息的人。同樣的,如果你的咨詢公司通過一種Web服務為你提供了潛在客戶的有關報告,那么你的競爭對手就能通過非法攻擊Web服務的方式把你的客戶攬到自己麾下。盡管所有的網(wǎng)站都面臨此類黑客攻擊的風險,但是,因為你公開發(fā)布直接指向信息的鏈接,所以Web服務相對而言在發(fā)生此類攻擊的情況下特別脆弱。

功能竊賊

這類黑客是隨著Web服務的出現(xiàn)而產(chǎn)生的最新威脅。大多數(shù)普通網(wǎng)站都不會向用戶直接暴露其內(nèi)部功能。網(wǎng)站的核心功能,不論是購買股票還是資金轉(zhuǎn)帳,通常都隱藏在用戶界面之后而且受到多重安全檢查。但Web服務就不一樣了,同類的功能(具體表現(xiàn)為編程時的函數(shù)或者方法調(diào)用)必須直接暴露給消費服務的最終用戶。這樣一來,由于黑客只需要攔截Web服務的單一功能調(diào)用就足以獲得他(或她)所需要的全部知識來發(fā)起自己的服務功能調(diào)用,所以這種劫持Web服務的行為相對而言更容易實現(xiàn)。

例如,你不妨想象下面的場景:假設你提供的Web服務可以讓用戶通過經(jīng)紀人購買股票。經(jīng)紀人的網(wǎng)站允許用戶選擇他們想要購買的股票類別和數(shù)量,然后即可獲取購買股票的資金。接著該網(wǎng)站調(diào)用你的股票購買Web服務,指出股票的類別和數(shù)量以及用戶購買股票的各類信息。如果某一位黑客攔截了這一Web服務并用他(或她)自己的信息替代購買者的信息,那么Web服務就會把合法用戶支付資金之后購買的股票付給黑客。或者,再舉個例子,假如黑客登錄到經(jīng)紀人的站點為他(或她)購買股票,因為他或她正在進行這一購買交易,所以他或她能確切地知道什么時候會對Web服務進行調(diào)用,這樣一來要攔截Web服務調(diào)用就更容易了。黑客隨后即可增加他或她所購買股票的數(shù)量。雖然他或她僅僅支付了購買10股股票所需的資金,但你的Web服務卻可能在黑客的帳戶上分配了1000股。

第一層保護

為所有網(wǎng)站和Web服務提供保護的第一個層次就是所謂的SSL(安全套接字層)。這是一種當前常用在網(wǎng)站上保護所有信用卡交易的工業(yè)標準;市場上的各種主要瀏覽器都支持SSL。 SSL采用公鑰體系結(jié)構(gòu)(PKI)保護客戶機和服務器之間的通訊安全。PKI使用VeriSign之類的認證中心(Certification Authority)決定客戶機和服務器之間所采用的加密措施。

進行一宗 SSL 交易的第一步是客戶機向服務器提出安全通訊的請求。如果服務器配置了數(shù)字證書,它就用該證書的一份拷貝及其密鑰的公共部分(參見圖A)響應請求。客戶機通過認證中心驗證公鑰保證它沒有被偽造。一旦公鑰被接受,客戶機就準備自己請求,同時用它從服務器那里收到的公鑰對請求進行加密。經(jīng)過加密的消息隨后被發(fā)送給服務器,服務器則使用自己存儲的秘鑰的私有部分對該消息解密。

圖A

采用公鑰體系結(jié)構(gòu)的SSL加密通訊

SSL是一種具有最少開發(fā)時間和使用完全透明的安全通訊機制。因為 SSL 對客戶機上的通訊全部進行加密,所以攔截Web服務調(diào)用的黑客只能看見經(jīng)過加密之后的消息,從而保護了你的方法名和參數(shù)定義等秘密信息。

但是,在單單依賴SSL保護你的Web服務之前還需要考慮一些可能的缺點。比如從認證中心購買數(shù)字證書和服務是要錢的。有時費用可能高達1000美元之多,具體取決于發(fā)出證書的認證中心和證書的加密強度。

而且,不管費用多少,購買證書的加密強度并一定能決定每宗交易所采用的加密強度。大多數(shù)的瀏覽器都支持完整的128位加密。然而,由于出口法律的某些規(guī)定,同類瀏覽器還必須提供強度更弱的40位加密版本。用來對消息加密的位數(shù)決定了解密的難度。就算你為你的Web服務器購買了128位證書,如果客戶瀏覽器(或其他應用程序)僅僅支持 40 位的加密算法,那么消息將自動地采用強度更弱的保護措施實施加密。

黑客的解秘能力是值得我們關注另一焦點問題。黑客可以通過訪問安全Web服務并分析客戶機和服務器之間數(shù)據(jù)流量的方式非常容易地獲取SSL秘鑰公共部分。采用這一公鑰就有可能確定出私鑰,這樣,黑客就可以解密所有到達Web服務的流量。這是一個實施起來很困難的過程而且對那些毛頭黑客而言簡直是可望而不可及,但是,如果你的Web服務具有很高的價值,比如資金轉(zhuǎn)帳或購買股票等,那么總會有黑客無法抗拒誘惑而窮盡全力、蠢蠢欲動。

后續(xù)

在這篇文章的第二部分,我們將繼續(xù)討論可用來保護Web服務安全的其他技術(shù),例如使用Web服務路由器、參數(shù)擾亂以及其他加密技術(shù)等。

瀏覽:Web服務防黑談(二)

發(fā)布:2007-03-25 10:34    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
上海OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢