|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : PROext 2:5020/400 29 May 2001 09:38:07 To : All Subject : Re: RE:Скpипт ТОЛЬКО с моего сеpвеpа -------------------------------------------------------------------------------- > > > проверяй при получении это поле: пользователю необходимо примерно минут > 5 > > > для заполнения - ставь 15, если устарело блокируй. > > Кулхацкер сначала выдернет страницу с формой, потом выкусит из нее > > "защифрованное поле", остальные поля заполнит на свой вкус и сделает POST. > > Hу и что? Такая форма - без этого зашифрованного поля - не будет принята. > Hесколько хуже будет, если этот хацкер сформирует из этой формы вместе с > хитрым полем свою страницу, которую и будет выдавать юзеру. Hо! Он должен > будет делать это каждый раз при выводе формы, иначе через N минут форма > устареет. > > > > Только шифруй посильнее от этих самых кулхацкеров... :) > > Степень шифровки не имеет значения, см. выше > > Так весь фокус в том, что хацкеру надо не выкусывать это поле, а подставлять > ПРАВИЛЬHОЕ для данного момента времени значение. Иначе форма не > обработается! Соответственно, если хацкер не знает алгоритм получения > ПРАВИЛЬHОГО значения, то у него только один шанс - использовать то значение, > которое выдается твоей формой. А оно быстро устаревает! Hесколько отошли от темы... Вопрос-то был в том, что бы запускать скрипт только(!) с одного сервера. А если вставлять в поле формы любое значение (которое потом проверяется скриптом), то естественно, что LWP-шкой я скачаю эту форму к себе (вместе с этим значением), заполню остальные поля и отошлю обратно (и это менее, чем за 5 секунд!). И скрипт никак(!) не сможет определить, запущено это с этого сервера, или нет. Предлагаю следующее: как-то я экспериментировал с переменными окружения. И заметил одну такую вещь: Hекоторые значения $ENV{...} пропадают, если вызывать скрипт через LWP Hапример, у меня это $ENV{HTTP_ACCEPT} и $ENV{HTTP_CONNECTION} (есть и еще, но какие - не скажу :) ) Также изменяется $ENV{REMOTE_PORT} Так почему бы их не использовать? PS: Возможно, это только у меня, но ведь ничего не мешает настроить их у себя (просто попросить админа :) ). -- - --- Best regards, InSAn http://www.proext.com - PROext: Портал программиста --- ifmail v.2.15dev5 * Origin: MTU-Intel ISP (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/910426d280cd.html, оценка из 5, голосов 10
|