2015-05-11 2 views
1

Я ищу старый код PHP, пытаясь выяснить, уязвим ли он для SQL-инъекции. Мой босс считает, что это безопасно, но я не решаюсь это принять. Он использует Oracle DB.SQL-инъекция в оракуле с дезинфицированным входом

Это старый код, и запрос строится с помощью конкатенации строк (sprintf). Тем не менее, строка ввода пользователя имеет все дефисы и пробелы, удаленные (через str_replace), и на нее вызывается addlashes(). Есть ли в этом случае какая-либо угроза нападения? Можете ли вы привести пример?

Поскольку код был написан, мы перешли к использованию параметризованных запросов, поэтому в идеале мы его обновляем до этого, но я пытаюсь доказать необходимость этого.

+0

Нет, это звучит не очень безопасно. Скажите своему боссу, что он не безопасен. Если он откажется слушать, то, возможно, попытайтесь привлечь других сотрудников на свою сторону. Если это не сработает, пусть он спит в своей постели. Если ваши серверы нарушены, то смеяться ему в лицо и сказать ему, что ты ему так сказал. –

ответ

1

Есть несколько примеров того, как привнести что-то с помощью атаки addslashes здесь:

Если эта небольшая партия не убедит начальника, то, возможно, настроена на тестовом сервере и создаст инъекцию POC против кода, используя то, что объяснено в приведенных выше ссылках, чтобы продемонстрировать атаку. Таблицы с отрывками довольно драматичны, так как обманывают скрипт, выводя содержимое БД на страницу.

Смежные вопросы