Разработчики исправили серьезную уязвимость в 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");

Минцифры предложило хостерам самим вычислять VPN под прикрытием

Минцифры РФ обсуждает усиление контроля за VPN-сервисами, которые маскируются под легитимные ресурсы и прячут свои IP-адреса от блокировок. Вычислять таких хамелеонов хотят силами хостинг-провайдеров. Сейчас адреса добросовестных сервисов вносят в специальный список, чтобы случайно не отправить их под блокировку.

Однако той же лазейкой пользуются VPN-приложения для обхода сетевых ограничений.

В итоге вместе с законопослушными ресурсами защиту получают и те, ради кого фильтры вообще строились.

Исправить ситуацию предлагают просто: провайдеры должны самостоятельно выявлять подозрительные IP-адреса и передавать сведения регулятору, сообщает РБК.

После этого адрес могут заблокировать, а его владельца — попросить доказать, что сервис действительно легитимный, а не VPN в накладных усах.

Параллельно Минцифры рассматривает градацию доверия к клиентам хостинга. Если человек подтвердил личность только телефоном или банковской картой, при нарушении его услуги смогут отключить за 30 минут. Аутентификация через «Госуслуги», Единую биометрическую систему или полноценный договор даст клиенту время исправить проблему.

Хостеров с поверхностной идентификацией пользователей и частыми нарушениями могут признать недобросовестными, а их IP-подсети — ограничить. Клиентам оставят доступ только к ресурсам из белого списка: госпорталам, банкам и маркетплейсам. Интернет в таком случае превратится в небольшой коридор между «Госуслугами» и оплатой покупок.

Участники рынка предупреждают о побочных эффектах. Жёсткие ограничения могут усилить дефицит IP-адресов и подтолкнуть клиентов к зарубежным хостерам. То есть охота на замаскированные VPN рискует заодно выпроводить из страны вполне обычный бизнес.

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