София · Уеб дизайн и технически решенияdk_service@abv.bg

DK Web Studio

Защита с ясни действия.
От проверка до решение.

PHP2Shell, CVE-2026-109618 и CVE-2026-109619: практически проверки на PHP, Linux и WordPress, обновяване, контрол на достъпа и реакция при съмнение за пробив.

КОНКРЕТЕН ОБХВАТ

Какво включва защитата.

Подробно ръководство: проверете сами ↘

Избираме мерките според платформата, достъпите и риска. В офертата описваме кои системи и проверки са включени.

01

Картина на риска

Описваме домейните, сайтовете, CMS, PHP, библиотеките, панелите и отворените услуги. Подреждаме находките по риск и влияние върху бизнеса.

02

Архив и възстановяване

Архивираме файловете, базите и нужните настройки. Уточняваме защитено съхранение, срок на пазене и проверка за възстановяване на договорения обхват.

03

Поддържани технологии

Проверяваме актуализациите от официалните доставчици. Обновяваме операционната система, PHP, CMS и зависимостите след проверки за съвместимост.

04

Администрация зад защита

Ограничаваме панелите чрез VPN или подходящ контрол на достъпа. Настройваме MFA, SSH ключове и отделни роли според възможностите на системата.

05

По-малко публични входове

Преглеждаме firewall, ненужните портове, старите сайтове и тестовите копия. Архивираме и изключваме неизползваното след съгласуване.

06

Изолация и права

Разделяме приложенията и потребителите, ограничаваме файловите права и достъпа до конфигурации, резервни копия и тайни извън публичната директория.

07

Защита на уеб приложението

Преглеждаме входните форми, сесиите, CSRF защитата, ограниченията за заявки, TLS и HTTP заглавките. При нужда настройваме WAF и проверяваме съвместимостта.

08

Наблюдение и план за реакция

Определяме кои логове, сигнали, проверки за наличност и актуализации да се следят. Предаваме отчет, оставащи задачи и стъпки при инцидент.

Изберете подходяща следваща стъпка.

ОДИТ

Разберете риска

Опис, проверка на конфигурацията и доклад с приоритети. Подходящо, когато първо искате ясна оценка.

ОТСТРАНЯВАНЕ

Приведете системата в ред

Съгласуван план с архив, тестово обновяване, внедряване и проверка след промяната.

ТЕКУЩА ГРИЖА

Поддържайте защитата

Периодични обновявания, проверки и наблюдение по договорен обхват. Честотата и времето за реакция се уточняват в офертата.

Какво получавате

  • Писмен обхват и списък с приоритетни рискове
  • Опис на направените промени и резултатите от проверките
  • Указания за възстановяване и оставащи задачи
  • Индивидуална оферта преди изпълнение
АКТУАЛНО · ПРОВЕРЕНО НА 24.10.2026PHP сигурност / Linux / WordPress

PHP2Shell.
Какво означава за вашия сайт?

Когато търсите „нов PHP вирус“ или „хакнат WordPress“, първата стъпка е да установите причината. PHP2Shell е име на уязвимости в PHP, а не име на вирус. Уязвимостта сама по себе си не доказва, че сайтът вече е заразен.

01 / РИСК

Изпълнение на чужд код

CVE-2026-109618 и CVE-2026-109619 засягат обработването на заявки и паметта. При засегната конфигурация е възможно изпълнение на код от неидентифициран отдалечен нападател.

Прочетете известието на Red Hat ↗
02 / ПОПРАВКА

Проверете точния пакет

Публикуваните поправени upstream версии от 21 октомври са 8.2.35, 8.3.36, 8.4.27 и 8.5.12. Използвайте актуалната поправена версия за вашия поддържан клон. При Linux дистрибуция проверявайте нейния security бюлетин — номерът може да е различен.

Официалните съобщения на PHP ↗
03 / СЛЕД ОБНОВЯВАНЕТО

Има и допълнителна препоръка

