bobri6 Опубликовано 5 Марта 2009 Жалоба Поделиться Опубликовано 5 Марта 2009 Доброго времени суток!Вопрос по сути к знатокам ipb. Интеерсует как в данном форуме реализирована защита от подмены запросов(напр. POST).Также буду рад, если мне кто-то поможет разобратся в том, как защититься от данной подмены при написании ajax мода - адрес скрипта-обработчика и передоваемме данных легко в ява скрипте видны, то-есть подменить ничего не стоит. Как можно защитится от данного вида аттак?Буду благодарен за толковые ответы. Заранее спасибо. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 5 Марта 2009 Жалоба Поделиться Опубликовано 5 Марта 2009 Авторизация проверяется. Для некоторых запросов существует флуд-контроль или возможность ограничить обработчик только одним срабатыванием, см. пример с рейтингом в профиле. Или вы от "атак" со стороны зарегистрированных пользователей защититься хотите? Тогда конкретизируйте проблему, что вы под "атакой" имеете в виду Есть возможность использовать $ipsclass->что-то-там-key для проверки особенно важных вещей, но при желании и его обойти можно. P.S. Что вы хотели сказать такой иконкой темы? Она как-то не располагает к тихой беседе (: Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
bobri6 Опубликовано 6 Марта 2009 Автор Жалоба Поделиться Опубликовано 6 Марта 2009 вопрос о наболевшем, уже давно задался этой проблемой.(это к иконке темы)ну а в ajax модах? когда обращение выполняет серверная сторона, и id юзера(например хрчу сделать рейтинг на ajax) приходится указывать в ява скрипте и передавать POST`ом. в данной случае при подмена потенциально опасно, так как не контролируется кто голосовал, хотя и настояий взлом при прямых руках программиста невозможен. Есть способы защити в данном случае? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 6 Марта 2009 Жалоба Поделиться Опубликовано 6 Марта 2009 вопрос о наболевшем, уже давно задался этой проблемой.(это к иконке темы)ну а в ajax модах? когда обращение выполняет серверная сторона, и id юзера(например хрчу сделать рейтинг на ajax) приходится указывать в ява скрипте и передавать POST`ом. в данной случае при подмена потенциально опасно, так как не контролируется кто голосовал, хотя и настояий взлом при прямых руках программиста невозможен. Есть способы защити в данном случае?IPB проверяет подлинность пользовательской сессии во всех своих обработчиках, включая xmlout.php. И при голосовании id голосовавшего берётся не из запроса, а из $this->ipsclass->member['id'], в котором содержатся верные данные. Или вы поверхностно ознакомились с проблемой, или вам повезло найти дыру, которую никто годами не замечал. Во втором случае всёже нужен конкретный пример кода, который вы считаете уязвимым в плане проверки личности обращаю щегося к нему P.S. Просто я в эту иконку вкладываю другой смысл, видимо Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
bobri6 Опубликовано 6 Марта 2009 Автор Жалоба Поделиться Опубликовано 6 Марта 2009 Спасибо, натолкнули меня на размышления. я правилнь понял назначение файла xmlout.php - обрабатывать обращения ajax зпросов? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 6 Марта 2009 Жалоба Поделиться Опубликовано 6 Марта 2009 в общем правильностандартно используется index.php?act=xmlout&что-то-тампосле чего он require_once и туда передается управлениеестественно перед этим в index.php проверяется авторизация и все как положено Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
bobri6 Опубликовано 6 Марта 2009 Автор Жалоба Поделиться Опубликовано 6 Марта 2009 большое спасибо) уже проверил на практике) все отлично работает. но по ходу дела появился маленький вопрос.В своем моде решил выдавать результат обработки back`end`ом(xmlout) через функцию die(); В результате у меня почему то не выдались int результаты. хотя через echo() выдаются спокойно. В чем может быть причина(интересует именно природа явления, это не проблема). Возможно данная проблема связана с тем что передавал функции die значение в массиве. Может она не принимает массив? И последний вопрос, чем лучше пользоватся для ответа в данном случае, die или echo? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 7 Марта 2009 Жалоба Поделиться Опубликовано 7 Марта 2009 Смотря что вы хотите вернуть. Смотрите лучше примеры в функциях этого файла, их прелдостаточно. И снова, вы говорите что чтото делаете не через "A", а через "B". Но без колда нельзя сказать есть ли в этом ошибыка\, можно по-разному это написать. P.S., Прардон за опечатки, клавиатура неудачная сегодня у меня. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.