Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2

Если файл с кодом со стороннего сайта подключен, то он выполнится

12.11.2017, 15:20. Показов 600. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подключен, например. при помощи include или requre_once
Есть ли возможности стороннему сайту защититься от этого? Кроме запрета доступа в .htaccess ?
Т.е. может ли сторонний сайт как-то запретить подключение его файлов РНР всеми желающими?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.11.2017, 15:20
Ответы с готовыми решениями:

Аналог _kbhit в с# (если нажать кнопку - выполнится действие)
Ну в общем-то переписываю свое приложение из С++ в С#(попутно разбираясь со вторым) Наткнулся на проблему Нужно выполнить...

Двойной цикл: нужно получить первое значение если выполнится условие
есть двойной цикл и нужно получить первое значение если выполнится это условие if (!field->IsWin()) получаем значения и останавливаем...

Php+mysql что будет если запрос SELECT выполнится быстрее чем UPDATE (в разных потоках)
Ребята. Вот объясните мне пожалуйста. Может ли быть такое?: Предположим, что открылось 2 потока одновременно (2 юзера открыли...

12
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
12.11.2017, 15:23
Цитата Сообщение от Htext Посмотреть сообщение
Подключен, например. при помощи include или requre_once
неверное утверждение. Будет сделан обычный http запрос, такой же как и ввести этот же url в браузере, и выведен полученный контент.
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
12.11.2017, 15:43  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
неверное утверждение
Я имел в виду, например, что на site1.ru имеется файл s1.php, в котором имеется строчка примерно такая:
PHP
1
require_once "Z:/home/site2.ru/www/s2.php";
Добавлено через 1 минуту
Допустим, известен полный путь до файла s2.php (узнать его - дело техники и времени), находящегося на сайте site2.ru .

Добавлено через 5 минут
Контент будет выведен, но так, как если бы файл s2.php находился на сайте site1.ru. Например,
PHP
1
echo  $_SERVER['DOCUMENT_ROOT'];
выдаст что-то типа Z:/home/site1.ru/www

Добавлено через 3 минуты
Сайты расположены на одном сервере, имею в виду.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
12.11.2017, 15:57
Htext, https://secure.php.net/manual/... en-basedir
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
13.11.2017, 13:19  [ТС]
Да, но если ограничить доступ к каталогам с файлами РНР, тогда никто, и сам site2.ru (владелец файла) не сможет их использовать.
Вопрос в том, как запретить подгрузку и запуск файла РНР другим сайтам. Тогда как сайт-владелец, на котором находится этот файл, естественно, должен иметь возможность запускать его.

Добавлено через 5 минут
Т.е. понятно, что можно в .htaсcess разрешить доступ только с IP-адреса 127.0.0.1, но это как-то (...).
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
13.11.2017, 13:20
Htext, эти настройки можно задать каждому сайту отдельно
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
13.11.2017, 13:43  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
задать
site1.ru подгружает (путем подключения через requre_once) себе файл s2.php с сайта site2.ru.
Вопрос: какие настройки на сайте site2.ru надо сделать, чтобы запретить такую погрузку? При этом сам site2.ru должен иметь возможность подключать и использовать этот файл.
Функция open_basedir выполнит запрет для ОБОИХ сайтов, она не годится здесь.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
13.11.2017, 13:53
Htext, в настройках виртуал хостов site1 добавить
Code
1
php_admin_value open_basedir /var/www/site1
В сайт2 соответственно будет другое значение.

Ps. Синтаксис конфига возможно несколько отличается, давно апачем не пользовался
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
13.11.2017, 15:07  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
в настройках виртуал хостов site1 добавить
Это если владелец сайта site1 сделает это сам. Вопрос в том - если он не будет этого делать.

Добавлено через 6 минут
Я тут посмотрел, предлагается 2 варианта, в общем случае: либо .htaccess, либо в каждый скрипт прописывать константы и при подключении скриптов проверять значения этих констант (передавая их в списке параметров); если значения не совпадают - прекращать работу скрипта.
Однако, если значение константы станет известным, site1.ru может добавить ее в список параметров. Так что это - полумера. Тем более, скрипт-то все равно подключается; то, что он, при несовпадении константы, прекратит работу - это уже немного другое дело.

Добавлено через 6 минут
Про константы, например, здесь описано: https://ruseller.com/lessons.php?rub=37&id=301
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
13.11.2017, 15:10
Htext, это скорее проблема хостера.
В htaccess такие настройки выставлять плохо, так как нельзя их установить на уровне php_admin_value, можно только php_value и следовательно их можно переопределить. Делать это необходимо в настройках virtual hostа

Константы - это очень плохая идея, хотя бы потому что ее просто забыть добавить проверку
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
13.11.2017, 15:22  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
Константы - это очень плохая идея
Согласен! Тем более, что дело еще и в другом.
Вот Вы можете мне объяснить (там, по ссылке) - какой смысл в проверке константы _JEXEC ? Ведь ее можно подделать (добавить) легко. Ибо она - общеизвестная (по крайней мере, для !Joomla). Разве что - каждый день менять ее во ВСЕХ РНР-фАЙЛАХ site2 на новую, случайную...
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
13.11.2017, 15:30
Htext, смысл этой константы - давным давно криворукие разработчики и не менее криворукие пользователи популярных cms не умели или не хотели прятать код выше корня веб сервера, оставляя в корне веб сервера только точки входа. Потом заметили что к нккоторым файлам можно обратиться из браузкра, указав путь до них. Вот и придумали костыль с константой, лишь бы настройкой сервера не заниматься.
1
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
13.11.2017, 16:15  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
это скорее проблема хостера
В том смысле, что для site1 будет php_admin_value open_basedir /var/www/site1,
а для site2 - php_admin_value open_basedir /var/www/site2 ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.11.2017, 16:15
Помогаю со студенческими работами здесь

Не грузится система если подключен второй диск
Нашел старый хард и хотел посмотреть что там на нем есть, но при попытке подключить его перестает грузится windows с основного диска. ...

Windows не бутится если подключен второй HDD
Господа, сдаюсь! 2 месяца пытался решить эту проблему но ничего не получилось. Нужна помощь. Имеется 2 HDD: 1) ST500DM002-1BD142...

Проверить, подключен ли интернет, если выдернут шнур из роутера
то есть в этом случае нужно отправить http запрос на сервер провайдера или как в этом случае программно понять есть ли интернет?? мне...

Видят ли все мои соединения если я подключен по впн?
Доброго дня. Подключен к рабочей сети по впн(от админов работы), по нему получаю доступ к внутренним ресурсам организации. Вопрос, если...

Сообщение если нет бумаги или не подключен принтер.
1)У меня стоит макрос на кнопочке для печати все работает (печатает) но мне еще нужно чтобы выдовало сообщение если нет бумаги и если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита табличной части. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru