антиинклуд

Тема в разделе "PHP", создана пользователем sultan347, 15 окт 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sultan347

    sultan347

    Регистр.:
    25 апр 2009
    Сообщения:
    230
    Симпатии:
    7
    Нужно товарищу выделить фтп папку на сервере, он туда будет выкладывать хмл файлы, а мой скрипт его обрабатывать. Вопрос такой, как надо себя обезопасить, что бы не положил пхп файл и инклудил
     
  2. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Считывать файлы не инклудом а fopen + fgets, потом xml парсером.
    Ну а элементы на валидность уже у себя проверять.
     
  3. sultan347

    sultan347

    Регистр.:
    25 апр 2009
    Сообщения:
    230
    Симпатии:
    7
    нет, вопрос именно такой, что бы не залил в эту папку пхп файл (вроде его говорят эксплоит) и через веб не запустил свой скрипт.
     
  4. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    Так пропиши в .htaccess
    deny from all

    Это запретит к папке доступ из веба, а чтобы по фтп не удалил его, поставь соотвествующие права.
     
    sultan347 нравится это.
  5. tlittle

    tlittle Постоялец

    Регистр.:
    26 мар 2009
    Сообщения:
    74
    Симпатии:
    13
    Ээээ. А эта папка у тебя в веб-структуре? Почему нельзя ее вынести на уровень вверх?
    Грубо говоря, если сайт у тебя лежит в /home/site.ru/public_html, то аплоадит он пусть в /home/site.ru/upload
    Ну а так - положи туда файл .htaccess с содержимым
    PHP:
    Deny from all
    и сделай на него права только чтение от рута, чтобы чувак не смог удалить или исправить.
     
    sultan347 нравится это.
  6. Darkmind

    Darkmind SNMP maniac

    Регистр.:
    31 май 2006
    Сообщения:
    182
    Симпатии:
    74
    Создай на директорию правило:
    Код:
    <FilesMatch "\.(pl|php|cgi|phtml)$">
    Order Allow,Deny
    Allow from 127.0.0.1
    Deny from all
    </FilesMatch>
    При любом запросе извне файлов с перечисленными расширениями будет выбрасываться Forbidden.
     
  7. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    у меня вот обратная ситуация. хочу в свой скрипт приделать такую фичу что инклюдится страница, на которой написано типа Доступна новая версия, обновитесь. хочу сделать через include. Но если Include удаленных файлов запрещен на хосте, то тогда работать не будет. А вот в вордпрессе как-то сделано что все равно ведь работает. как там то сделано?:confused:
     
  8. Kloster

    Kloster

    Регистр.:
    22 июн 2009
    Сообщения:
    216
    Симпатии:
    12
    Сделай подгрузку Javascript, а в нем выведи нужную информацию об обновлении. Посмотри на монстров - Яша и Гуля таким же образом грузят свои баннеры.
     
  9. Darkmind

    Darkmind SNMP maniac

    Регистр.:
    31 май 2006
    Сообщения:
    182
    Симпатии:
    74
    Кроссдоменный AJAX - не лучшее решение. Инклюдить удалённые файлы крайне нехорошо. Используйте CURL - удобно и безопасно.
     
  10. poison-b13

    poison-b13 Постоялец

    Регистр.:
    21 июл 2009
    Сообщения:
    64
    Симпатии:
    5
    запусти apache или какой у тебя там web server, с ограничениями на php к той папке которую расшаришь,
    пропиши в основном конфиге apache, или же в конфиге для userdir.
    Код:
    php_admin_flag safe_mode on
    php_admin_value safe_mode_exec_dir /home/hoster1/www
    php_admin_value open_basedir /home/hoster1/www
    под себя только поправь пути,
    можно еще кучу ограничений навесить через конфиг php.ini
     
Статус темы:
Закрыта.