Разработчики исправили серьезную уязвимость в OpenSSH

Разработчики исправили серьезную уязвимость в OpenSSH

Разработчики исправили серьезную уязвимость в OpenSSH

Уязвимость OpenSSH была обнаружена экспертом Михал Залевски (Michal Zalewski) в файле-исходнике sftp-server.c, она затрагивает версии OpenSSH с 5.5 по 7.6.

Как можно видеть в коде, приведенном ниже, если SFTP-сервер стартует с параметром –R, он будет включать переменную «readonly». Это означает, что клиентам не разрешено записывать операции.

 

 

 

 

int
sftp_server_main(int argc, char **argv, struct passwd *user_pw)
{
   ...
    while (!skipargs && (ch = getopt(argc, argv,
        "d:f:l:P:p:Q:u:cehR")) != -1) {
        switch (ch) {
    ...
        case 'R':
            readonly = 1;
            break;
    ...
}

Открытие файла для SFTP-сервера выполняется с помощью вспомогательной функции process_open(), которая открывает доступные только для чтения файлы:

static void
process_open(u_int32_t id)
{
    ...
    if (readonly &&
        ((flags & O_ACCMODE) == O_WRONLY ||
        (flags & O_ACCMODE) == O_RDWR) != 0)) {
        verbose("Refusing open request in read-only mode");
        status = SSH2_FX_PERMISSION_DENIED;
    } else {
        fd = open(name, flags, mode);
    ...
}

Здесь можно увидеть, что если «readonly» активирован, будет осуществляться проверка наличия «WRITE ONLY» или «READ/WRITE». Если это условие удовлетворено, будет выведена ошибка открытия файла в режиме read-only.

В противном случае файл будет открыт с использованием системного вызова open(). Залевски использовал эти параметры для создания произвольных read-only-файлов на SFTP-сервере. Чтобы исправить эту брешь, только для чтения. Чтобы исправить это, разработчики.

Код патча можно увидеть ниже:

if (readonly &&
-       ((flags & O_ACCMODE) == O_WRONLY ||
-       (flags & O_ACCMODE) == O_RDWR)) {
+       ((flags & O_ACCMODE) != O_RDONLY ||
+       (flags & (O_CREAT|O_TRUNC)) != 0)) {
        verbose("Refusing open request in read-only mode");

Шпион Morpheus для Android угонял WhatsApp через фейковое обновление

Исследователи обнаружили новый шпионский инструмент для Android, который маскировался под приложение для обновления телефона. Зловред получил название Morpheus и, по данным Osservatorio Nessuno, может быть связан с итальянской компанией IPS, давно работающей на рынке технологий для перехвата коммуникаций по запросу госструктур.

Morpheus нельзя назвать технически изящным шпионским софтом уровня NSO Group или Paragon Solutions. Здесь нет заражения через 0-click уязвимости. Схема проще и грубее: жертву нужно убедить установить приложение самостоятельно.

По данным исследователей, в атаке участвовал мобильный оператор. Сначала у цели намеренно пропадал мобильный интернет, а затем приходило СМС с предложением установить приложение якобы для обновления телефона и восстановления доступа к сети. На деле это и был шпионский инструмент.

 

После установки Morpheus использовал функции специальных возможностей Android. Это позволяло ему читать данные с экрана и взаимодействовать с другими приложениями. Затем зловред показывал фейковое обновление, имитировал экран перезагрузки и подсовывал поддельный запрос от WhatsApp (принадлежит корпорации Meta, признанной экстремисткой и запрещённой в России) с просьбой подтвердить личность биометрией.

 

В реальности это действие давало шпионскому софту доступ к аккаунту WhatsApp: устройство добавлялось к учётной записи жертвы. Такой приём уже встречался в кампаниях правительственных хакеров.

Исследователи не раскрывают личность цели, но считают, что атака могла быть связана с политическим активизмом в Италии. По их словам, такие точечные атаки в этой среде становятся всё более привычными.

RSS: Новости на портале Anti-Malware.ru