На 23 октомври PHP препоръчва session.upload_progress.enabled=0 до следващата редовна bugfix версия за малко вероятен допълнителен RCE сценарий. Прегледайте конкретните условия в известието и приложете настройката в реално използвания PHP handler.

PHP: Session upload progress ↗
Пример защо само „php -v“ не стига

Ubuntu 24.04 посочва поправка за двете CVE в пакет 8.3.6-0ubuntu0.24.04.13. Това е поправка, пренесена от доставчика, а не непременно upstream 8.3.36. Проверете точния пакет, изданието на системата и източника на инсталацията.

Ubuntu: статус на поправката ↗

ПОЛЕЗНО В ТЕРМИНАЛА

Проверете основата.
Разберете резултата.

Изберете вашата среда. Всяка проверка обяснява какво показва и какво остава непроверено.

● ● ●Проверка · без промяна на конфигурацията

Опис на PHP пакетите

Показва пълните пакетни версии. Сравнете всяка с известието за вашата дистрибуция.

php -v
php --ini
dpkg-query -W -f='${Package} ${Version}\n' 'php*'
systemctl list-unit-files 'php*-fpm.service'

Как да разчетете резултата: Не доказва коя PHP версия обслужва всеки домейн. Проверете настройката на сайта и отделните FPM пулове.

● ● ●Проверка · без промяна на конфигурацията

Портове и защита на достъпа

Проверете слушащите услуги и правилата, без да променяте firewall.

sudo ss -lntup
sudo ufw status verbose
sudo sshd -T | grep -E '^(passwordauthentication|permitrootlogin|pubkeyauthentication)'

Как да разчетете резултата: Изходът показва локалното състояние. Проверете и IPv6, защитната стена при доставчика и достъпа от външна мрежа.

● ● ●Проверка · без промяна на конфигурацията

Проверка на настройката за upload progress

Пример за PHP 8.3 FPM; заменете версията с реалната. Командата не записва настройки.

sudo php-fpm8.3 -i | grep -E 'session.upload_progress.enabled|session.serialize_handler|Loaded Configuration File'

Как да разчетете резултата: CLI и FPM могат да зареждат различни ini файлове. Проверете и overrides в пуловете. Не публикувайте phpinfo() като публична страница.

● ● ●Проверка · без промяна на конфигурацията

Променени файлове и опасни права

Заменете примерния път със своя сайт. Това е списък за преглед, а не автоматично разпознаване на зловреден код.

SITE_ROOT=/path/to/your/site
find "$SITE_ROOT" -xdev -type f -mtime -7 -print
find "$SITE_ROOT" -xdev -type f -perm -0002 -print
systemctl --failed

Как да разчетете резултата: Нов файл може да е нормална актуализация. Сравнявайте с доверен архив, Git или известна чиста версия. Не трийте намереното автоматично.

● ● ●Проверка · без промяна на конфигурацията

WordPress: ядро и списък с версии

При наличен WP-CLI изпълнете като потребителя на сайта, в правилната инсталация.

SITE_ROOT=/path/to/wordpress
wp --path="$SITE_ROOT" core version --skip-plugins --skip-themes
wp --path="$SITE_ROOT" core verify-checksums --include-root
wp --path="$SITE_ROOT" plugin list --fields=name,status,version --skip-plugins --skip-themes
wp --path="$SITE_ROOT" theme list --fields=name,status,version --skip-plugins --skip-themes

Как да разчетете резултата: Проверката на ядрото не проверява всички плъгини, базата или наличието на пробив. При съмнение за заразена инсталация работете в изолирано копие.

● ● ●Проверка · без промяна на конфигурацията

PHP зависимости с Composer

В директорията на приложението, като обикновен потребител. Не изпълнявайте непознати скриптове като root.

composer --no-plugins --no-scripts audit --locked
composer --no-plugins --no-scripts check-platform-reqs --lock

Как да разчетете резултата: Audit проверява известни проблеми в отчетените зависимости. Нулеви находки не означават пълна сигурност. Audit може да свърже имена и версии на пакетите с външен източник за advisories.

● ● ●Запитване към доставчика

