Lfi
LFI - это возможность использования и выполнения локальных файлов на серверной стороне. Уязвимость позволяет удаленному пользователю получить доступ с помощью специально сформированного запроса к произвольным файлам на сервере, в том числе содержащую конфиденциальную информацию.
Если быть точнее, то это уязвимость инклуда файлов с компьютера + недостаточная фильтрация, что позволяет инклудить произвольный файл.
Содержание
Поиск file inclusion
Вначале разберемся как определить параметры которые отвечают за инклуд файлов.
Поиск параметров
Для поиска параметров есть два варианта: автоматический или ручной поиск.
Автоматический поиск
Автоматический поиск можно осуществить тем же spider'ом в burpsuite. Вы можете у нас в вики найти статью burpsuite.
Ручной поиск
Сейчас я поговорю о ручном поиске.
Предположим, что мы нашли GET параметр:
http://site.ru/folder/index.php?file=gallery
Подставим под параметр строку 'index':
http://site.ru/folder/index.php?file=index
Если у вас открылся какой то из файлов index.(любое расширение), находящихся на сайте, то тут мы уже однозначно можем утверждать, что файл отвечает за подкачку файла.
Именно такие параметры нам и нужны.
Определение фильтров
После того, как мы получили список параметров, нужно проверить, есть ли у них фильтрация.
Нулевая фильтрация
Попробуем подкачать файлы, которые не рассчитывали показывать=)
Аналогом такого файла в линкусе является файл /etc/passwd
Попробуем его подкачать:
http://site.ru/folder/index.php?file=/../../../../../../etc/passwd