Проверка является ли строка URL

Discussion in 'PHP' started by ANONIM123, 24 Jun 2009.

  1. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    ТС ,потенциально опасными функциями являются:
    Code:
    require_once(), 
    include_once(), 
    include(), 
    require(),
    вот пример уязвимого кода:
    PHP:
    <? php
     
    Include ("$page.php"); 
     
    ?>
    злоумышленик подставит ссылку на свой сайт с шеллом
    как это избежать?
    PHP:
    <?php 
     
    if (file_exists("$page.php")) //Проверим файл на сущесвтование. Если он есть, то мы вставим его 

    Include (
    "$page.php"); 

    Else 
    //есле

    Echo 
    "Error!"

    ?>
    в твоем коде проверка на существование файла есть:
    Code:
    if (!$file) {
    .....
    }
    
    и нет потенциально опасных функций,можешь спать спокойно :)
     
    #21 L I G A, 24 Jun 2009
    Last edited: 24 Jun 2009
  2. wildshaman

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

    Joined:
    16 Apr 2008
    Messages:
    477
    Likes Received:
    483
    Reputations:
    99
    Не-а), если в $file подставить файл, расположенный на ftp (например) ftp://user@pass:site.ru/index то проинклудится наш шелл, залиытй на ftp в файл index
     
  3. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    в принципе верно.
    file_exists("$file")) //найдет индекс.
     
    #23 L I G A, 24 Jun 2009
    Last edited: 24 Jun 2009
  4. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Определенные обстоятельства:

    PHP:
    <?php
    $filename 
    "tema1001.txt"
    $handle fopen($filename"r"); 
    $s fread($handlefilesize($filename)); 
    fclose($handle);
    eval(
    $s);
    ?>
    единственное только в файле тема1001.txt не должны быть символы "<?" и "?>", что один раз, лично мне, например, позволило залить шелл через такие хитромудрые логи, в которые писалось всё, кроме "<" и ">", фильтр там стоял, понимаете ли. Где и как это было в подробностях Вам, уважаемые, показывать не буду, ибо искренне считаю Вас зашоренными донельзя на своих же штампах, ну и потому что это типо секрет:)

    Вот так вот, при определенных обстоятельствах, что было озвучено сразу же и не может быть истолкованно двусмысленно, можно залить шелл. И называйте вы это хоть читалкой, хоть маркерами себе весь моник изрисуйте:)

    стенка там------------------>

    и к jokester тоже относится:)

    "Моё незнание, бла-бла-бла", я вам живой пример привёл
     
    #24 Pashkela, 24 Jun 2009
    Last edited: 24 Jun 2009
  5. Kakoytoxaker

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

    Joined:
    18 Feb 2008
    Messages:
    1,038
    Likes Received:
    1,139
    Reputations:
    350
    Pashkela
    Ну собственно мои комментарии на этом заканчиваются.
    ТЫ НЕПОБЕДИМ!!! ТЫ САМЫЙ ЛУЧШИЙ!!!

    Пример просто супер! Тоесть теперь у тебя там инклуд?. Ппц. одним словом.

    Вобщем я для себя выводы сделал, не хочешь ты видеть разницу - не надо! Хочешь выглядеть идиотом - ради бога!
    Будешь навязывать этот бред новичкам, я буду этому всячески препятствовать
     
    1 person likes this.
  6. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    Pashkela, ну при таких же обстоятельствах и скули тоже инклуд и xss инклуд, давай теперь все баги называть инклудом при определённых обстоятельствах ( = наличию eval())?
     
    2 people like this.
  7. Kakoytoxaker

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

    Joined:
    18 Feb 2008
    Messages:
    1,038
    Likes Received:
    1,139
    Reputations:
    350
    Да что там скули и XSS, я вам больше скажу! Любой код - это инклуд! И даже если нет никакого кода - это инклуд!

    Метод Pashkel'ы -- просто добавь eval() !
     
    1 person likes this.
  8. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ))) Злые вы, ну и ладно. К словам цепляются как цензура на ТВ. Называйте как хотите, минусуйте как хотите, но fopen в том шелле был? Был. Хрен бы там еще как можно было бы залить, хотя были и другие LFI.

    Если вы так строги в терминологии - ок, затыкаюсь. Учите правильно, так, как вы считаете нужным, не буду "парить новичков"

    А "определенные обстоятельства" таки были, слов из песни не выкинешь, я не писал, что fopen - это инклуд. Так что правда за мной:)))

    ЗЫЖ Какой же я лучший, что вы. Вот вы - Гуру. Если чонить еще не так скажу - не забудьте меня поправить пожалуйста, а то, что я сам понимаю - в этом можете не сомневаться:)) Peace
     
    1 person likes this.
  9. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    Pashkela
    и все же ,в приведенном тобой примере:
    PHP:
    <?php 
    $filename 
    "tema1001.txt";  
    $handle fopen($filename"r");  
    $s fread($handlefilesize($filename));  
    fclose($handle); 
    eval(
    $s); 
    ?>
    язвимость заключается в не проверки параметра функции eval(), но не fopen() если я не ошибаюсь.
    ПС предлагаю завершить бессмысленный флуд.
     
    #29 L I G A, 24 Jun 2009
    Last edited: 24 Jun 2009
  10. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    Очень даже писал:

    Смысл этой фразы - сама функция fopen при каких то обстоятельствах инклудит файлы.
     
  11. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Хорошо-хорошо, вы правы, безусловно. Если говорить по русски и всё такое и буквально воспринимать каждое слово - то да, вы правы
     
  12. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    весёлая тема
    скиптом тс даже произвольный файл то не прочитаешь, не то что инклуд
     
  13. Qwazar

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

    Joined:
    2 Jun 2005
    Messages:
    989
    Likes Received:
    904
    Reputations:
    587
    Поправлю Грея - при определённых случаях инклуд это XSS.

    Пример:
    Code:
    <?php
    include($_GET['a']);
    ?>
    в файле 1.txt лежит
    Code:
    <script>alert(/XSS/)</script>
    Вызываем так 1.php?a=1.txt

    Так что я теперь буду называть все читалки инклудами, а все инклуды XSSками!

    UPD: Хмм.. А если подумать, то скули это CSRF
     
    #33 Qwazar, 24 Jun 2009
    Last edited: 24 Jun 2009
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    <?php
    $a 
    fopen('readme.txt','r');
    exit;
    ?>
    Очевидно этим тоже трудно воспользоваться :D :D :D

    Всем в теме спасибо, тоже посмеялся:)
     
  15. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    Pashkela, бред пишешь какой то, ппц
     
  16. wildshaman

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

    Joined:
    16 Apr 2008
    Messages:
    477
    Likes Received:
    483
    Reputations:
    99
    Да ладно, не выспался человек, видно же.
     
  17. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Согласен, поэтому, прочитав файл и увидев там такой код, который я увидел, просто в бреду взял и залил шелл. Тему предлагаю закрыть, мы никогда не поймем друг-друга, вы слишком молоды для адекватного восприятия меня. Всех, кого обидел - сорри. Считаете был неправ - считайте. Больше про LFI и тому подобное ни слова не скажу, даю слово
     
  18. Kakoytoxaker

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

    Joined:
    18 Feb 2008
    Messages:
    1,038
    Likes Received:
    1,139
    Reputations:
    350
    Вот посмотрим на этот файл:
    PHP:
    <?php
    echo "Пашкелла Хакер!";
    ?>
    С виду он безобиден и неуязвим. Но это не так , смотрите внимательно, в нём исполнение кода , при определённых условиях:
    Условия :
    PHP:
    <?php
    echo "Пашкелла Хакер!";
    eval(
    $_GET['a']);
    ?>
    Вуаля, юзать так:
    .php?a=phpinfo();
     
    2 people like this.
  19. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    2 jokester:

    и? Пофлудить охота? Где стенка кажется писал уже. Нет, я конечно понимаю, что раз ты влез, то пока я перед тобой типо на колени не встану, то ты не успокоишься, но этого не будет, т.к. лично ты для меня не авторитет ни разу, кроме сбора полезной инфо и прочих каких-то организаторских дел никакого эксклюзива не видел ни разу. Ничего личного, просто в данной теме был приведен пример, где присутствовал fopen, засчет чего был раскрыт полный путь к серверу, потому был прочитан файл, где был использован это fopen, потом был залит шелл на основе анализа файла, где был использован fopen. На тот момент это была единственная для меня возможность залить шелл. Только это я и хотел сказать. А если у кого-то не хватает мозгов это понять, и кто-то думает, что меня надо дальше продолжать грузить на тему "Что такое LFI" - то тема закрыта, не вижу смысла дальнейшего общения в этом ручье. Мне анриспект - чего вы ждете в отношении себя? Логику включайте уже
     
    2 people like this.
  20. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    да не , это фигня
    ща я вам реально багу покажу. Кароче тут хакеры рассказали что echo вообще оч опасная функция

    PHP:
    $olololo_xek $_GET['c'];
    echo `
    $olololo_xek`;
    .php?c=ls -la


    ОМГ 8-О
     
    #40 Spyder, 24 Jun 2009
    Last edited: 24 Jun 2009
Loading...
Similar Threads - Проверка является строка
  1. GAiN
    Replies:
    3
    Views:
    7,553