2012-03-16 64 views
1

我們有一個基於Oracle 11g數據庫的grails-groovy(現在版本爲1.3.7)的應用程序。 我們必須讓OWASP投訴,所以我們正在考慮所有可能的安全增強/插件。 主要問題在於: 我們的應用程序中有一個創建電子郵件模板功能,用戶可以創建一個新的電子郵件模板並將其保存。使用必須在此模板頁面中手動編寫代碼以創建模板。 (實施完成,我們需要保護它!) 代碼由將安全性應用於應用程序的代碼輸入頁面

1)常規代碼
2)Grails的標籤
3)SQL選擇查詢(我們可以限制用戶爲只讀,這樣沒有插入和刪除等)
4)HTML標籤
該模板由應用程序使用,它在發送之前編譯,執行並將模板應用於電子郵件。

我瞭解markup-sanitizer插件和HDIV api並思考它們,但我怎樣才能更安全地使用此功能?

回答

0

我想這是一個功能,你必須信任你的用戶。從我的角度來看,您無法清理這種標記 - 注入惡意代碼的方式太多了。 (請參閱「編寫安全代碼」)

當談到OWASP時,您總是必須分析威脅:攻擊的可能性以及可能造成的傷害程度。如果只有管理員(您信任)可以訪問此模板引擎,那麼我估計風險很低。

否則,您必須創建一個模板生成器,而不是自由格式的模板。但是,即使這從你的描述中聽起來是一個很大的努力,因爲你需要一個SQL查詢構建器和某種模板構建器。

所以我想你應該嘗試重新定義需求,以便安全實現是可能的。

相關問題