Дебажим PyroCMS на примере CVE-2023-29689

D2

Администратор
Регистрация
19 Фев 2025
Сообщения
4,380
Реакции
0
Эта статья в основном посвящена отладке PHP приложений с помощью VSCode и немного уязвимости CVE-2023-29689. Мы рассмотрим шаги для настройки удаленной отладки через SSH и изучим, как использовать эти знания для анализа уязвимостей и тестирования эксплойтов.

Установка PyroCMS 3.9​

Уязвимость в версии 3.9, так что качаем её:
Код: Скопировать в буфер обмена
Код:
cd /var/www/html
git clone -o pyrocms https://github.com/pyrocms/pyrocms -b 3.9
chmmod www-data:www-data /var/www/html -R
Пишем конфигурацию для нгинх, но пока что не начинаем, тк не скачали php-fpm
Код: Скопировать в буфер обмена
Код:
sudo nano /etc/nginx/sites-available/pyro.conf
server {
  listen 80;

  server_name 192.168.147.131; # Check this
  root /var/www/html/pyrocms/public; # Check this

  index index.php index.html;
  charset utf-8;
  location / {
    try_files $uri $uri/ /index.php?$args;
  }

  location ~ \.php$ {
    fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; # Check this
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }

}
Создаём симлинк и качаем xdebug
Код: Скопировать в буфер обмена
Код:
sudo ln -s /etc/nginx/sites-available/pyro.conf /etc/nginx/sites-enabled/
sudo apt-get install php8.1-xdebug (на будущее)
Что такое отладка и зачем нам нужно отлаживать?
Отладка
— это процесс поиска и исправления ошибок или багов в исходном коде любого программного обеспечения. Проще говоря, это вывод результатов на экран. Отладка необходима, когда вы хотите найти уязвимости или написать эксплойты для уже существующих уязвимостей. Кроме того, отладка помогает разработчикам понять логику работы их кода.

Удаленная отладка через SSH с VSCode​

После развертывания PyroCMS 3.9 на нашем сервере Ubuntu (я использовал Ubuntu Server и Nginx - вы можете использовать что угодно), следующий шаг — это настройка удаленной отладки. Удаленная отладка полезна, так как позволяет вам отлаживать приложения, работающие на удаленных серверах, прямо из вашей среды разработки.

Сначала нужно открыть VSCode и Скачать
View hidden content is available for registered users!
 
Сверху Снизу