Возможный к коду представления PHP веб-сайта?

Действительно ли возможно так или иначе просмотреть другого веб-сайты php файлы/коды?

Или перефразировать вопрос, мои коды php могут быть просмотрены кем-либо за исключением тех, у кого есть доступ к файлу?

Если так, как я могу лучше всего предотвратить это?

Ps: Сервер ОС является Ubuntu 9.10 и версия PHP, равняется 5 + (Apache2)

37
задан afuzzyllama 12 March 2016 в 17:50
поделиться

3 ответа

Ошибка или уязвимость в безопасности сервера (Apache или PHP engine) или вашего собственного PHP кода может позволить злоумышленнику получить доступ к вашему коду.

Например, если у вас есть PHP-скрипт, позволяющий людям скачивать файлы, и злоумышленник может обманом заставить этот скрипт скачать некоторые из ваших PHP-файлов, то ваш код может быть утечен.

Поскольку невозможно устранить все ошибки в используемом вами программном обеспечении, если кто-то действительно захочет украсть ваш код, и у него будет достаточно ресурсов, существует достаточная вероятность того, что ему это удастся.

Однако, пока вы поддерживаете свой сервер в актуальном состоянии, человек со случайным интересом не сможет увидеть исходники PHP, если только в вашем коде нет очевидных уязвимостей безопасности.

Прочитайте раздел Безопасность в руководстве по PHP в качестве отправной точки для обеспечения безопасности вашего кода.

44
ответ дан 27 November 2019 в 04:56
поделиться

С помощью эксплойтов или на плохо настроенных серверах можно загрузить исходный код PHP. Однако вы можете обфусцировать и/или зашифровать свой код (используя Zend Guard, Ioncube или аналогичное приложение), если хотите быть уверены, что ваш исходный текст не будет прочитан (если быть точным, обфускация сама по себе может быть отменена при наличии достаточного времени/ресурсов, но я пока не нашел дешифратора IonCube или Zend Guard...).

1
ответ дан 27 November 2019 в 04:56
поделиться

Никто не может читать файл, кроме тех, у кого есть доступ к файлу. Вы должны сделать код доступным для чтения (но не для записи) веб-сервером. Если обработчик кода php работает правильно, вы не можете прочитать его, запросив имя с веб-сервера.

Если кто-то скомпрометирует ваш сервер, вы рискуете. Убедитесь, что веб-сервер может писать только в те места, которые ему абсолютно необходимы. В / var есть несколько мест, которые должны быть правильно настроены вашим дистрибутивом. Они не должны быть доступны через Интернет. / var / www не должен быть доступен для записи, но может содержать подкаталоги, в которые веб-сервер записывает динамическое содержимое. Для них следует отключить обработчики кода.

Убедитесь, что вы ничего не делаете в своем php-коде, что может привести к инъекции кода. Другой риск - обход каталога с использованием путей, содержащих .. или начинающихся с /. Apache уже должен быть пропатчен, чтобы предотвратить это при обработке путей. Однако, когда он запускает код, включая php, он не контролирует пути. Избегайте всего, что позволяет веб-клиенту передавать путь к файлу.

0
ответ дан 27 November 2019 в 04:56
поделиться