2012-03-03 50 views
2

我在運行於JBoss上的RF3.3上有一個基於JSF2.0的Web應用程序。 我非常關心Web應用程序的安全性。啓用HTTPS後對JSF應用程序的安全威脅/攻擊

雖然從外部世界到我的Web應用程序的通信將使用HTTPS,但在爲我的Web應用程序啓用HTTPS後仍然不知道還有哪些其他安全攻擊是可能的。

至少,網絡應用程序存在一系列安全攻擊,但我的重點是OWASP十大安全攻擊。

JSF自動處理XSS和CSRF攻擊(我也使用ESAPI jar來避免CSRF攻擊),並且我已經處理了SQL注入攻擊。

即使在啓用https後,我仍然覺得對web應用程序會有太多衆所周知的和潛在的威脅/攻擊。

我想通知的另一件事: - 客戶將通過HTTPS訪問應用程序。但是我的應用程序會向另一個內部Web應用程序提出某種請求,並且此通信是HTTP。所以會有協議從HTTPS到HTTP的變化,但由於這種變化是在內部網上,我認爲它不會有太大的影響。

請指導我。

+1

如果HTTP連接純粹是通過本地網絡服務器端,那麼這應該是安全的假設本地網絡是值得信賴的。根據數據的不同,您可能希望通過使用專用連接來鎖定,而不是與其他用戶共享本地網絡(如果是這種情況)。 – SilverlightFox 2012-03-03 13:52:18

+0

如果你建立你的應用程序是安全的(也就是說,如果你在需要的地方適當的輸入和輸出消毒),那麼我不明白爲什麼這個網站不應該去住。如果你沒有做到這一點,這是一個不同的問題。 – 2012-03-04 17:44:40

+0

@SilverlightFox也許你已經幾乎回答我question.I我使用HTTP和HTTPS..Since HTTP連接純粹是由我主持另一個Web應用程序之間切換的專用連接,所以我肯定本地網絡的安全性。 – AngelsandDemons 2012-03-06 11:18:03

回答

3

JSF自動處理XSS

這是不正確的。 是,JSF會默認自動轉義,所以h:outputText和其他人將正確HTML特殊字符轉義:

逃生布爾

逃生屬性是一個布爾標誌,用於確定如果敏感HTML和在此組件生成的輸出中,應該將XML字符轉義。該屬性的默認值是"true"

這阻止注射<script>標記,但不影響其他主要的XSS載體。 javascript:網址不需要包含任何「敏感的HTML或XML字符」,並且注入<img src=...><a href="...">javascript:網址中的HTML敏感字符只會適當地逃脫以緩解攻擊。

任何由不受信任的數據組成的URL都應該檢查格式是否正確,並且他們的協議應該針對一個小集合進行白名單。 「http」,「https」和「mailto」是大多數應用程序的默認設置。


我覺得即使啓用HTTPS後會有太多衆所周知的和潛在的威脅/ Web應用程序的攻擊。

站點範圍的HTTPs是一個很好的步驟。如果你鎖定了XSS,XSRF和竊聽,我會嘗試的下一個攻擊矢量是header-splitting

如果我可以插入一個Location頭到您的網頁,我可能會導致一個重定向可能攜帶有GET參數的網站,我控制引薦信息。

+0

我從我的末端處理過XSRF,XSS和SQL注入攻擊。我不確定標題分裂,因此我不能評論這一點。但是我應該得出結論:無論上面提到的是什麼攻擊/威脅,只有那些需要處理的因特網上安全的網絡應用程序。儘管沒有web應用程序是安全的,只是想處理Web應用程序中的主要攻擊/威脅。 – AngelsandDemons 2012-03-06 11:16:02

+2

@Hukamanata號「XSRF」,「XSS」和「SQL注入」是脆弱的圖案有用的標記,但基於分區載體導入標記水桶任何安全狀態是[列舉惡](HTTP:// WWW。 ranum.com/security/computer_security/editorials/dumb/)。真正的安全需要預先設計:近似[POLA](http://en.wikipedia.org/wiki/Principle_of_least_privilege)應用廣泛,[特權的分離](http://en.wikipedia.org/wiki/Privilege_separation)(POLA每個模塊)和[縱深防禦](http://en.wikipedia.org/wiki/Defense_in_depth_%28computing%29)。 – 2012-03-06 15:39:18