Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline idtks  
#1 Оставлено : 9 октября 2024 г. 14:26:21(UTC)
idtks

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.07.2014(UTC)
Сообщений: 101
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 22 раз
Здравствуйте.

Мы пытаемся пройти «оценка влияния ПО на штатное функционирование СКЗИ». Посмотрели на наш код эксперты, и выдвинули претензии:

При логировании ошибок в библиотеке используются функции не из белого списка: GetLastError и FormatMessage. Необходимо их заменить на функции из белого списка КриптоПро CSP 5.0.R2

Это возможно сделать? Ведь «GetLastError» необходимо использовать, чтобы понять причины неудачного вызова «CryptVerifySignature» (результат «GetLastError()» надо сравнивать с «NTE_BAD_SIGNATURE»). Что-то вроде:

Код:

        if (!CHECK(CryptVerifySignature(c->hDigest, (LPBYTE) tmp, (DWORD) si.sigValue.size(), h_certificate, nullptr, 0))) {
            if (GetLastError() != NTE_BAD_SIGNATURE)
                c->syslogResult = LIB_VERIFY_CspError;
            else {
                c->syslogResult = LIB_VERIFY_InvalidSignature;
                BUSINESSERROR(printFmt("Подпись арифметически не верна у SignerInfo # %d", si.pos));
            }
            CryptDestroyKey(h_certificate); c->clear(); return c->syslogResult;
        }


Можете помочь? Как обойтись совсем без «GetLastError()»?

С уважением, Константин Ткачук.
Offline Санчир Момолдаев  
#2 Оставлено : 9 октября 2024 г. 21:55:28(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,190
Российская Федерация

Сказал(а) «Спасибо»: 100 раз
Поблагодарили: 272 раз в 253 постах
Техническую поддержку оказываем тут
Наша база знаний
Offline idtks  
#3 Оставлено : 10 октября 2024 г. 9:29:49(UTC)
idtks

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.07.2014(UTC)
Сообщений: 101
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 22 раз
Здравствуйте.

Уточните, пожалуйста, правильно ли я понял Ваш ответ:

1. Функция «GetLastError» не является криптографической операцией, регулятор не требовал включения ее в список «белых функций». Использование этой функции не является препятствием для прохождения «оценки влияния ПО на штатное функционирование СКЗИ»?

2. Функция «FormatMessageA» не является криптографической операцией, регулятор не требовал включения ее в список «белых функций». Использование этой функции не является препятствием для прохождения «оценки влияния ПО на штатное функционирование СКЗИ»?

С уважением, Константин Ткачук.
Offline Санчир Момолдаев  
#4 Оставлено : 10 октября 2024 г. 12:10:02(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,190
Российская Федерация

Сказал(а) «Спасибо»: 100 раз
Поблагодарили: 272 раз в 253 постах
Да, в данной функции не выполняются криптографические преобразования, её использование не приводит к появлению возможности построения новых атак.
Её использование для разработки ПО на основе СКЗИ использование допускается без проведения тематических исследований при условии реализации корректной обработки возвращаемого GetLastError и оценки корректности данной обработки в рамках работ по оценке влияния на СКЗИ.

Отметим, что в рамках разработки и проведения тематических исследований следующего релиза CSP планируется добавить данный вызов в перечень Приложения 2 Правил пользования.

Отредактировано пользователем 10 октября 2024 г. 12:25:04(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
idtks оставлено 10.10.2024(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.