Читалка файлой при обходе фильтрации

Discussion in 'Уязвимости' started by jangle, 29 Nov 2014.

  1. jangle

    jangle Member

    Joined:
    19 Nov 2006
    Messages:
    122
    Likes Received:
    6
    Reputations:
    6
    Доброго времени суток, уважаемые!

    Есть код в скрипте

    PHP:
    $_a =  $_GET['patch'];
    if(
    preg_match("/\.\w+$/"$_a) && !preg_match("/\.(php|php5|php4|xml|xsl|cgi|pl)$/"$_a) && !preg_match("/^\/web\//"$_a) &&  file_exists($_SERVER['DOCUMENT_ROOT'].$_a) ){скачиваем файл}  
    При удовлетворении данной фильтрации, можем скачать файл. Как видно .php файлы скачать не удается. Это можно обойти?

    Всем благодарности.
     
  2. UXOR

    UXOR Member

    Joined:
    16 Aug 2013
    Messages:
    44
    Likes Received:
    7
    Reputations:
    6
    jangle, а как достал этот фильтр?
     
  3. jangle

    jangle Member

    Joined:
    19 Nov 2006
    Messages:
    122
    Likes Received:
    6
    Reputations:
    6
    скачал двиг и посмотрел исходник
     
  4. UXOR

    UXOR Member

    Joined:
    16 Aug 2013
    Messages:
    44
    Likes Received:
    7
    Reputations:
    6
    скачать php файлы не получится
     
  5. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    608
    Reputations:
    1,101
    jangle, Ваш код может быть эквивалентен следующему:
    PHP:
    $a =  $_GET['patch'];
    if (
    file_exists($_SERVER['DOCUMENT_ROOT'].$_a)
          
    readfile("/web/$a.php"); // Подставить нужную функцию
    Соответственно вы можете попробовать применить все способы, что используются для вашей версии при LFI (в данном случае читалке).

    Ну и конечно нет проверки регистра, в Windows можно будет читать все файлы. Для полноценного исследования кода не хватает части чтения.
     
    2 people like this.
  6. jangle

    jangle Member

    Joined:
    19 Nov 2006
    Messages:
    122
    Likes Received:
    6
    Reputations:
    6
    to XAMEHA

    Нет, не эквивалентен. Скачать файл можно только при выполнении всех 4х условий.
     
  7. KIR@PRO

    [email protected] Active Member

    Joined:
    26 Dec 2007
    Messages:
    823
    Likes Received:
    287
    Reputations:
    359
    2jangle
    Регулярки регистрозависимые стоят.
    И да мля тока на Win робит... как уже XAMEHA подметил...

    p.s. но там стоят по любому никсы.... :rolleyes:
    Код открытия файла скинь.
     
    _________________________
    #7 [email protected], 4 Dec 2014
    Last edited: 4 Dec 2014
Loading...