
16.02.2016, 16:49
|
|
Постоянный
Регистрация: 10.02.2012
Сообщений: 830
С нами:
7502006
Репутация:
90
|
|
Сообщение от Filipp
↑
Спасибо, пофиксил для поста. Вот фильтрация для GET'а:
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]preg_match[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'/(and|or|union|where|limit|group by|select|\'|\"|dbms|hex|substr|%|{|0x|,|version(|)information.shema|\/\*\*\/|\s)/i'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$sql[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR]
А вот для POST'а:
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]preg_match[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'/( union|\/\*\*\/|from\(| limit 0|group by|select\(|select |hex| substr|0x|information.schema|version\(|extractvalue|concat\(|..\/|\$\{|\s)/i'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$param[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR]
не могу понять в какое место в запросе(post) данные попадают..
апостроф также не фильтруется, большинство проверок обходятся через замену пробела на +
/( union|\/\*\*\/|from\(| limit 0|group by|select\(|select |hex| substr|0x|information.schema|version\(|extractvalu e|concat\(|..\/|\$\{|\s)/i
+union from+ +limit+0 select+ concat+( и тд.
|
|
|