нашел уязвимое место, но не могу понять какой оригинальный запрос на беке
выводит 10 записей (вижу не свои)
хочу узнать количество колонок. при order by 1 ошибки нет, при order by 2 есть ошибка (к сожалению не сырая ошибка базы а человекочитабельная)
тут очень интересно почему только 1 колонка? в таблице куда выводят данные 13 колонок
начал думать что там два запроса. первый (уязвимый) возвращает строки с id. а второй достает все данные по этим id. что то вроде
думаю ок, попробую через union добавить известный мне id, не помогло. ничего не возвращает
все ок, выводит запись с id 2
а тут ошибка. то есть получается что если запрос до union ничего не возвращает то ошибки нет, если что то возвращает то ошибка
выводит 10 записей (вижу не свои)
Код:
?search=-")+or+1=1+limit+10--+-
хочу узнать количество колонок. при order by 1 ошибки нет, при order by 2 есть ошибка (к сожалению не сырая ошибка базы а человекочитабельная)
тут очень интересно почему только 1 колонка? в таблице куда выводят данные 13 колонок
Код:
?search=-")+order+by+1--+-
начал думать что там два запроса. первый (уязвимый) возвращает строки с id. а второй достает все данные по этим id. что то вроде
Код:
ids = SELECT id FROM users
WHERE group="XXXX" AND (name LIKE "%$GET['search']%" OR email LIKE "%$GET['search']%"
)
SELECT * FROM users WHERE id IN(ids)
думаю ок, попробую через union добавить известный мне id, не помогло. ничего не возвращает
Код:
?search=-")+union+select+217--+-
все ок, выводит запись с id 2
Код:
") or id=2 -- -
а тут ошибка. то есть получается что если запрос до union ничего не возвращает то ошибки нет, если что то возвращает то ошибка
Код:
") or id=2 union select 217 -- -