![]() |
Как определить что скрипт запущен локально
Как сдалать проверку в PHP скрипте 1 что он запущен из скрипта 2, который находится на томже сайте
Т.е. нужно запретить запуск скрипта 1 удаленно и из других скриптов, если они используют хостинг, этого же сервера if ($_SERVER['SERVER_ADDR'] != $_SERVER['REMOTE_ADDR']) предотвращает только удаленный запуск |
В первом файле
PHP код:
PHP код:
|
Цитата:
PHP код:
|
Если ты никому не расскажешь, что у тебя константа для проверки называется "l_include" - то никто и не догадается, что надо именно ее объявить. А если уже прочли скрипт, например через file_priv в sql-inj - то тут практически никакая проверка не спасет :)
Вот еще мысль: Можно сделать проверку полного пути от корня сервера, чтоб быть уверенным что скрипт Б инклудят из скрипта в твоей папке. Например так: PHP код:
|
pretolock Не позволит нормально настроенный сервер/права на файл. Если злоумышленнику удалось заинклудить/прочитать исходный текст скрипта - ни одна защита не спасет (кроме быть может самописных библиотек-расширений ПХП)
-=Static=- На переменные нельзя надеяться. Например: PHP код:
|
а делов то..
PHP код:
|
Цитата:
$_SERVER['SERVER_NAME'] = ....; $_SERVER['SERVER_ADDR'] = ....; И способ не работает |
eLWAux Достаточно неожиданно, но условие будет выполняться всегда ^^ Во всяком случае server_addr :D Да и вообще - зачем читать хотя бы первый пост до конца?
|
Самый оптимальный вариант - вариант Gift
только я бы еще сделал както так: PHP код:
НУ может ктото другой придумает,но при таком раследе я непредставляю как ктото сможет угадать бдующую константу. |
m0Hze Зачем угадывать? Инклудим файл с генератором, инклудим интересующий файл.
Опять таки - если есть возможность читать/инклудить чужой файл - бесполезно это баловство на чистом пхп |
ну хз, помоему во всех cms именно такая проверка,которую предложил ты.Я незнаю что еще хочет автор.Возможно можно использовать никс? Там же если я правильно помню есть несколько групп,типо www,local, ну так вот,если пользователь состоит в группе локал,определена константа,и у вызывающего тактойто ип - запускаем,если нет - гуд бай.
НУ хз,хз |
Цитата:
- скрипт который должен запустить локальный скрипт генерирует случайное число - записывает его в файл - вызывает локальный скрипт и передает ему в URL'e это случайное число - локальный скрипт сравнивает случайное число из URL'а со случайным числом прочитанным из файла - локальный скрипт удаляет файл со случайным числом как такая схема? |
Цитата:
такчто вызвать вызывающий скрипт чтобы он сгенерировал случайные данные будет проблематично |
Цитата:
|
| Время: 10:17 |