Автоинклюдер от меня

Discussion in 'Уязвимости' started by n0ne, 2 Aug 2008.

  1. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    Emo auto-includer



    Для начала расскажу как пользоваца (хотя, в принципе, всё интуитивно понятно) :cool:


    I. Manual


    load_file() include via remote MySQL-Injection


    пример:

    Возьмем такую инъекцию:

    В форму вбиваем:

    Code:
    URL: http://www.vulnsite.com/vulnfolder/vulnscript.php?id=-1
    
    Number of fields: 7
    
    Output field: 4



    Local include


    пример:

    Возьмем такой инклюд:

    В форму вбиваем:
    Code:
    URL: http://www.vulnsite.com/vulnfolder/vulnscript?id=
    
    Number of folders: 7

    Думаю, здесь всё понятно :) Далее расскажу принцип работы.



    II. Principum


    load_file() include via remote MySQL-Injection


    Объясню опять же на примере. Возьмем ту же инъекцию:

    После обработки это дело примет такой вид:

    Где 0x3c686572653e45584953543c2f686572653e - <here>EXIST</here>

    Ну, из этого понятно, что если скрипт видит EXIST между этими тегами, значит путь существует.



    Local include


    Здесь ситуация сложнее, ибо вставить свои теги или вообще какой-то текст нет возможности. Проблема решилась с помощью этакой гадалки :D Точнее функции similar_text(). Вот описание функции - ttp://us2.php.net/similar_text.

    Возьмем тот же инклюд:

    Скрипт создает заведомо ложный запрос и каждой итерацией оценивает его похожесть на предполагаемый путь. Если похожесть меньше 80, то путь считаеца существующим (число взял не из головы, а опытным путем нашел более-менее оптимальное). Так что если будет большой процент несовпадений - сообщите :)


    III. Outro



    Также в процессе написания и отлаживания возник вопрос обработки больших файлов (спасибо Spyder), таких как access_log или error_log в апаче, которые могут иметь довольно большие размеры и, соответственно, сильно тормозить работу скрипта. Решение нашел, на мой взгляд, единственное - грузить только часть страницы. За "часть" был взят размер в 80КБ, которого, по-моему, должно вполне хватить :)


    Собственно, вот сам скрипт:
    Code:
    http://goportacaribe.com/tmp/index.php
    Файл путей отдельно можно взять в той же папке - path.txt. (Пути были собраны здесь - https://forum.antichat.ru/thread49775.html и несколько путей добавил сам)



    IV. P.S.


    Почему не выкладываю исходники? Я за опенсорс, но и за грамотность кода. Просто стыдно выкладывать этот ужас :) Ибо мои познания в пхп очень далеки от совершенства. Но если кому-то действительно нужно или интересно - напишите в личку, залью куда-нибудь.

    Приму любые пожелания и критику. Желательно на чем-то основанные :) Все баги или недочеты - в тему или в личку, по мере возможности буду исправлять и обновлять.

    Если есть какие-то идеи по реализации проверки правильности пути в локальном инклюде - велком в асю или в личку.

    Признаюсь, стили не мои. Те кто в теме - поймут откуда ;)


    если не туда запостил - перенесите
     
    #1 n0ne, 2 Aug 2008
    Last edited: 3 Aug 2008
    10 people like this.
  2. [Raz0r]

    [Raz0r] Elder - Старейшина

    Joined:
    25 Feb 2007
    Messages:
    425
    Likes Received:
    484
    Reputations:
    295
    Скрипт работает =)

    если брать инъекцию из примера, то полей не 7, а 8 (посчитай)

    а здесь вообще 9 полей =)

    фича Local include в идеале должна принимать всего один параметр - URL с инклудом, количество папок можно определить самим скриптом (например перебирать путь до /etc/passwd или C:/boot.ini или брать из ошибки PHP, если таковая имеется)

    а откуда если не секрет? =)
     
    1 person likes this.
  3. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    [Raz0r],

    Нда, немного просчитался :) попроавил

    Вот столько я хз где ты насчитал))


    Это всё можно реализовать, только нужно ли? Лишняя нагрузка на сервер, лишнее время работы скрипта и всё прочее. Помимо простоты использования скрипт должен обладать быстродействием :) А если не хочешь точности - напиши там 200 и всё))

     
  4. ~!DoK_tOR!~

    ~!DoK_tOR!~ Banned

    Joined:
    10 Nov 2006
    Messages:
    673
    Likes Received:
    357
    Reputations:
    44
    Потестил всё пашет без накладок ) Молодец n0ne )
     
  5. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    Спасибо :) Всегда приятно, когда труд оценивают положительно :cool:
     
    1 person likes this.
  6. Don1=2

    Don1=2 Member

    Joined:
    10 Sep 2007
    Messages:
    0
    Likes Received:
    51
    Reputations:
    -19
    хорошая штука, интересуют сорцы )
     
  7. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    Don1=2, выслал в личку) спасибо за положительный отзыв :)
     
    1 person likes this.
  8. Redyps

    Redyps Banned

    Joined:
    17 Jul 2008
    Messages:
    11
    Likes Received:
    10
    Reputations:
    5
    протестил
    тузла с лоад_файл работает хорошо, а вот локал инклуд не нашёл ни одного пути, даж /etc/passwd =)
    Вобщем идея и реализация хорошая, буду ждать обновления функции поиска при инклуде, ибо пока сыровато
     
  9. drive_pan

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

    Joined:
    18 Oct 2007
    Messages:
    178
    Likes Received:
    78
    Reputations:
    5
    Молодца, просто супер !!!
     
  10. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    для mysql load_file() было похожее http://forum.antichat.ru/showthread.php?p=582624
     
  11. LEE_ROY

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

    Joined:
    9 Nov 2006
    Messages:
    450
    Likes Received:
    188
    Reputations:
    26
    замечательно :) залей плз сорец
     
    1 person likes this.
  12. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    Надо будет число подправить, с которым сверяеца)

    Спасибо)

    Круто!!


    LEE_ROY, скинул в личку)
     
    #12 n0ne, 5 Aug 2008
    Last edited: 5 Aug 2008
    2 people like this.
  13. presidentua

    presidentua милиционер Античата

    Joined:
    4 Nov 2007
    Messages:
    305
    Likes Received:
    236
    Reputations:
    15
    Протестил - понравилось. А можно мне в личку ссылку на исходники - все таки лучше я поставлю на своем серваке, а то на том ломаном где он сейчас неизвестно сколько пролежит, а на своем - вечно! )

    Также хотелось бы добавить возможность использовать соксы, а то палить лишний раз айпишник не хочется.
     
    1 person likes this.
  14. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    presidentua, скинул сорцы в личку :)
     
  15. pampom

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

    Joined:
    23 Apr 2008
    Messages:
    33
    Likes Received:
    5
    Reputations:
    0
    перезалейте
     
  16. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    ща свяжусь с автором, мб зальёт
     
  17. Tigger

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

    Joined:
    27 Aug 2007
    Messages:
    936
    Likes Received:
    527
    Reputations:
    204
    Перезалейте =\
     
  18. The_HuliGun

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

    Joined:
    19 May 2007
    Messages:
    191
    Likes Received:
    84
    Reputations:
    11
    Code:
    http://rapidshare.com/files/249917424/emof.rar.html
    Сорець немного переписал, копирайты оставил.

    P.S.
    n0ne Последняя активность: 18.07.2009 20:44
    Может автор подсуетиться, и его творение перенесут в избранное.
    Пользовался все время, не было аналогов до последнего времени.
     
    #18 The_HuliGun, 21 Jul 2009
    Last edited: 21 Jul 2009
  19. n0ne

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

    Joined:
    1 Jan 2007
    Messages:
    542
    Likes Received:
    284
    Reputations:
    -56
    The_HuliGun, спасибо за отзыв :) А на счет подсуетица - уже пытался)) сказали, что не достойно оно быть в избранном)
     
    2 people like this.
  20. pampom

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

    Joined:
    23 Apr 2008
    Messages:
    33
    Likes Received:
    5
    Reputations:
    0
    Перезалейте у кого есть