Какво да поискате от хостинга

Изпратете това като техническо запитване през официалния панел на доставчика.

Моля потвърдете за всеки мой домейн:
1. Реалната PHP версия и handler (FPM/CGI/mod_php).
2. Пълната версия на пакета и приложените security поправки.
3. Статуса за CVE-2026-109618 и CVE-2026-109619.
4. Проверена ли е препоръката от PHP от 23.10.2026 за session.upload_progress.enabled?
5. Обновени и презаредени ли са всички използвани PHP процеси?
6. Има ли стар PHP в панела, webmail, cron или контейнери?
7. Как мога да възстановя сайта и базата от проверен архив?

Как да разчетете резултата: Не изпращайте пароли, SSH ключове, дампове на бази или публични линкове към архиви. Искайте доказателство за поправката, а не само уверение за WAF.

Нужни са права за собствената или възложената система. Някои команди изискват sudo и инсталиран инструмент. Командите не обновяват PHP и не са тест чрез експлоатиране на уязвимост.

ПРАКТИЧЕСКО РЪКОВОДСТВО · 24.10.2026

Как да проверите и укрепите своя сървър.

Последователен план за собственици и администратори на сайтове. Започнете с опис и архив, отстранете причината, после проверете работата.

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

Преди първата промяна: обхват, архив и аварийна конзола

Опишете кои сайтове, бази, пощенски услуги и панели са ваши и кой ги администрира. Запишете важните процеси: вход, поръчки, плащания, имейли, справки и експорти. Определете допустимото прекъсване и човек за потвърждаване на резултата.

Направете архив на файловете, базите и конфигурацията извън публичната директория. Пазете отделно копие с ограничен достъп. Проверете възстановяване в изолирана среда. Snapshot на доставчика е полезен допълнителен слой, но не заменя проверено копие на данните. Осигурете конзолата на хостинга, преди да променяте SSH, VPN или firewall.

1. Операционна система, работещи услуги и отворени портове

За Linux сървър започнете с версията на системата, активните услуги, слушащите портове и неуспешните системни задачи. Следните примери са за администратор на Ubuntu/Debian и не променят конфигурацията:

cat /etc/os-release
uname -r
systemctl --failed
systemctl list-units --type=service --state=running
sudo ss -lntup

Съпоставете всеки порт с реална нужда. База данни, административен панел и вътрешен API обикновено не трябва да са достъпни за целия интернет. Проверете достъпността и от външна мрежа: локално слушащ порт може вече да е блокиран от firewall. Не спирайте непозната услуга, преди да установите кой я използва.

2. Системни актуализации и реална наличност на поправка

След проверен архив обновете пакетния индекс и прегледайте наличните версии:

sudo apt update
apt list --upgradable
apt-cache policy php8.3-fpm php8.3-cli
 test -f /var/run/reboot-required && cat /var/run/reboot-required

Имената на PHP пакетите са примерни: заменете ги с действително инсталирания клон. Съпоставете пълната версия на пакета и изданието на Ubuntu с официалното известие за сигурност. Дистрибуциите могат да пренасят поправки в пакет с по-стар основен номер; само изходът на php -v не доказва наличие или липса на поправка.

Инсталирането на обновления и евентуален рестарт се планират в прозорец за поддръжка. След това проверете услугите и сайта. За неподдържана система подгответе миграция в тестова среда, вместо да добавяте случайни хранилища.

Официални Ubuntu Security Notices

3. Всички PHP версии, включително скритите в панели

Проверете отделно PHP в командния ред, PHP-FPM или Apache, cron задачите, контейнерите и софтуера на хостинг панела. Един актуален публичен сайт не означава, че уебпощата или инструментът за базите използват същата версия.

php -v
php --ini
systemctl list-unit-files 'php*-fpm.service'
dpkg-query -W 'php*'

Съпоставете всеки виртуален хост с неговия PHP обработчик. Обновете всички използвани изпълними среди от доверен източник. Старите услуги се спират едва след проверка на зависимостите и успешна миграция. Ако нова версия счупи приложение, поправете съвместимостта в копие; не приемайте връщането към неподдържан PHP като постоянно решение. Не оставяйте публичен phpinfo() файл след проверката.

