devby 17 лет! Вспоминаем переходный возраст и делимся виш-листом
Support us

О безопасности symfony-приложений

31 комментарий
О безопасности symfony-приложений
Symfony — свободный каркас, написанный на PHP5, который использует паттерн Model-View-Controller (MVC). По-моему личному впечатлению, да и, думаю, впечатлению многих проект очень удачный, поэтому он широко используется при создании сайтов. Именно поэтому стоит уделять особое внимание возможным уязвимостям. В данной статье пойдёт речь о одной из таких уъязвимостей — о разработчике. В свободное от работы время люблю позаниматься своими проектами, которые написаны с использованием php, различных свободных CMS и фреймворков. Один из таких проектов использует symfony в качестве основы. Как и большинство начинающих изучать symfony, начал я с примера, в котором создавались два приложения – frontend и backend. Frontend отображается пользователю, а backend используется для администрирования сайта. Symfony генерирует для этих приложений четыре файла:
index.php,  frontend_dev.php, backend.php,  backend_dev.php

  • index.php, backend.php – это production версии скриптов.
  • frontend_dev.php, backend_dev.php – это dev версия скриптов.
frontend_dev.php, backend_dev.php предназначены для отлаживания приложения на локальной машине и выводят много интересной информации: конфигурицию приложения, запросы к базе и много другое. Открыв эти файлы в редакторе, несложно заметить, что в них есть заглушка, убрав которую, можно отлаживать уже с любой машины.
if (!in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1'))) { 
die('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.'); 
}
Зная данную информацию, напрашивается вопрос, как часто разработчики используют стандартные названия и поддаются соблазну удалённой отладки. Для поиска ответов на эти вопросы лучше всего обратиться к google. Первый же запрос “inurl:frontend_dev.php” выдаёт 495 000 результатов. Не все из результатов относятся к symfony, но цифра 495 000 впечатляет. Теперь, немного модифицируя запрос, можно найти много чего интересного. К примеру: “app_facebook_secret_key inurl:frontend_dev.php”. Более детальный анализ есть тут.
Читайте также
ИИ оставляет без работы своих же разработчиков
ИИ оставляет без работы своих же разработчиков
ИИ оставляет без работы своих же разработчиков
Техногиганты будут финансировать многомиллионную реконструкцию Белого дома, которую затеял Трамп
Техногиганты будут финансировать многомиллионную реконструкцию Белого дома, которую затеял Трамп
Техногиганты будут финансировать многомиллионную реконструкцию Белого дома, которую затеял Трамп
В Беларуси хотят сделать специальные SIM-карты для «государственного контроля за пребыванием детей в интернете»
В Беларуси хотят сделать специальные SIM-карты для «государственного контроля за пребыванием детей в интернете»
В Беларуси хотят сделать специальные SIM-карты для «государственного контроля за пребыванием детей в интернете»
1 комментарий
В Google AI Studio появилcя вайб-кодинг приложений
В Google AI Studio появилcя вайб-кодинг приложений
В Google AI Studio появилcя вайб-кодинг приложений

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.