Что такое уязвимость prototype pollution?

Prototype pollution — изменение прототипа через недоверенные данные, из-за которого посторонние свойства начинают наследоваться другими объектами.

Короткий ответ

Что ответить на собеседовании

Prototype pollution — изменение прототипа через недоверенные данные, из-за которого посторонние свойства начинают наследоваться другими объектами.

Подробный разбор

Ответ с пояснениями

Prototype pollution — изменение прототипа через недоверенные данные, из-за которого посторонние свойства начинают наследоваться другими объектами.

Опасны небезопасные глубокие слияния и запись по пользовательскому пути, включая proto и constructor.prototype. Валидируйте структуру и разрешённые ключи, используйте безопасные библиотеки и проверяйте собственные свойства. Для словарей подходят Map или объекты без прототипа; одна фильтрация proto не закрывает все варианты.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее