Сергей Попов
Администратор
- 30.12.2015
- 6 146
- 6 942
- Специализация
- OSINT
- Веб-безопасность
- Статус верификации
- ✓ Verified
На пентесте инфраструктуры финансовой компании я наткнулся на StorageZones Controller, торчащий наружу без патча с июня 2023 года - CVSS 9.8, RCE без аутентификации, а SOC заказчика вообще не знал, что этот инстанс существует. От обнаружения до загрузки web shell прошло 40 минут, включая разведку. CVE-2023-24489 - из тех уязвимостей, где разрыв между «патч опубликован» и «патч применён» убивает всю модель защиты: по данным IBM X-Force Threat Intelligence Index 2025, среднее время между публикацией CVE и устранением в организации - 29 месяцев. У ShareFile это время часто оказывается бесконечным. Потому что о самом сервере забывают.
Бизнес-логика атаки: зачем ломать корпоративные файловые хранилища
Корпоративные файловые хранилища - золотая жила для атакующих. ShareFile (сейчас под Progress Software, раньше - Citrix), MOVEit, GoAnywhere - все они хранят документы с максимальной ценностью: NDA, финансовую отчётность, персональные данные клиентов, юридическую переписку. Одна успешная компрометация хранилища заменяет месяцы lateral movement по внутренней сети. Данные уже собраны, упакованы и ждут эксфильтрации.По данным Mandiant M-Trends 2025, эксплуатация уязвимостей остаётся самым распространённым вектором initial access - 38% всех расследованных инцидентов. Verizon DBIR 2025 фиксирует 26% веб-атак среди подтверждённых нарушений. Файловые хранилища сидят на пересечении обоих трендов: веб-приложения с внешним доступом, хранящие высокоценные данные.
Группировка Cl0p в 2023 году последовательно эксплуатировала zero-day в GoAnywhere MFT и MOVEit Transfer, выстроив бизнес-модель массовой эксфильтрации. По данным eSentire, CVE-2023-24489 в Citrix ShareFile - следующее звено в той же цепочке атак на managed file transfer. Для пентестера вывод простой: если в скоупе есть MFT-продукт - начинай с него.
CVE-2023-24489: анатомия криптографического бага в StorageZones Controller
CVE-2023-24489 - ShareFile уязвимость в customer-managed StorageZones Controller, .NET-приложении под IIS. Данные из NVD: CVSS 9.8 (CRITICAL), вектор CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Классификация - CWE-284 (Improper Access Control). Affected product:citrix:sharefile_storage_zones_controller.CVSS-вектор по компонентам:
| Компонент | Значение | Что это значит для атакующего |
|---|---|---|
| AV:N | Network | Атака удалённая, по сети |
| AC:L | Low | Никаких race condition или специфичных конфигураций |
| PR:N | None | Аутентификация не нужна |
| UI:N | None | Действие пользователя не требуется |
| S:U | Unchanged | Scope не меняется |
| C:H / I:H / A:H | High | Полная компрометация всех трёх свойств |
CISA добавила CVE-2023-24489 в каталог активно эксплуатируемых уязвимостей (KEV) 16 августа 2023 года с дедлайном патчинга 6 сентября 2023. SSVC-решение - Act: эксплуатация активная, автоматизируемая, технический импакт полный (total). EPSS score на июль 2026: 0.9508, percentile 0.9985 - Top 1%, экстремально высокая вероятность эксплуатации. Уязвимость подтверждённо эксплуатируется in the wild с 16 августа 2023 года - более 1070 дней.
CWE-284 прямо попадает в OWASP A01 (Broken Access Control) - первую позицию рейтинга. При этом корневая причина лежит в криптографии, что дополнительно пересекается с OWASP A02 (Cryptographic Failures).
Механика уязвимости
StorageZones Controller использует AES-шифрование в режиме CBC с паддингом PKCS7 для защиты параметров запросов. По данным исследователей Assetnote (они опубликовали первый PoC), приложение не валидирует расшифрованные данные корректно - проверяется только паддинг, но не семантика содержимого. Атакующий формирует валидный ciphertext с произвольным plaintext, включая path traversal.Уязвимый эндпоинт:
/documentum/upload.aspx. Атакующий отправляет HTTP POST с query-параметрами (parentid, filename, uploadId), содержащими зашифрованные данные с path traversal последовательностями внутри ciphertext. Параметры unzip и raw управляют обработкой загруженного файла. StorageZones Controller расшифровывает параметры, принимает паддинг за валидный - и загружает произвольный файл, в том числе ASPX web shell. По данным ExtraHop, после загрузки web shell атакующий отправляет последующие HTTP-запросы для выполнения команд, чтения файлов или подтягивания дополнительных компонентов.По сути это padding oracle-подобная атака: вместо извлечения plaintext атакующий конструирует ciphertext, который приложение примет как легитимный запрос на загрузку файла.
Предусловия и ограничения
Работает если:- StorageZones Controller версии ниже 5.11.24
- Экземпляр customer-managed (развёрнут на инфраструктуре заказчика)
- Эндпоинт
/documentum/upload.aspxдоступен по сети - IIS корректно обрабатывает ASPX-файлы (стандартная конфигурация)
- Используется ShareFile cloud-managed storage (облачные зоны Citrix/Progress)
- Версия обновлена до 5.11.24+
- WAF с сигнатурами CVE-2023-24489 (Citrix ADC с обновлениями после августа 2023, CloudFlare и Akamai добавили правила в сентябре-октябре 2023)
- Сетевой доступ к
/documentum/ограничён ACL или reverse proxy
Fingerprinting ShareFile-инстансов на внешнем периметре
Пассивная разведка
ShareFile-инстансы обычно живут на поддоменах вида*.sharefile.com или на кастомных доменах с характерными путями. DNS-энумерация через subfinder -d target.com, анализ SSL-сертификатов через crt.sh, поиск в Shodan по строке http.title:"ShareFile" - стандартная методика.Признаки StorageZones Controller в ответах сервера:
- IIS-заголовки (
Server: Microsoft-IIS/10.0) - Путь
/documentum/в URL-пространстве - Эндпоинты
upload.aspx,download.aspx - .NET-специфичные cookie (
ASP.NET_SessionId) - HTTP-ответ 200 или 302 (не стандартная IIS 404) при обращении к
/documentum/
Автоматизированная проверка
Для CVE-2023-24489 есть готовый Nuclei-шаблон:CVE-2023-24489.yaml в официальном репозитории ProjectDiscovery (http/cves/2023/CVE-2023-24489.yaml). Запуск: nuclei -t http/cves/2023/CVE-2023-24489.yaml -u https://target.example.com. Шаблон проверяет доступность уязвимого эндпоинта и характерные паттерны ответа. На GitHub также лежит bash-PoC (whalebone7/CVE-2023-24489-poc, обновлён в октябре 2023, 1 star).Определить точную версию StorageZones Controller снаружи без аутентификации сложно - заголовки не раскрывают её напрямую. На практике: если
/documentum/upload.aspx отвечает чем-то кроме 404 - это кандидат на проверку.Ограничения fingerprinting
Стандартные WAF (ModSecurity CRS, CloudFlare в default-режиме) не блокируют GET-запросы к/documentum/, так что fingerprinting проходит без проблем. Но некоторые организации выставляют ShareFile за Citrix ADC (NetScaler), который может требовать предварительную аутентификацию для доступа к любым путям. В этом случае fingerprinting с внешнего периметра затруднён.Эксплуатация Progress Software CVE-2023-24489: цепочка атаки
📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
в temp-директорию и скачивание через тот же HTTP.
Что видно в Burp Suite
POST-запрос эксплойта идёт к/documentum/upload.aspx?parentid=<encrypted>&filename=<encrypted>&uploadId=<encrypted> с параметрами unzip=<value>&raw=<value>. В теле - содержимое web shell. Ключевой момент: path traversal скрыт внутри зашифрованного параметра. Стандартные WAF проверяют plaintext URL и тело запроса, но не дешифруют параметры приложения. Именно поэтому сигнатурная защита без специфичных правил для CVE-2023-24489 бесполезна - WAF просто не видит, что происходит.Дальше: lateral movement и Valid Accounts (T1078)
После закрепления на StorageZones Controller атакующий получает больше, чем файлы. ShareFile Enterprise поддерживает интеграцию с Active Directory через oAuth 2.0 (по документации Citrix: при AD-интеграции логин перенаправляется на configured IdP). Это означает: сервер domain-joined, machine account hash доступен, LDAP reachable.По данным CrowdStrike Global Threat Report 2025, 75% вторжений используют действительные учётные данные. Файловое хранилище - один из источников этих данных: пользователи загружают
.rdp-файлы, VPN-конфиги с вшитыми паролями, SSH-ключи. Одна находка в хранилище может открыть дверь во внутреннюю сеть без единого exploit.oAuth-токены ShareFile, хранящиеся в приложении, тоже интересны: по документации Citrix, токены не привязаны к password expiration policy - они живут до явного отзыва администратором через Manage Users. Если аккаунт администратора скомпрометирован, все токены во всех приложениях оказываются под контролем атакующего.
[Применимо: внутренний пентест после получения foothold, ShareFile Enterprise + AD-интеграция]
Детектирование атак на ShareFile: что видит blue team
IIS-логи и SIEM
Основной источник данных для детекции - IIS-логи. Splunk Security Research опубликовал готовое правило (detection ID172c59f2):
Код:
| tstats count min(_time) as firstTime max(_time) as lastTime
FROM datamodel=Web
WHERE Web.url="*/documentum/upload.aspx?*"
Web.url IN ("*parentid=*","*filename=*","*uploadId=*")
Web.url IN ("*unzip=*","*raw=*")
Web.http_method=POST
BY Web.http_user_agent Web.status Web.http_method
Web.url Web.url_length Web.src Web.dest
/documentum/upload.aspx с характерной комбинацией параметров. Наличие unzip или raw в URL - это то, что отличает эксплойт от легитимного использования. Для перехода от Hunting к TTP-детекции Splunk рекомендует ограничить scope известными IIS-серверами ShareFile.Адаптация под другие SIEM
| Продукт | Источник данных | Адаптация |
|---|---|---|
| Splunk ES 8.x | Web datamodel, Suricata/IIS add-on | Готовый analytic story, применять as-is |
| Elastic 8.x+ | Filebeat + IIS module | Detection rule по URL-паттерну /documentum/upload.aspx + POST |
| ExtraHop RevealX | Network traffic | Нативный детект в категории Decryptions |
| MaxPatrol SIEM | IIS-логи через syslog/WEC | Корреляционное правило по аналогии со Splunk |
| KUMA (Kaspersky) | IIS-логи | Фильтр по полю URL с regexp documentum/upload\.aspx |
False Positives и threat hunting
Легитимная загрузка файлов тоже проходит через/documentum/upload.aspx. Отличие эксплойта: комбинация unzip или raw с нестандартными значениями. На практике false positive будут - фильтруйте по http_user_agent (пользовательские браузеры и ShareFile Desktop App отличаются от Python/curl) и по src (внешние IP vs внутренние).Для ретроспективного threat hunting: GreyNoise ведёт отдельный тег для CVE-2023-24489, отслеживающий exploit-активность. Проверьте ретроспективные IIS-логи за период с июня 2023 до момента патчинга на POST к
/documentum/upload.aspx с внешних IP. По данным GreyNoise, значительный всплеск сканирования произошёл в день добавления CVE в CISA KEV.Митигация: чеклист для отчёта по Citrix pentest
Нумерованный список - готов к копированию в раздел рекомендаций:- Обновить StorageZones Controller до 5.11.24+ - единственная полноценная защита. Citrix заблокировал все предыдущие версии, reinstate возможен только после обновления
- Определить тип развёртывания - cloud-managed зоны не подвержены CVE-2023-24489, customer-managed - подвержены все версии до 5.11.24
- Ретроспективный анализ IIS-логов - POST к
/documentum/upload.aspxс параметрамиunzip/rawза период с июня 2023 до даты патчинга - Поиск web shell на файловой системе IIS - ASPX-файлы в нетипичных директориях, файлы с датой создания после июня 2023
- Добавить WAF-правило для блокировки POST к
/documentum/upload.aspxс нехарактерными параметрами (промежуточная мера) - Ограничить сетевой доступ к StorageZones Controller - вынести за reverse proxy с IP-whitelist, если прямой интернет-доступ не требуется
- Включить SIEM-мониторинг по URL-паттернам из Splunk-запроса выше
- Провести инвентаризацию всех ShareFile-инстансов - shadow IT-экземпляры часто остаются за пределами patch management
- Применить DISA STIG для IIS 10.0 (Microsoft IIS 10.0 Site STIG) как baseline для hardening веб-сервера - CVE не закроет, но снизит поверхность атаки
- Отозвать oAuth-токены всех пользователей через Manage Users, если есть подозрение на компрометацию - токены не привязаны к password expiration
За полтора года с момента раскрытия CVE-2023-24489 я встречал непропатченные StorageZones Controller на трёх из пяти пентестов, где ShareFile был в скоупе. Это не отраслевая статистика - конкретные проекты в финансовом и юридическом секторах. Реакция каждый раз одинаковая: «мы не знали, что этот сервер существует». Проблема не в сложности патча - Citrix сделал обновление максимально прямолинейным и заблокировал старые версии. Проблема в shadow IT: один инженер разворачивает StorageZones Controller для «временного проекта», потом уходит из компании, и сервер висит в DMZ годами без владельца.
Меня раздражает другое. Padding oracle как класс уязвимости известен с 2002 года - двадцать три года. ASP.NET имел собственный padding oracle (CVE-2010-3332) ещё пятнадцать лет назад. И в 2023 году enterprise-продукт с миллионами пользователей допускает ровно ту же ошибку. Это не случайность - это системная проблема в SDLC вендоров managed file transfer. GoAnywhere, MOVEit, теперь ShareFile - паттерн очевиден. У меня нет оснований полагать, что оставшиеся MFT-решения устояли перед аналогичным классом атак. Просто их ещё не смотрели достаточно внимательно.