Проверете актуалния жизнен цикъл на PHP

4. CMS, плъгини, теми и библиотеки

Проверете ядрото и разширенията на WordPress или друга CMS. Премахнете неизползваните компоненти след архив. За Composer проект изпълнете от директорията му с обикновения потребител на приложението:

composer validate --no-check-publish
composer audit --locked --no-dev
composer check-platform-reqs --no-dev

Одитът проверява известни съобщени проблеми в зависимостите; чист резултат не удостоверява целия потребителски код. Прегледайте и изоставените пакети. Изберете съвместими версии, обновете lock файла в тестово копие, проверете миграциите и основните процеси. Не изпълнявайте безразборно composer update в работещата продукция.

Composer: audit и проверки на платформата

5. Панели, доверени устройства и обходни адреси

Направете списък на FASTPANEL, phpMyAdmin, уебпоща, SSH, CMS входове и вътрешни системи. За нуждаещите се от ограничаване услуги изберете VPN с отделен ключ за всяко устройство или подходяща идентификационна защита с MFA. Различни профили в панела не трябва да заобикалят мрежовото ограничение.

Проверете основния домейн, директния IP адрес, IPv6, алтернативните имена, портове и backend адреси. Защитете origin сървъра, а не само входния адрес зад прокси. Изпробвайте достъп от доверено устройство и отказ от външна мрежа. Запишете процедура за отнемане на изгубено устройство и авариен достъп през конзолата на доставчика.

6. SSH ключове и права на администраторите

Използвайте индивидуални профили и ключове, ограничени sudo права и MFA, когато средата го поддържа. Преди изключване на паролите проверете вход с ключ в отделна сесия. Пазете текущата връзка отворена, докато потвърдите новия вход.

sudo sshd -t
sudo sshd -T

Първата команда проверява синтаксиса, а втората показва ефективната конфигурация. Прегледайте и включваните настройки в sshd_config.d; условията Match могат да променят поведението за конкретен потребител. Приложете настройките с подходящо reload действие едва след успешна проверка и осигурена аварийна конзола.

Ubuntu: OpenSSH

7. Firewall, IPv6, WAF и ограничения на заявките

Съгласувайте защитната стена на доставчика с тази на самия сървър. За система с UFW прегледът е:

sudo ufw status verbose
sudo ufw status numbered

Разрешете нужния административен маршрут, преди да ограничавате останалото. Проверете IPv4 и IPv6, пощата, DNS и подновяването на сертификатите. Не копирайте произволни правила и не включвайте firewall дистанционно без план за възстановяване. При Docker проверете действителните мрежови правила и публикуваните портове.

WAF и ограниченията за опити за вход могат да намалят определени атаки. Те не поправят уязвимия код и не заменят актуализациите. Проверете, че правилата не блокират нормални форми, API и качвания.

Ubuntu: firewall

8. Файлови права, изолация, бази и тайни

Разделете независимите приложения по системни потребители и PHP-FPM пулове, когато архитектурата го позволява. Дайте право за запис само на нужните upload, cache и runtime директории. Масово задаване на 777 не е поправка.

Конфигурации с пароли, базови SQL архиви, Git история и резервни копия трябва да са извън публичния корен или изрично недостъпни през уеб сървъра. За всеки сайт използвайте отделен потребител на базата с необходимите права. Проверете дали базата слуша само на нужен интерфейс. При доказано изтичане сменете засегнатите тайни след ограничаване и почистване на средата; изтриването на един подозрителен файл не премахва непременно достъпа на атакуващия.

9. Форми, вход, сесии и качване на файлове

Проверете сървърната валидация, параметризираните SQL заявки, кодирането на изхода, проверките на роли и собствеността на записите. За променящи данни действия използвайте подходящата CSRF защита на рамката. HTTPS и SameSite са допълващи мерки, а не заместител на всички проверки.

