MSSQL資料庫全庫批量替換

2022-02-28 22:46:05 字數 936 閱讀 2656

最近因為某同學以前做的一asp站點被攻擊掛馬,所以叫我幫忙檢查一下,發現是被sql注入所致.這些壞人把資料庫文字型的字段都加了一段js呼叫的**.

於是需要批量替換掉,可以用光標的系統儲存過程 sp_msforeach_worker 處理

批處理sql指令碼如下

declare

@fieldtype

sysname

set@fieldtype='

nvarchar'--

@filedtype 的值可以為 varchar 和 nvarchar 

--西狐注

declare

hcforeach 

cursor

global

forselectn'

update '+

quotename

(o.name)+n

'set  '+

quotename

(c.name) +n

'= replace('+

quotename

(c.name) +'

,'''',

'''')'

from

sysobjects o,syscolumns c,systypes t

where

o.id

=c.id 

andobjectproperty

(o.id,n

'isusertable')

=1andc.xusertype

=t.xusertype

andt.name

=@fieldtype

exec

sp_msforeach_worker 

@command1=n

'?'此同學的mssql資料為2000版本.其它版本未做過測試

哎順便感嘆一下那些掛木馬的大哥們怎麼這麼沒有人道啊.

SQL Server資料庫中批量替換資料的方法

sql server資料庫操作中,我們可能會根據某寫需要去批量替換資料,那麼如何批量修改替換資料呢?本文我們就介紹這一部分內容,接下來就讓我們一起來了解一下吧 sql server資料庫操作中,我們可能會根據某寫需要去批量替換資料,那麼如何批量修改替換資料呢?本文我們就介紹這一部分內容,接下來就讓我...

MSSQL資料庫注入

用下面的這種方法暫時解決了,目前為止沒有再出現插入了 在global.asax檔案下面加入如下 希望能管用.針對.net region sql注入式攻擊 分析 處理使用者提交的請求 分析使用者請求是否正常 傳入使用者提交資料 返回是否含有sql注入式攻擊 private bool processsq...

MSSQL資料庫使用者

1 建立登入帳戶 1 新增 windows 登入帳戶 exec sp grantlogin jbtraining s26301 網域名稱 使用者名稱 2 新增 sql 登入帳戶 exec sp addlogin zhangsan 1234 exec 表示呼叫儲存過程,儲存過程類似 c 語言的函式。內...