В шлюзах безопасности Palo Alto Networks, использующих программное обеспечение GlobalProtect, выявлена уязвимость, позволяющая обойти аутентификацию и выполнить в системе произвольный код с привилегиями root. Обновления с патчем уже доступны, пользователям настоятельно рекомендуется их установить.
Критическую уязвимость в интерфейсе VPN-порталов и шлюзов на основе GlobalProtect (CVE-2021-3064, 9,8 балла по CVSS) обнаружили исследователи из ИБ-компании Randori. Ввиду большой опасности дыры публичное раскрытие деталей и PoC-кода было отложено на месяц — до выпуска заплатки.
Согласно блог-записи авторов находки, корнем зла в данном случае является ошибка переполнения буфера, возникающая при парсинге пользовательского ввода. Чтобы обойти проверки на веб-интерфейсе и добраться до проблемного кода, аналитики использовали технику HTTP smuggling; в итоге им удалось установить полный контроль над уязвимым устройством.
Эксплойт при такой комбинации требует сетевого доступа к файрволу на порту 443 (дефолтный для службы GlobalProtect). Эксперименты показали, что подобная возможность удаленного исполнения кода с привилегиями уязвимого компонента позволяет залить на сервер шелл, получить доступ к закрытым данным, извлечь пароли пользователей, а также проникнуть во внутреннюю сеть мишени, чтобы развить атаку. В случае с виртуальным файрволом (PA-VM) провести эксплойт оказалось проще: в прошивке таких устройств отключена ASLR-защита.
По данным Palo Alto, данная проблема актуальна только для файрволов с PAN-OS ветки 8.1 и включенным VPN-клиентом GlobalProtect. Поиск по Shodan показал, что в интернете присутствуют более 10 тыс. уязвимых экземпляров GlobalProtect VPN.
Поскольку PoC-эксплойт уже опубликован, пользователям советуют незамедлительно обновить PAN-OS до пропатченной сборки 8.1.17 либо перейти на более новую версию — 9 или 10. В Palo Alto также создали сигнатуры (91820 и 91855) для блокировки вредоносного трафика на уровне веб-интерфейса GlobalProtect; ими можно воспользоваться как временной мерой защиты от эксплойта.
Эксперты Randori, со своей стороны, рекомендуют отключить GlobalProtect в тех случаях, когда VPN-доступ не используется. Пользователям также не следует забывать общие правила безопасности для устройств, подключенных к интернету:
- регулярно просматривать логи и алерты на предмет аномальной активности;
- ввести фильтрацию IP-адресов источников запросов там, где это возможно;
- использовать многоуровневую систему контроля — файрволы веб-приложений, сегментацию, контроль доступа.
Практика показывает, что VPN-устройства — привлекательная цель для злоумышленников. В этом году уязвимости в популярных продуктах VPN использовали операторы шифровальщиков Cring, Ragnar Locker и BitLocker.