- •Общие сведения и сценарий
- •Необходимые ресурсы
- •Откройте файл pcap и следуйте за злоумышленником, атаковавшим базу данных sql.
- •Откройте Wireshark и загрузите файл pcap.
- •Просмотр атаки с внедрением sql-кода.
- •Атака с внедрением sql-кода продолжается...
- •Атака с внедрением sql-кода предоставляет информацию о системе.
- •Атака с внедрением sql-кода и табличная информация.
- •Атака с внедрением sql-кода завершается.
- •Вопросы для повторения
Атака с внедрением sql-кода продолжается...
На этом этапе вы увидите продолжение атаки.
В данных, собранных программой Wireshark, щелкните правой кнопкой мыши по строке 19 и выберите Follow HTTP Streamо (Отслеживать поток HTTP).
Щелкните Find (Поиск) и введите 1=1. Выполните поиск данной записи. Когда текст найден, нажмите кнопку Cancel (Отмена) в поле поиска текста.
Злоумышленник ввел запрос (1' или 1 = 1 union select database(), user()#) в поле поиска идентификатора пользователя на целевом объекте 10.0.2.15. Вместо того чтобы ответить сообщением об ошибке входа в систему, приложение выдало следующую информацию.
Имя базы данных — dvwa, пользователь базы данных — dvwa@localhost. Также показано несколько учетных записей пользователей.
Закройте окно Follow HTTP Stream (Отслеживать поток HTTP).
Нажмите кнопку Clear (Очистить), чтобы показать весь сеанс связи Wireshark.
Атака с внедрением sql-кода предоставляет информацию о системе.
Злоумышленник продолжает и начинает искать более конкретную информацию.
В данных, собранных программой Wireshark, щелкните правой кнопкой мыши по строке 22 и выберите Follow HTTP Stream (Отслеживать поток HTTP). Красным цветом показан источник трафика. Он отправляет запрос GET на хост 10.0.2.15. Синим показано, как устройство назначения отвечает источнику.
Щелкните Find (Поиск) и введите 1=1. Выполните поиск данной записи. Когда текст найден, нажмите кнопку Cancel (Отмена) в поле поиска текста.
Злоумышленник ввел запрос (1' или 1 = 1 union select null, version ()#) в поле поиска идентификатора пользователя на целевом объекте 10.0.2.15, чтобы обнаружить идентификатор версии. Обратите внимание, что идентификатор версии находится в конце выходных данных непосредственно перед </pre>.</div> закрывающим HTML-кодом.
Назовите версию.
MySQL 5.7.12-0
Закройте окно Follow HTTP Stream (Отслеживать поток HTTP).
Нажмите кнопку Clear (Очистить), чтобы показать весь сеанс связи Wireshark.
Атака с внедрением sql-кода и табличная информация.
Злоумышленник знает, что имеется большое количество таблиц SQL, в которых содержится много информации. Злоумышленник пытается найти их.
В данных, собранных программой Wireshark, щелкните правой кнопкой мыши по строке 25 и выберите Follow HTTP Stream (Отслеживать поток HTTP). Источник показан красным цветом. Он отправил запрос GET на хост 10.0.2.15. Синим показано, как устройство назначения отвечает источнику.
Щелкните Find (Поиск) и введите users. Выполните поиск записи, показанной ниже. Когда текст найден, нажмите кнопку Cancel (Отмена) в поле поиска текста.
Злоумышленник ввел запрос (1' или 1=1 union select null, table_name from information_schema.tables#) в поле поиска идентификатора пользователя на целевом объекте 10.0.2.15 для просмотра всех таблиц в базе данных. В результате выдается огромное количество таблиц, так как злоумышленник указал null без каких-либо дополнительных уточнений.
Чем измененная команда (1' OR 1=1 UNION SELECT null, column_name FROM INFORMATION_SCHEMA.columns WHERE table_name='users') поможет злоумышленнику?
База данных ответит гораздо более коротким выводом, отфильтрованным по вхождению запрос «пользователи».