ssl-support icon indicating copy to clipboard operation
ssl-support copied to clipboard

Стандарт 770: Обнаружен вызов метода "Выполнить" вместо "ОбщегоНазначения.ВыполнитьВБезопасномРежиме()".

Open marmyshev opened this issue 4 years ago • 1 comments

Название проверки

Обнаружен вызов метода "Выполнить" вместо "ОбщегоНазначения.ВыполнитьВБезопасномРежиме()".

Английское название проверки ??

Правило анализа кода/метаданных

2. Для исключения описанных уязвимостей, нужно в серверных процедурах и функциях вызов методов Выполнить или Вычислить предварять включением безопасного режима:

УстановитьБезопасныйРежим(Истина);
Выполнить Алгоритм;

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

УстановитьБезопасныйРежим(Истина);

Для каждого ИмяРазделителя Из РазделителиКонфигурации() Цикл
УстановитьБезопасныйРежимРазделенияДанных(ИмяРазделителя, Истина);
КонецЦикла;

Выполнить Алгоритм;

При использовании в конфигурации Библиотеки стандартных подсистем, следует использовать:

  • ОбщегоНазначения.ВыполнитьВБезопасномРежиме() вместо Выполнить;
  • ОбщегоНазначения.ВычислитьВБезопасномРежиме() вместо Вычислить;
  • ОбщегоНазначения.ВыполнитьМетодКонфигурации() вместо формирования строки вызова метода модуля и передачи ее в Выполнить;
  • ОбщегоНазначения.ВыполнитьМетодОбъекта() вместо формирования строки вызова метода объекта и передачи ее в Выполнить.

При использовании в конфигурации Библиотеки стандартных подсистем версии, меньшей чем 2.4.1, следует использовать:

  • РаботаВБезопасномРежиме.ВыполнитьВБезопасномРежиме() вместо Выполнить;
  • РаботаВБезопасномРежиме.ВычислитьВБезопасномРежиме() вместо Вычислить;
  • РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации() вместо формирования строки вызова метода модуля и передачи ее в Выполнить;
  • РаботаВБезопасномРежиме.ВыполнитьМетодОбъекта() вместо формирования строки вызова метода объекта и передачи ее в Выполнить.

Мета-информация (пожалуйста, заполните если знаете):

  • Номер стандарта: 770
  • Код проверки: ??my-check-id
  • Тип ошибки: ERROR SECURITY PERFORMANCE WARNING PORTABILITY LIBRARY_DEVELOPMENT_AND_USAGE CODE_STYLE UI_STYLE SPELLING
  • Критичность: BLOCKER CRITICAL MAJOR MINOR TRIVIAL
  • Код ошибки АПК: 487

Параметры проверки

  • NA

Текст ошибки

Обнаружен вызов метода "Выполнить" вместо "ОбщегоНазначения.ВыполнитьВБезопасномРежиме()".

Пример некорректного решения

  • NA

Описание, почему так делать нельзя

Пример корректного решения

  • NA

Дополнительные материалы

marmyshev avatar Sep 14 '21 08:09 marmyshev

Есть похожая проверка 1C-Company/v8-code-style#541, только функцию предлагается другую. Какая-то из двух неактуальная.

DoublesunRUS avatar Sep 18 '21 18:09 DoublesunRUS