私は(SQL Serverの2014年に)次のSQLを悪用しようとしています:"IN"条件内でSQLインジェクションを利用する方法は?
declare @maliciousSQL nvarchar(max);
set @maliciousSQL = '???'
exec ('SELECT SUM(quantity) from mytable where id in ' + @maliciousSQL);
任意のSQLを実行するように細工され@maliciousSQLどのパラメータができますか?タスクがコマンド 'truncate table othertable'を実行することを前提としています - それは実行可能ですか?ヘルプ
私が知る限り、INは1列のデータセットを参照する必要があるため、これを行うことはできません。回避策があるかもしれませんが、私は '回避策'の解決策の直後です。ケーベン・シイバーズ –
いくつかのSQLブロックが "IN"条件の後に実行され、次にSELECT 1,2,3が正常に動作するように実行できますか?後者は本当に重要ではありません。最も重要なのはいくつかの邪悪なコードを実行することです – lekso