如何開發安全的AJAX應用

如何開發安全的AJAX應用

 

AJAX技術已經是現在最流行的Web應用開發技術了,但是與此同時,Web應用也成了這個IT架構中安全最薄弱,最容易受到攻擊的部分,AJAX應用相比較與傳統的Web應用,大大增加了客戶端與服務器之間的交互,同時也使得一些後臺的業務邏輯接口暴露給了客戶端,如果服務器端沒有足夠的保護或者沒有對客戶端請求進行合法性校驗,攻擊者就會趁虛而入,進入系統內部進行破壞。開發人員如何才能在開發工程中保證AJAX應用的安全呢? 一下是我搜集資料總結出來的一些checklist和best practices,希望對大家有所幫助。

 

1. 輸入校驗,這一部分已經在我的上一篇blog 如何進行Web應用的安全測試和輸入校驗 中進行了說明,進行輸入校驗有兩種方式,一種是Blacklisting: 就是列出所有非法的輸入進行屏蔽;另外一種是Whitelisting: 就是列出合法的輸入格式,只要不屬於這種格式都劃爲非法格式進行屏蔽。安全方面來說,Whitelisting比Blacklisting有更高的安全性。

 

2. 儘量避免動態的生成和執行code, 在javascript中儘量避免使用eval函數。

 

3. 在使用json對象之前對它進行校驗,因爲json對象也是javascript的一部分,所以json對象裏面也有可能包含有有害的代碼,所以在使用之前要對json進行校驗,以保證json對象是安全的,校驗的方法可以使用正則表達式進行也可以使用一個json parser進行轉換,然後再使用。

 

4. 在引用不可信的內容的時候儘量使用iframe的方式。

 

5. 不要一刀切的使用AJAX, AJAX的作用是提高應用的交互性,所以之需要在交互性比較強的地方纔使用ajax, 其他如之需要展示信息的地方使用傳統的方式安全性更高。

 

6. 儘量使交互的網絡傳輸量最小,ajax頻繁的交互不但對應用性能有影響,對安全也是很大的隱患,所以要儘可能在最需要的地方使用ajax, 不要用ajax執行大的局部刷新操作

 

7. 最後可以使用一些ajax的安全檢查工具進行檢查。

 

 

 

 

發佈了99 篇原創文章 · 獲贊 6 · 訪問量 59萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章