Локальный PHP- инклуд

Локальный инклуд позволяет хакеру загружать в браузер и просматривать файлы на сервере.

допустим http://test.ru/index.php?page=./../../../etc/passwd%00

И у вас откроется данный файл скорее всего.

./ -текущий каталог

../- переход на уровень выше

%00 — шестнадцатеричный код для передачи по протоколу HTTP Нулевого байта (конец строки).  — про HTTP можно прочитать в книге PHP  Д. Н. Колисниченко хорошо рассказываться история HTTP приводит разницу между C и PHP.

Теперь давайте экспериментировать.

Запускаем нашу уязвимую машину damn vulnerable linux (Про данную машину я рассказывал в статье что нужно для начинающего хакера которую можно посмотреть сдесь )

создадим файл в каталоге /usr/local/apache/htdocs/ с названием include.php (если у вас стоит другая ОС киньте этот файл в каталог /var/www/ в ваш локальный хост)

код include.php:

$page = ($_GET['page']);
include ("./$page.php");

Теперь открываем браузер и вводим команду http://localhost/include.php?page=./../../etc/passwd%00
Если у вас выведиться ошибка warning : main (././../../etc/passwd) ….. и так далее, попробуйте добавить ещё ../ в адресс браузера то есть http://localhost/include.php?page=./../../../etc/passwd%00 до тех пор пока у вас неотобразиться файл passwd с логинами теперь вместо passwd напишите shadow и у вас отобразяться пароли точнее — хеши паролей (необратимо преобразованный) потом находите через поискових подбор хеш паролей и все ну как все подождёте если в базе будет он то нойдет если нет ищите другой сервис. вообщем это только начало. и ваш первый небольшой взлом. если на сервере установлен ssh то можно найти доступ к ниму и потом что хотите делайте. на компе жертвы

Комментарии (3 комментария) на "Локальный PHP- инклуд"

  1. eppi:

    У меня на ДЛЕ написало: Попытка взлома!
    Устарело…

  2. admin:

    Бывает, щас на всех серверах уже стоит защита, бывает что на некоторых не стоит, потомучто требуеться каким нибуть приложением, хотя если честно я такой не встречал))), это базовые основы просто хотябы знать.

  3. Спасибо за информацию.

Отправить комментарий