避免SQL注入的五種技巧

2021-12-29 20:31:45 字數 1146 閱讀 7637

攻擊者如此青睞web攻擊的乙個重要原因是它可以損害一些無辜的站點,並用於感染大量的受害者。事實證明,web伺服器已經被證明是網際網路絡中的「軟柿子」,攻擊者們可以充分利用之。這種攻擊的唯一受害者就是使用者,因為正是使用者在瀏覽受到危害的**時會將自己暴露給惡意**。然而,除了使用者之外,還有兩個受害人,即**的所有者和管理員。

在近半年來的sql注入攻擊中,這一點尤其明顯,在其中,後端資料庫可能被惡意**感染。清理這種攻擊的後遺症是很痛苦的,有許多案例證明,清理資料庫之後,幾小時後會再次遭受攻擊。最佳的方法是預防,從一開始就想方設法避免遭受攻擊。

在此,筆者只是總結幾條技巧,站點所有者和管理員可以遵循之,便可以將遭受攻擊的機會最小化。

制定最佳方法

sql注入攻擊並不是新東西,攻擊者們掌握這項技巧已經有許多年了。近些日子,許多**發表了一些文章提供了一些資源,幫助開發人員編寫安全**。安全管理人員應當制定一些通用的安全方法,下面給出三點建議。一、建立引數化的儲存程序,二、最少特權連線,三、僅對所有的儲存程序授權「執行」許可,四、僅對應用程式域組授予許可。

除了一開始就注意安全地開發應用程式,對現有的應用程式實施評估是很重要的,這包括對第三方的應用程式。可以利用惠普發布的scrawlr來幫助開發人員查詢包含漏洞的頁面。此外,谷歌提供的ratproxy也是不錯的選擇。

盡可能少的特權

開發人員應當確保web應用程式以最少的特權執行,千萬不要使用管理員賬戶執行,如避免使用db_owner 或 sysadmin等賬號執行。

伺服器日誌

跟蹤日誌對於診斷攻擊是很有用的。近半年以來的sql注入攻擊都是通過惡意的http請求發生的。對伺服器中的uri查詢串進行檢查可有助於確認攻擊,並可成為日後調查的起始點。

第三方廠商

如果單位使用第三方開發的軟體,要確保其遵循最佳的方法。要特別關注其程式的測試,要關注其開發力量和軟體公升級能力。

保護web應用程式

現在的市場上,有各種各樣的產品可以強化web應用程式的安全,防禦一些攻擊。但這些不能成為代替開發安全程式的最佳方法和技巧。例如,web應用程式防火牆中,現在有大量的商業產品可以選擇。有的防火牆,如ips方案可有助於保護web伺服器免受攻擊,並可阻止惡意的請求,防止其訪問伺服器。

對付web威脅和sql注入攻擊並沒有什麼一招制敵的妙方。但是加強對使用者的教育,並實施一些行業的最佳方法,這確實可防止通過注入攻擊實施的web損害。

避免SQL注入

sql注入攻擊 sql injection 簡稱注入攻擊,是web開發中最常見的一種安全漏洞。可以用它來從資料庫獲取敏感資訊,或者利用資料庫的特性執行新增使用者,匯出檔案等一系列惡意操作,甚至有可能獲取資料庫乃至系統使用者最高許可權。而造成sql注入的原因是因為程式沒有有效過濾使用者的輸入,使攻擊者...

避免SQL注入

sql注入攻擊 sql injection 簡稱注入攻擊,是web開發中最常見的一種安全漏洞。可以用它來從資料庫獲取敏感資訊,或者利用資料庫的特性執行新增使用者,匯出檔案等一系列惡意操作,甚至有可能獲取資料庫乃至系統使用者最高許可權。而造成sql注入的原因是因為程式沒有有效過濾使用者的輸入,使攻擊者...

SqlParameter避免sql注入

簡單的給個示例 傳統的查詢語句的sql可能為 string sql select from users where user id request.querystring uid 很顯然,我們在這裡拼接了字串,這就給sql注入留下了可乘之機。現在,我們要改寫這樣的語句,使用sqlparameter來...