Причиной тому, как мне кажется, является уязвимость в древнем коде, который не обязательно переписывать, а достаточно лишь внедрить несколько строк обрабатывающие запросы к БД.
Что я имею ввиду:
Любые данные должны попадать в запрос не напрямую, а через некого посредника. Самым лучшим решением на мой взгляд было бы форматирование данных непосредственно перед исполнением запроса. Такое решение давно существует и имеет практику применения, а именно плейсхолдеры. Применяя их, во первых, код запросов становится банально проще, никаких mysql_real_escape_string() - вся обработка скрыта изнутри. Во вторых, не нужно запоминать различные правила для форматирования разных частей запроса. И самое главное, что данные обрабатываются ровно на том уровне, где нужно. Таким образом разработчики всегда будут уверены, что данные форматируются корректно и обеспечивают защиту от инъекций.
Готов сотрудничать с разработчиками если необходимо предоставить больше информации о безопасности БД и внедрении полезного кода. Skype: myccik
Сообщение отредактировал Myccon: 01 Октябрь 2018 - 18:47












