Skip to main content

Избегайте загрузки модулей с использованием переменных

Объяснение в один абзац

Избегайте вызова/импорта другого файла с путем, указанным в качестве параметра, из-за опасений, что он мог возникнуть из-за ввода пользователя. Это правило может быть расширено для доступа к файлам вообще (то есть fs.readFile()) или другим чувствительным ресурсам с динамическими переменными, происходящими из пользовательского ввода.

Пример кода

// insecure, as helperPath variable may have been modified by user input
const badWayToRequireUploadHelpers = require(helperPath);

// secure
const uploadHelpers = require('./helpers/upload');