На прошлой неделе Progress Software Corporation, которая продает программное обеспечение и услуги для разработки пользовательского интерфейса, devops, управления файлами и т. д., предупредила клиентов о своем MOVEit Трансфер и связанной с Облако MOVEit продукты о критическая уязвимость дублированный CVE-2023-34362.
Как следует из названия, MOVEit Transfer — это система, которая упрощает хранение и обмен файлами в команде, отделе, компании или даже цепочке поставок.
В своей собственные слова, «MOVEit обеспечивает безопасную совместную работу и автоматическую передачу файлов с конфиденциальными данными, а также расширенные возможности автоматизации рабочих процессов без необходимости написания сценариев».
К сожалению, веб-интерфейс MOVEit, который позволяет легко обмениваться файлами и управлять ими, используя только веб-браузер (процесс, который обычно считается менее подверженным неправильному направлению или «потерям» файлов, чем обмен ими по электронной почте), как оказалось, имеет SQL инъекционная уязвимость.
Объяснение SQL-инъекций
Ошибки SQL-инъекций через Интернет возникают, когда отправленный HTTP-запрос на веб-сервер небезопасно преобразуется в команду запроса, которая затем выдается сервером самостоятельно выполнять поиск в базе данных, чтобы определить, какой HTTP-ответ следует построить.
Например, поиск в базе данных, запущенный с веб-страницы, может закончиться URL-адресом, запрошенным вашим браузером, который выглядит следующим образом:
https://search.example.com/?type=file&name=duck
Текст запроса duck
затем можно извлечь из параметра имени в URL-адресе, преобразовать в синтаксис запроса к базе данных и сшить в команду для отправки на сервер базы данных.
Если серверные данные хранятся в базе данных SQL, веб-сервер может преобразовать этот URL-адрес в команду SQL, как показано ниже.
Ассоциация %
символы добавлены в текст duck
означают, что искомый термин может появиться в любом месте извлеченного имени файла, а символы одинарной кавычки на каждом конце добавляются в качестве маркеров для обозначения текстовой строки SQL:
ВЫБЕРИТЕ имя файла FROM filesdb WHERE name LIKE '%duck%'
Данные, которые возвращаются из запроса, затем можно красиво отформатировать, преобразовать в HTML и отправить обратно в виде HTTP-ответа вашему браузеру, возможно, предоставив вам интерактивный список соответствующих файлов для загрузки.
Конечно, веб-сервер должен быть очень осторожен с именами файлов, которые отправляются в качестве поискового запроса, на случай, если злоумышленник создаст и запросит такой URL-адрес:
https://search.example.com/?type=file&name=duck';DROP table filesdb;--
Если бы этот поисковый запрос был слепо преобразован в строку запроса, вы могли бы обмануть веб-сервер и отправить SQL-серверу такую команду:
ВЫБЕРИТЕ имя файла ИЗ filesdb ГДЕ имя LIKE '%duck'; DROP TABLE filesdb;--%'
Потому что точка с запятой (;
) действует как разделитель операторов в SQL, эта однострочная команда фактически аналогична отправке трех последовательных команд:
SELECT filename FROM filesdb WHERE name LIKE '%duck' -- соответствует именам, оканчивающимся на duck DROP TABLE filesdb -- удаляет всю базу данных --%' -- комментарий, ничего не делает
Скрытно, потому что все после --
отбрасывается SQL как комментарий программиста, эти три строки совпадают с:
ВЫБЕРИТЕ имя файла ИЗ filesdb ГДЕ имя LIKE '%duck' DROP TABLE filesdb
Вы получите список всех имен файлов в базе данных, которые заканчиваются строкой duck
(специальный символ SQL %
в начале поискового запроса означает «сопоставить что-либо до этого момента»)…
…но вы будете последним, кто получит что-то полезное из filesdb
база данных, потому что ваш мошеннический поисковый запрос будет сопровождать поиск командой SQL, чтобы удалить всю базу данных.
Маленькие столики Бобби
Если вы когда-нибудь слышали, как системные администраторы или программисты шутят о Маленькие столики Бобби, потому что такого рода внедрение SQL было увековечено в XKCD мультфильм назад в 2007:
Поскольку мультфильм заканчивается в последнем кадре, вам действительно нужно дезинфицировать входные данные вашей базы данных, а это означает, что вы должны проявлять большую осторожность, чтобы не позволить человеку, отправляющему поисковый запрос, контролировать, как команда поиска интерпретируется участвующими внутренними серверами.
Вы можете понять, почему такой трюк известен как атака с внедрением: в приведенных выше примерах вредоносные условия поиска вызывают внедрение дополнительной команды SQL в обработку запроса.
На самом деле, в обоих этих примерах используются две вводимые команды, следующие за незаметно вставленным символом «закрывающая кавычка», чтобы раньше завершить строку поиска. Первая дополнительная команда — деструктивная. DROP TABLE
инструкция. Вторая — это «команда комментария», которая заставляет игнорировать остальную часть строки, тем самым хитроумно съедая завершающую строку. %'
символов, сгенерированных генератором команд сервера, что в противном случае вызвало бы синтаксическую ошибку и предотвратило бы ввод DROP TABLE
команда с работы.
Хорошие новости и плохие новости
Хорошей новостью в данном случае является то, что Progress исправила все поддерживаемые версии MOVEit вместе со своей облачной службой, как только узнала об уязвимости.
Итак, если вы используете облачную версию, теперь вы автоматически обновляетесь, а если вы используете MOVEit в своей собственной сети, мы надеемся, что вы уже установили исправление.
Плохая новость заключается в том, что эта уязвимость была нулевого дня, а это означает, что Progress узнал о ней, потому что плохие парни уже использовали ее, а не до того, как они поняли, как это сделать.
Другими словами, к тому времени, когда вы пропатчите свои собственные серверы (или Progress пропатчит свой облачный сервис), мошенники уже могут внедрить мошеннические команды в ваши базы данных MOVEit SQL с рядом возможных результатов:
- Удаление существующих данных. Как показано выше, классическим примером атаки с внедрением SQL-кода является крупномасштабное уничтожение данных.
- Эксфильтрация существующих данных. Вместо удаления таблиц SQL злоумышленники могут вводить собственные запросы, изучая таким образом не только структуру ваших внутренних баз данных, но также извлекая и похищая их самые важные части.
- Модификация существующих данных. Более изощренные злоумышленники могут решить испортить или разрушить ваши данные вместо того, чтобы украсть их.
- Внедрение новых файлов, в том числе вредоносных программ. Злоумышленники могут внедрять SQL-команды, которые, в свою очередь, запускают внешние системные команды, тем самым добиваясь удаленного выполнения произвольного кода внутри вашей сети.
Одна группа нападавших, утверждаемый Microsoft, чтобы быть (или быть связанным) с печально известной бандой вымогателей Clop, по-видимому, использовали эту уязвимость для внедрения того, что известно как веб-ракушки на пострадавших серверах.
Если вы не знакомы с веб-шеллами, прочитайте нашу простой английский объяснитель которые мы опубликовали во время неприятных атак HAFNIUM еще в марте 2021 года:
Опасность веб-шелла
Проще говоря, веб-оболочки предоставляют злоумышленникам способ, который может добавлять новые файлы на ваш веб-сервер, чтобы вернуться позже, взломать его на досуге и использовать этот доступ только для записи для полного удаленного управления.
Веб-оболочки работают, потому что многие веб-серверы обрабатывают определенные файлы (обычно определяемые каталогом, в котором они находятся, или расширением, которое у них есть) как исполняемые скрипты. используется для создания страницы для отправки обратно, а не как фактическое содержимое для использования в ответе.
Например, IIS (интернет-сервер) Microsoft обычно настроен так, что если веб-браузер запрашивает файл с именем, скажем, hello.html
, то необработанное, немодифицированное содержимое этого файла будет прочитано и отправлено обратно в браузер.
Итак, если в этом есть какое-либо вредоносное ПО hello.html
файл, то он повлияет на человека, просматривающего сервер, а не на сам сервер.
Но если файл называется, скажем, hello.aspx
(где ASP является сокращением от самоописательной фразы Активные серверные страницы), то этот файл рассматривается как программа-скрипт для выполнения сервером.
Запуск этого файла как программы, а не просто чтение его как данных, сгенерирует выходные данные, которые будут отправлены в ответ.
Другими словами, если в этом hello.aspx
файл, то он напрямую повлияет на сам сервер, а не на человека, просматривающего его.
Короче говоря, удаление файла веб-шелла в качестве побочного эффекта атаки с внедрением команд означает, что злоумышленники могут вернуться позже, и, посетив URL-адрес, соответствующий имени файла этого веб-шелла…
… они могут запускать свое вредоносное ПО прямо в вашей сети, не используя ничего более подозрительного, чем скромный HTTP-запрос, который делает обычный веб-браузер.
Действительно, некоторые веб-шеллы состоят всего из одной строки вредоносного скрипта, например, одной команды, которая гласит: «получить текст из определенного HTTP-заголовка в запросе и запустить его как системную команду».
Это дает универсальный командно-контрольный доступ любому злоумышленнику, который знает правильный URL-адрес для посещения и правильный HTTP-заголовок, который следует использовать для доставки мошеннической команды.
Что делать?
- Если вы являетесь пользователем MOVEit, убедитесь, что все экземпляры программного обеспечения в вашей сети исправлены.
- Если вы не можете установить патч прямо сейчас, отключите веб-интерфейсы (HTTP и HTTP) к своим серверам MOVEit, пока не сможете. По-видимому, эта уязвимость проявляется только через веб-интерфейс MOVEit, а не через другие пути доступа, такие как SFTP.
- Поиск в журналах для недавно добавленных файлов веб-сервера, недавно созданных учетных записей пользователей и неожиданно больших загрузок данных. В Progress есть список мест для поиска, а также имена файлов и поиск.
- Если вы программист, дезинфицировать ваши входы.
- Если вы программист SQL, использовали параметризованные запросы, а не генерировали команды запросов, содержащие символы, контролируемые лицом, отправляющим запрос.
Во многих, если не в большинстве, атак с использованием веб-оболочек, исследованных до сих пор, Прогресс предполагает что вы, вероятно, найдете мошеннический файл веб-шелла с именем human2.aspx
, возможно, вместе с вновь созданными вредоносными файлами с .cmdline
расширение.
(Продукты Sophos обнаруживают и блокируют известные файлы веб-оболочек как Трой/WebShel-GO, называются ли они human2.aspx
или нет.)
Помните, однако, что если другие злоумышленники знали об этом нулевом дне до выхода исправления, они могли внедрить другие и, возможно, более тонкие команды, которые теперь нельзя обнаружить путем сканирования оставшихся вредоносных программ или поиска для известных имен файлов, которые могут отображаться в журналах.
Не забывайте просматривать журналы доступа в целом, и если у вас нет времени сделать это самостоятельно, не бойтесь просить о помощи!
Узнать больше о Управляемое обнаружение и реагирование Sophos:
Круглосуточный поиск угроз, обнаружение и реагирование ▶
Не хватает времени или опыта, чтобы позаботиться о реагировании на угрозы кибербезопасности? Беспокоитесь, что кибербезопасность в конечном итоге отвлечет вас от всех других вещей, которые вам нужно сделать?
- SEO-контент и PR-распределение. Получите усиление сегодня.
- ПлатонАйСтрим. Анализ данных Web3. Расширение знаний. Доступ здесь.
- Чеканка будущего с Эдриенн Эшли. Доступ здесь.
- Покупайте и продавайте акции компаний PREIPO® с помощью PREIPO®. Доступ здесь.
- Источник: https://nakedsecurity.sophos.com/2023/06/05/moveit-zero-day-exploit-used-by-data-breach-gangs-the-how-the-why-and-what-to-do/
- :имеет
- :является
- :нет
- :куда
- $UP
- 1
- 15%
- 2021
- a
- в состоянии
- О нас
- об этом
- выше
- Absolute
- доступ
- Учетные записи
- достижение
- акты
- фактического соединения
- на самом деле
- Добавить
- добавленный
- дополнительный
- продвинутый
- влиять на
- боящийся
- После
- Все
- позволять
- вдоль
- уже
- причислены
- an
- и
- любой
- все
- откуда угодно
- появиться
- МЫ
- AS
- At
- атаковать
- нападки
- автор
- автоматический
- Автоматизированный
- автоматически
- автоматизация
- знать
- назад
- Backend
- Фоновое изображение
- Плохой
- BE
- стали
- , так как:
- было
- до
- за
- ниже
- слепо
- Заблокировать
- Бобби
- граница
- изоферменты печени
- Дно
- нарушение
- Ломать
- браузер
- просмотр
- ошибки
- но
- by
- под названием
- пришел
- CAN
- возможности
- заботится
- тщательный
- мультфильм
- случаев
- Вызывать
- вызванный
- Причины
- Центр
- определенный
- цепь
- персонаж
- символы
- классический
- облако
- код
- сотрудничество
- цвет
- как
- выходит
- комментарий
- Компания
- полный
- подключенный
- последовательный
- считается
- строить
- содержание
- контроль
- контроль
- конвертировать
- переделанный
- КОРПОРАЦИЯ
- соответствующий
- может
- курс
- чехол для варгана
- Создайте
- создали
- Крюки
- Клиенты
- Информационная безопасность
- данным
- Данные нарушения
- База данных
- базы данных
- решать
- доставки
- Кафедра
- обнаруженный
- обнаружение
- определены
- Развитие
- DevOps
- различный
- непосредственно
- Дисплей
- срывать
- do
- приносит
- Dont
- скачать
- загрузок
- Падение
- Опустившись
- дублированный
- каждый
- Рано
- легко
- конец
- ошибка
- Даже
- НИКОГДА
- повседневный
- пример
- Примеры
- выполнять
- выполнение
- существующий
- опыта
- Эксплуатировать
- подвергаться
- расширение
- и, что лучший способ
- дополнительно
- факт
- знакомый
- далеко
- фигурный
- Файл
- Файлы
- Найдите
- First
- следовать
- после
- Что касается
- найденный
- КАДР
- от
- передний
- Внешний интерфейс
- шайка
- Общие
- общее назначение
- в общем
- порождать
- генерируется
- порождающий
- генератор
- получить
- дает
- Отдаете
- хорошо
- большой
- группы
- было
- Управляемость
- Есть
- услышанный
- высота
- надежды
- зависать
- Как
- How To
- Однако
- HTML
- HTTP
- HTTPS
- охота
- if
- Иис
- in
- В том числе
- позорный
- информация
- вводить
- затраты
- вместо
- Интерфейс
- интерфейсы
- в нашей внутренней среде,
- Интернет
- в
- включать в себя
- вовлеченный
- Выпущен
- IT
- ЕГО
- саму трезвость
- всего
- только один
- известный
- большой
- крупномасштабный
- Фамилия
- новее
- запуск
- изучение
- оставил
- Меньше
- такое как
- линия
- линий
- Список
- ВЗГЛЯДЫ
- поиск
- сделанный
- сделать
- ДЕЛАЕТ
- Создание
- вредоносных программ
- управлять
- управляемого
- управление
- многих
- Март
- Маржа
- согласование
- макс-ширина
- Май..
- значить
- смысл
- означает
- Microsoft
- может быть
- БОЛЕЕ
- самых
- имя
- Названный
- имена
- Необходимость
- потребности
- сеть
- Новые
- вновь
- Новости
- "обычные"
- ничего
- сейчас
- of
- от
- on
- консолидировать
- ONE
- только
- or
- заказ
- Другое
- в противном случае
- наши
- внешний
- Результаты
- выходной
- собственный
- страница
- параметр
- части
- Патчи
- Пол
- возможно
- человек
- Мест
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- должность
- возможное
- Блог
- вероятно
- процесс
- Продукция
- FitPartner™
- Программист
- Прогресс
- обеспечивать
- приводит
- опубликованный
- положил
- Запросы
- цену
- ассортимент
- вымогателей
- скорее
- Сырье
- Читать
- Reading
- на самом деле
- Связанный
- относительный
- удаленные
- Ответить
- запросить
- просил
- Запросы
- ответ
- ОТДЫХ
- обзоре
- правую
- Run
- Бег
- то же
- сообщили
- говорит
- сканирование
- скрипты
- Поиск
- поиск
- Во-вторых
- безопасный
- посмотреть
- Продает
- Отправить
- отправка
- чувствительный
- послать
- обслуживание
- Услуги
- Поделиться
- разделение
- Короткое
- показывать
- показанный
- просто
- одинарной
- So
- уже
- Software
- твердый
- некоторые
- особый
- конкретный
- SQL
- SQL Injection
- Начало
- заявление
- магазин
- хранить
- строка
- Структура
- отправить
- представленный
- такие
- Предлагает
- поставка
- цепочками поставок
- Поддержанный
- подозрительный
- SVG
- синтаксис
- система
- ТАБЛИЦЫ
- взять
- команда
- срок
- terms
- чем
- который
- Ассоциация
- их
- Их
- тогда
- Там.
- Эти
- они
- вещи
- этой
- угроза
- три
- по всему
- время
- в
- топ
- перевод
- переводы
- переход
- прозрачный
- лечить
- срабатывает
- ОЧЕРЕДЬ
- Оказалось
- два
- до
- новейший
- URL
- использование
- используемый
- Информация о пользователе
- Пользовательский интерфейс
- через
- обычно
- версия
- с помощью
- Войти
- уязвимость
- законопроект
- Путь..
- we
- Web
- веб-браузер
- веб-сервер
- Web-Based
- неделя
- ЧТО Ж
- были
- Что
- когда
- будь то
- который
- КТО
- все
- зачем
- будете
- без
- слова
- Работа
- разрабатывать
- рабочий
- автоматизации технологических процессов
- работает
- беспокоиться
- бы
- являетесь
- ВАШЕ
- себя
- зефирнет