При качване използвайте списък с разрешени типове, ограничения на размера, проверка на действителния формат и генерирани имена. Каченото съдържание не трябва да се изпълнява като PHP. Съхранявайте файловете извън изпълнимия корен, когато е възможно. Проверете възстановяването на парола, MFA, прекратяването на сесии и ограниченията за многократни опити за вход.

OWASP: удостоверяване · CSRF · качване на файлове

10. HTTPS, сертификати и HTTP заглавки

Проверете валидността на сертификата, имената, веригата и автоматичното подновяване. Изпробвайте HTTP, HTTPS, www и основния домейн. Заглавки като HSTS, CSP, защита от вграждане и nosniff се въвеждат според приложението и след проверка.

curl -I https://example.com/
sudo nginx -t

example.com е примерен адрес: използвайте собствения си домейн. CSP трябва да разрешава необходимите ресурси, без произволни широки изключения. HSTS с поддомейни може да засегне други услуги; не го активирайте без инвентаризация. След успешен nginx -t приложете промяната чрез reload и проверете сайта отново. При Apache използвайте неговия конфигурационен тест.

Nginx: конфигурация и reload

11. Логове, сигнали, архиви и периодични проверки

Определете какво се следи: грешки в приложенията, неуспешни входове, административни промени, запълване на диска, наличност, срок на сертификатите и успех на архивирането. Сигналът трябва да стига до човек с ясно действие, а не само да се записва.

df -h
systemctl --failed
sudo journalctl -p warning --since today

Не публикувайте логове и заявки с лични данни или токени. Настройте срок на съхранение и ограничен достъп. Проверявайте дали антивирусните сигнатури и правилата се обновяват, ако използвате такива инструменти. Периодично правете възстановяване на избран архив и документирайте резултата.

12. Какво да направите при съмнение за пробив

Ограничете засегнатата услуга и запазете логовете, времевата линия и снимка на състоянието, преди почистване. Преценете дали има изтичане на данни, други засегнати приложения и задължения за уведомяване според конкретния случай.

Отстранете първоначалната причина, проверете други акаунти и механизми за постоянен достъп и възстановете от доверен източник. Сменете засегнатите пароли, ключове и сесии от чисто устройство след овладяване на средата. Не приемайте липсата на видими странни файлове за доказателство, че всичко е чисто.

13. Кога промяната може да се приеме за успешна

Повторете проверките на версиите и достъпите. Потвърдете вход, роли, форми, изпращане на поща, поръчки, плащания и външни интеграции според действителните функции. Сравнете ключови справки, броя записи и експортите при миграция.

Проверете публичния сайт от телефон и външна мрежа, а административния достъп — от разрешено и неразрешено устройство. Запишете извършеното, неприключените рискове и следващата проверка. Резултатът от автоматичен скенер или Lighthouse е част от доказателствата, не сертификат за пълна сигурност.

ПЪРВОИЗТОЧНИЦИ

Какво казват разработчиците.

Кратки извадки с връзки към оригинала. Преводите и практическите обяснения на тази страница са наши; при промяна в известията проверявайте актуалния текст.

PHP GROUP · 23.10.2026

“We suggest you set session.upload_progress.enabled=0 until the next regular bugfix release”

Препоръката е допълнителна стъпка, а не заместител на обновяването. Официалното съобщение описва и специфичните условия за сценария.

Оригиналното съобщение ↗

CANONICAL / UBUNTU

“Fixed in 8.3.6-0ubuntu0.24.04.13”

Статусът е за PHP 8.3 в Ubuntu 24.04 за CVE-2026-109618 и CVE-2026-109619. Не пренасяйте тази оценка върху друг пакет или операционна система.

Пълната таблица на Ubuntu ↗

COMPOSER

Проверка на зависимостите

Официалната команда audit проверява отчетените зависимости за известни security advisories. Тя не сканира целия сървър и не доказва липса на заразяване.

Документацията на Composer ↗
Директна връзка0895 09 85 18 ↗
Viber ↗Запитване ↗