Оглавление:
Определение - Что означает внедрение кода?
Внедрение кода - это злонамеренное внедрение или введение кода в приложение. Введенный или внедренный код способен нарушить целостность базы данных и / или поставить под угрозу свойства конфиденциальности, безопасность и даже правильность данных. Он также может похищать данные и / или обходить контроль доступа и аутентификации. Атаки внедрения кода могут мешать приложениям, которые зависят от пользовательского ввода для выполнения.Техопедия объясняет внедрение кода
Существует четыре основных типа атак с использованием кода:
- SQL-инъекция
- Сценарий внедрения
- Shell впрыск
- Динамическая оценка
SQL-инъекция - это режим атаки, который используется для повреждения легитимного запроса к базе данных для предоставления фальсифицированных данных. Внедрение сценария - это атака, при которой злоумышленник передает программный код на серверную часть механизма сценариев. Атаки с использованием оболочки, также известные как командные атаки операционной системы, манипулируют приложениями, которые используются для формулирования команд для операционной системы. При атаке с динамической оценкой произвольный код заменяет стандартный ввод, в результате чего первый выполняется приложением. Разница между внедрением кода и внедрением команд, другой формой атаки, заключается в ограничении функциональности введенного кода для злоумышленника.
Уязвимости внедрения кода варьируются от простых до труднодоступных. Многие решения были разработаны для предотвращения этих типов атак внедрения кода, как для приложений, так и для области архитектуры. Некоторые примеры включают проверку ввода, параметризацию, установку привилегий для различных действий, добавление дополнительного уровня защиты и другие.