国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

讓SQL注入攻擊危害最小化三大措施

2024-07-21 02:44:37
字體:
來源:轉載
供稿:網友

使用用戶提供的數據進行數據庫查詢的任何應用程序是SQL注入攻擊的一個潛在目標。數據庫管理員可能無法完全阻止針對其數據庫服務器的SQL注入式攻擊;但是,管理員們和應用程序開發(fā)人員可以做一些事情,將這些攻擊的影響最小化。

數據庫管理員可以做什么?

不要讓數據庫和Web服務器放在同一臺計算機上

使用防火墻或不可路由的ip地址來阻止到數據庫的互聯(lián)網訪問。一旦配置完畢,來自數據庫服務器的數據包將不能被轉發(fā)到互聯(lián)網。在Web服務器上需要添加一條路由,這樣才能找到數據庫服務器。

配置可信任的IP接入和訪問(例如,IPSEC),以控制哪些機器能夠與數據庫服務器通信。

從數據庫服務器上移除所有的示例腳本和應用程序。

為每一個應用程序的數據庫連接賬戶使用一個專用的低特權賬戶。不要使用sa、dba、admin。

不要準許用戶或應用程序直接訪問數據庫表。要使用對數據庫擁有有限訪問的應用程序角色。如果應用程序僅需要讀取訪問,就要將數據庫的訪問限制為只讀。

從生產數據庫中移除未用的存儲過程。

將對應用程序的訪問僅授權給用戶創(chuàng)建的存儲過程。

不要將應用程序的“_ANY_”授權給操作系統(tǒng)命令或系統(tǒng)存儲過程。

應用程序的設計人員可以做什么?

程序設計人員肩負著保障Web應用程序安全的重要責任。在設計和編碼階段加強安全審察才是杜絕程序漏洞的關鍵。大體而言,程序設計者至少應當實施下面的一些措施:

要創(chuàng)建應用程序要生成的特定的通用錯誤消息。因為,在一次SQL注入攻擊期間,通過數據庫生成的默認的錯誤消息,攻擊者可以獲取有價值的信息,如表格和欄的名稱。

在將用戶服務的輸入提交給數據庫之前,驗證用戶輸入的合法性。僅接受所期望的用戶輸入,并限制其長度。注意,只要可能,使用白名單列表檢查所有的用戶輸入。應用程序服務器防火墻可被用于檢查所有的輸入,并僅接受那些符合標準的輸入。

在程序開發(fā)期間,使用Web應用程序掃描工具發(fā)現代碼中漏洞。

將Web應用程序與SQL數據庫隔離開來,將應用程序所要求的所有SQL放置在數據庫服務器上。

使用靜態(tài)查詢。如果需要動態(tài)查詢,就使用準備好的語句。

使用一個安全的接口,如ADO的Command Object,使應用程序執(zhí)行存儲過程。

檢測SQL注入漏洞和攻擊

要檢測易于受攻擊的應用程序并不是簡單事情,因為這些漏洞可能存在于面向用戶的任何應用程序接口中。雖然并非所有的SQL注入攻擊技術都易于檢測,但數據庫管理員或開發(fā)人員可以做以下的事情:

閱讀Web服務器的日志。有時,在這些日志中就可輕易地發(fā)現SQL注入攻擊,因為這時寫往日志的登錄項目要比平常多得多。

查找HTTP 404和HTTP 500錯誤日志項目,以及程序生成的檢查用戶輸入的其它的錯誤日志項目。

使用Web應用程序掃描工具。這些工具可被用于警告數據庫管理員,告知管理員應用程序中易受SQL注入攻擊的地方。

在部署應用程序之前,檢查其中的SQL注入因素至關重要。

總之,一個防御SQL注入攻擊的穩(wěn)健方案應是在開發(fā)、部署、管理、維護的多個方面都進行檢查,并且需要安全管理人員不斷地注意SQL注入的最新動向,采用切實可行的工具,使程序的漏洞最小化。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 东阿县| 阿鲁科尔沁旗| 互助| 兴城市| 中山市| 普宁市| 吉首市| 咸丰县| 鄂伦春自治旗| 邹城市| 余江县| 策勒县| 仙桃市| 威信县| 尼木县| 盐边县| 南平市| 巫山县| 公安县| 全南县| 博野县| 秦安县| 固始县| 行唐县| 眉山市| 榆中县| 诸暨市| 芦山县| 金沙县| 河北省| 平乡县| 鄂尔多斯市| 固安县| 乌恰县| 包头市| 台北市| 政和县| 周口市| 海丰县| 鄯善县| 辰溪县|