Advanced SQL -инъекционный сканер - IIS & DBO
Усовершенствованные механизмы инъекции SQL, которые могут использоваться вредоносными пользователями для получения критической информации и воспользоваться ее преимуществом, чтобы получить полный контроль над компьютерной системой.
Пояснительная примечание
Эта статья не пытается объяснить новую технику компрометирования компьютерных систем, техника инъекции SQL очень старая и известная, но в то же время может быть очень мощным. Статья также не отражает использование неизвестной уязвимости, это известно и уже сообщается, что, если это можно отразить, являются неопубликованными передовыми механизмами инъекции SQL, которые могут использоваться вредоносными пользователями для получения критической информации и воспользоваться ее для полного контроля компьютерной системы.
Объединение этого метода с веб -сервером IIS с повышенными разрешениями пользователей (DBO) в базе данных Microsoft SQL Server может привести к полной потере управления пораженным сервером.
Эта статья попытается объяснить потенциальный риск, вызванный неправильной конфигурацией базы данных SQL, которая взаимодействует с внешней веб -страницей через веб -сервер IIS, и сообщают о том, как злонамеренные пользователи могут извлечь из нее выгоду.
Краткое резюме (Википедия)
Инъекция SQL-это метод впрыска кода, используемый для атаки приложений, управляемых данными, в которых гнусные операторы SQL вставляются в поле входа для выполнения (например, для сброса содержимого базы данных злоумышленнику). Инъекция SQL должна использовать уязвимость безопасности в программном обеспечении приложения, например, когда пользовательский ввод либо неправильно отфильтрован для строковых литеральных экономных символов, встроенных в операторы SQL, либо пользовательский ввод не сильно напечатан и неожиданно выполняется. Инъекция SQL в основном известна как вектор атаки для веб -сайтов, но может использоваться для атаки любого типа базы данных SQL.
Атаки инъекций SQL позволяют злоумышленникам подделать идентичность, вмешиваться в существующие данные, вызывают проблемы отказа, такие как мочеиспускание транзакции или изменение баланса, позволяют полное раскрытие всех данных в системе, уничтожить данные или сделать их в противном случае недоступным и стать администраторами сервера базы данных.
Уязвимость
Предполагая, что на веб-странице существуют проблемы безопасности при передаче параметров, позволяющих разрешить инъекцию SQL, основная проблема заключается в том, что веб-сервер IIS может отображать критическую информацию пользователю с использованием неверной функции преобразования Transact-SQL. Представьте себе следующий URL, где параметр ID позволяет впрыгивать.
https://www.victim.com/index.aspx?id=1
Злоусовный пользователь может переопределить значение параметра ID с помощью функции Transact-SQL преобразование
конвертировать (int, (select+user));-
Последний URL будет в этом стиле:
https://www.victim.com/index.aspx?id=convert(int, (выберите+пользователь));-
Функция преобразования пытается преобразовать строку в целое число, что вызывает исключение, когда веб -сервер IIS допускает серьезную ошибку, показывающую значение выполненного запроса.
Типичным выводом будет что -то вроде этого:
Преобразование не удалось при преобразовании значения nvarchar '{user}' в тип данных Int.
Как мы видим, значение {пользователя} соответствует текущему значению пользователя базы данных, в дополнение ко всему этому, если возвращаемое значение является DBO, сообщит нам, что пользователь базы данных имеет максимальные привилегии выполнения, так что это сможет выполнять команды оболочки, используя функцию XP_CMDSHELL Transact-SQL.
Использование веб -страницы с пользователем базы данных с максимальными привилегиями является серьезной ошибкой безопасности, когда системные администраторы не должны падать.
Таким образом, может сказать, что уязвимость состоит из трех факторов:
- Ошибка в обработке параметров GET/POST, которые позволяют впрытьте SQL. (Разработчик программного обеспечения)
- Веб -сервер IIS, который отображает информацию о функции преобразования. (Microsoft)
- Используйте пользователя базы данных на веб -странице с максимальными привилегиями. (Системный администратор/разработчик программного обеспечения)
Версия 4.0 (частная)
Расширенная версия 4.0 сканера находится в частном репозитории (виден спонсором) со всеми его функциями.
- https://github.com/iricartb/advanced-sql-nection-scaner-release
Больше информации
https://advanced-sql-nection.blogspot.com/2017/06/ivan-ricart-borges-advanced-sql.html