posts - 19, comments - 53, trackbacks - 0, articles - 283
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          java 有效的防止SQL注入

          Posted on 2010-01-01 00:38 Gavin.lee 閱讀(1081) 評論(0)  編輯  收藏 所屬分類: java SE & EE

          歸納一下,主要有以下幾點(diǎn):
          1.永遠(yuǎn)不要信任用戶的輸入。對用戶的輸入進(jìn)行校驗(yàn),可以通過正則表達(dá)式,或限制長度;對單引號和雙"-"進(jìn)行轉(zhuǎn)換等。
          2.永遠(yuǎn)不要使用動態(tài)拼裝sql,可以使用參數(shù)化的sql或者直接使用存儲過程進(jìn)行數(shù)據(jù)查詢存取。
          3.永遠(yuǎn)不要使用管理員權(quán)限的數(shù)據(jù)庫連接,為每個(gè)應(yīng)用使用單獨(dú)的權(quán)限有限的數(shù)據(jù)庫連接。
          4.不要把機(jī)密信息直接存放,加密或者h(yuǎn)ash掉密碼和敏感的信息。
          5.應(yīng)用的異常信息應(yīng)該給出盡可能少的提示,最好使用自定義的錯(cuò)誤信息對原始錯(cuò)誤信息進(jìn)行包裝。

          參考:
          http://msdn.microsoft.com/en-us/magazine/cc163917.aspx
          http://www.unixwiz.net/techtips/sql-injection.html
          http://www.nextgenss.com/papers/more_advanced_sql_injection.pdf
          http://www.securiteam.com/securityreviews/5DP0N1P76E.html
          http://xkcd.com/327/
          http://ferruh.mavituna.com/makale/sql-injection-cheatsheet/


          http://bbs.xiakexing.com/cgi-bin/topic.cgi?forum=34&topic=18&show=0
          http://www.cnblogs.com/iloveu/archive/2009/03/17/1414145.html
          http://dang.javaeye.com/blog/338367

          主站蜘蛛池模板: 聂荣县| 诸城市| 洪湖市| 叶城县| 新建县| 右玉县| 濮阳市| 崇州市| 仁布县| 金沙县| 瓮安县| 阳信县| 普宁市| 柳河县| 舟山市| 门头沟区| 彩票| 桃源县| 河南省| 北碚区| 宝山区| 富蕴县| 池州市| 彭阳县| 石城县| 修武县| 玉林市| 剑阁县| 札达县| 武山县| 栾城县| 无锡市| 沂南县| 福鼎市| 旺苍县| 巩义市| 芮城县| 攀枝花市| 油尖旺区| 天峨县| 西华县|