以下SQL是否容易通過@SearchWord參數進行SQL注入?FormsOf函數和SQL注入中的參數
我想使用的參數與功能FORMSOF,但唯一的指導,這樣做,我發現在這個堆棧溢出問題:How to pass parameter to FormsOf function in sql server
但是該解決方案似乎是使用一些動態SQL ,我想知道這是否會受到SQL注入的影響。如果@searchWord包含SQL注入類型字符串,會在下面的例子中發生什麼?這是不是一個問題,因爲它仍然在參數中,作爲參數傳遞給FREETEXTTABLE?
給出的解決方案是:
DECLARE @SearchWord nvarchar(max)
SET @SearchWord = 'tax'
DECLARE @SearchString nvarchar(max)
SET @SearchString = 'FormsOf(INFLECTIONAL, "' + @SearchWord + '")'
SELECT listing_id, RANK, name, address, city, zip, heading, phone
FROM listings a,
FREETEXTTABLE(listings, *, @SearchString)
WHERE [KEY] = a.listing_id
ORDER BY RANK DESC, name