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

Криптовалюту в России предложили принимать в залог

Российскому бизнесу хотят разрешить обеспечивать обязательства цифровой валютой, включая стейблкоины. Проще говоря, криптовалюта может официально превратиться в залог (почти как недвижимость или ценные бумаги, только с блокчейном).

Рекомендацию Минюсту направил Совет по развитию цифровой экономики при Совете Федерации, сообщает ТАСС.

Вместе с Банком России и другими заинтересованными организациями ведомству предложили подготовить необходимые изменения в гражданском законодательстве.

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

По словам сенатора Артёма Шейкина, новый механизм способен расширить доступные бизнесу способы обеспечения обязательств и сделать работу с цифровой валютой понятнее.

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

Отдельное внимание предлагают уделять стране регистрации эмитента и инфраструктуре, через которую обращается актив. Если токен связан с государством, вводящим санкции против России, его могут заблокировать или сделать недоступным.

Этот риск не теоретический. Ранее Минфин пояснял, что при блокировке криптовалюты иностранным эмитентом российский депозитарий не обязан компенсировать клиенту стоимость актива.

Властям предстоит определить порядок оценки, хранения и взыскания цифровых активов, а заодно решить, кто останется с убытками.

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