Развлечение для юных хакеров

Вурдалак

Продвинутый новичок
Гораздо эффективнее будет смотреть сразу в код, бесцельно тратить время на ковыряние сайта снаружи вряд ли кто-то будет (ещё и бесплатно, насколько я понял).

BTW, в современной разработке уязвимости типа SQL Injection, XSS, etc. почти невозможны, по-моему. Если не так, то нарушена технология производства и всё :) Всякие валидаторы, prepared statements, просто query builder'ы, шаблонизаторы с автоматическим экранированием просто не предоставляют шанса где-то случайно допустить такую уязвимость. Только логические ошибки, отсутствие проверки прав и т.п.
 

AmdY

Пью пиво
Команда форума
Chusha
там стоит intval() после этого к тебе серьёзно относиться вовсе не хочется. не надоело играть в знайку и самоутверждаться в попытках задать хитрый вопрос, это уже не первый раз?
 

untied

Сдвинутый новичок
- Он выглядит как визитка - на самом деле там движок в 10+ тысяч строк кода.
Он даже как визитка не выглядит.
А можно из любопытства поинтересоваться, чем же заняты на сайте эти 10+ тыс. строк кода?
 

zerkms

TDD infected
Команда форума
Вурдалак
За недели не проходит, чтобы какую-нибудь дочернюю компанию Sony не ломали. Последние пару раз было как раз через инъекции.
 

echo "Hello world!";

Новичок
Только что зарегистрировался на php.ru с тем же логином что и тут. Но получилось как то странно.





Т.е. теперь из моего ника будет видно, что я элементарные вещи с ошибкой пишу. Кстати чтобы войти там в систему мне надо вводить так echo "Hello world!"; а если так "Hello world! то не войдёшь.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
вот вам делать нехрен
Server: Apache/2.0.63-lk.d (Unix) mod_ssl/2.0.63-lk.d OpenSSL/0.9.8g mod_dp20/0.99.2 mod_python/3.3.1 Python/2.5.1 mod_ruby/1.2.6 Ruby/1.8.6(2007-09-24)
если там голый апач в сеть смотрит на одном сервере, я его положу без усилий тупо открывая новые соединения и не заканчивая запрос скриптом на 20 строк, и логи будут пустые
кто знает - поймет о чем я
 

zerkms

TDD infected
Команда форума
Chusha
Ну вообще говоря не совсем понятно, что ты имеешь под "контролем" данных. В конкретном случае разницы никакой между препаредами и приведением типа нет.
 

AmdY

Пью пиво
Команда форума
Chusha
то, что ты отдельно вынес приведение к инту, показывает что ты не пользуешься prepared statement, а значит возможность инъекции есть. как выше писал Вурдалак технология производства решает многие проблемы с безопасностью. фреймворк из тысяч строк должен заботиться о криворуких и забывчивых программистах.
 

zerkms

TDD infected
Команда форума
Chusha
Не могу согласиться, что "контроль" == "приведение типа". Но не суть, вопрос терминологии.
 

craz

Нестандартное звание
контроль это не просто приведение к типу, контроль это к примеру когда /?id=129038778126783, а в базе известно что новостей всего 100. Должна вывалиться страница, что запрашиваемый item не найден, другое дело как это реализовано.
 

Вурдалак

Продвинутый новичок
Если я правильно понимаю prepare, то мне пришлось бы иметь десяток, а то и больше, вариантов шаблонов запроса на каждую точку получения данных
— неправильно понимаешь. Шаблон для PS абсолютно так же можно формировать динамически. Ничем от формирования запроса это не будет отличаться.
 
Сверху