1樓:Aray
如果不能使用引數替換的方式,可以這樣來防SQL注入:
where 條件的值全部用單引號包含起來起來,然後將變數中的單引號轉義(替換成兩個單引號);
類似拼接出這樣的SQL即可: where numbercol='1' and string_col='it''s me.'
不用為了注入漏洞問題而限制使用者輸入。
跟新,完整規則如下:
SQL語句中的常量(常量指的是:user_name='Aray' and age='39' 中的Aray和39),如果是使用者輸入,全部使用單引號包含起來,將常量裡的單引號轉義(將單引號替換成兩個單引號)
SQL語句中的關鍵字(類似from and),如果這個是使用者輸入的,用正規表示式驗證它,保證他不包含除了數字字母下劃線以外的其它字元;
SQL語句中的子段或者表名字,如果是使用者輸入的,用正規表示式驗證它,保證他不包含除了數字字母下劃線以外的其它字元。
2樓:惟夢
你走的方向就已經錯了。
防止注入是需要引數化,而不是去過濾字元!!
第一點,SQL 語句應寫成固定字串,變數使用引數名代替。比如 InputUserName,寫成 @username。
第二點,編寫應用程式進行查詢,變數部分應使用 Parameter 方式傳入,這樣才能保證 SQL 語義不被傳入值改變。
你只要做到這兩點,就沒有注入問題。
如何在限定的按鍵次數下輸入最多的字元?
a,ctrl H,a,tab,aaaaaaaaaaaaaaaa,按住回車不放用掉剩下的次數。神威太湖之光也扛不住 懶得優化,反正比上面幾個方法多 有人把這個問題推廣了一下寫了篇文章 Solution Sequences for the Keyboard Problem and its General...
30萬使用者的web系統,單台mysql伺服器可以扛住嗎?
瀟湘夜雨 業務qps的估算一般按照場景來劃分,闡述下常見場景的估算方法 1 搶購和活動場景 按照80 的訪問量集中在20 的時間內 qps pv 80 86400 20 2 白天提供業務的場景 例如政務查詢系統等 按照一半時間去計算4w秒 qps pv 40000 3 全天後無明顯波峰場景 qps ...
有沒有那種根據使用者輸入的元件需求自動生成dockerfile或者docker映象的工具?
DavidShawn 這是個好需求,我也類似的需求!我是這樣設想的 通常情況下,我們會From乙個基礎映象,然後自己再新增幾條語句,update,mkdir什麼的。但是,當我們生成映象,並進入使用時,突然發現忘了一些東西,比如我要安裝乙個net tools什麼的,來提供ping功能,過了一會又發現需...