CodeSOD: Классическое WTF: Дизайн приложения в полтора уровня
Текст описывает ситуацию, связанную с веб-приложением с уязвимым кодом JavaScript. Код, изученный Моше, использовал динамическую генерацию SQL, создавая значительный риск безопасности. Функция sendLinkVal, предназначенная для обработки данных доставки, была построена с использованием конкатенированных SQL-строк. Это позволяло проводить потенциальные SQL-инъекции, подвергая риску конфиденциальные данные клиентов. Моше обнаружил эту уязвимость, подробно описав, как он смог манипулировать данными клиентов. Он сообщил о проблеме в службу доставки, что привело к контакту с разработчиком. Разработчик перенес запросы в .NET бэкенд в качестве решения. Однако решение бэкенда по-прежнему использовало конкатенированные SQL-строки. Несмотря на изменения, приложение оставалось подверженным SQL-инъекциям из-за отсутствия параметризованных запросов. Текст служит предостережением о плохих методах программирования и недостатках безопасности.
sendLinkVal, предназначенная для обработки данных доставки, была построена с использованием конкатенированных SQL-строк. Это позволяло проводить потенциальные SQL-инъекции, подвергая риску конфиденциальные данные клиентов. Моше обнаружил эту уязвимость, подробно описав, как он смог манипулировать данными клиентов. Он сообщил о проблеме в службу доставки, что привело к контакту с разработчиком. Разработчик перенес запросы в .NET бэкенд в качестве решения. Однако решение бэкенда по-прежнему использовало конкатенированные SQL-строки. Несмотря на изменения, приложение оставалось подверженным SQL-инъекциям из-за отсутствия параметризованных запросов. Текст служит предостережением о плохих методах программирования и недостатках безопасности.