• XSS.stack #1 – первый литературный журнал от юзеров форума

LFIFucker - Ищем сайты по гугл доркам и тестируем на наличие LFI

pablo

(L2) cache
Пользователь
Регистрация
01.02.2019
Сообщения
433
Реакции
1 524
Всем привет. Хочу представить свой авторский софт, знаю что LFI-уязвимости уже сто лет в обед, но всё же до сих пор встречаются немало веб-ресурсов на просторах интернета с наличием этой дыры. Прошу строго не судить, баги и недочёты есть, исправим :)

Итак, краткое описание самой уязвимости:

Что конкретно умеет софт:
  • Ищет гугл дорки с помощью Google CSE(Custom Search Engine).
  • Фильтрует найденые сайты.
  • В многопоточном режиме сканирует сайты на предмет наличия уязвимости по заданным шаблонам.
  • Также есть возможность указать свой список сайтов.
  • Использование SOCKS5 проксей.
Теперь разберёмся как юзать тулзу.

Первым делом клоним репозиторий и переходим в папку с ним.
> git clone https://github.com/madRubyroid/LFIFucker.git
> cd LFIFucker/

Теперь надо прописать в конфиге API-ключ для search engine и CSE-CX.
Для этого переходим по этой ссылке. Мы попадаем в CSE Home.

Далее нужно добавить новую поисковую систему. Нажимаем Добавить.

Указываем сайты, на которых будет выполняться поиск и название системы. Создаем.
Окей, переходим в Панель управления и копируем Идентификатор поисковой системы(CSE-CX).
Переходим в GCloud Console и создаем проект, после переходим в раздел Библиотеку API и ищем Custom Search API.

Нажимаем Включить, и переходим в раздел Учетные данные.
Нам нужно либо сгенерить новый API-ключ, либо использовать те, которые автосгенерились, это не принципиально.
Соответственно, либо копируем один из трёх уже существующих ключей:

Либо выбираем Создать учетные данные > Ключ API.
Последний этап настройки: прописать этих два значения в конфиг файлик lfi.conf

Код:
#############-LFIFucker configuration file-###############

GOOGLE_API_KEY=<YOUR-API-KEY>
GOOGLE_ENGINE_CX=<YOUR-ENGINE-CX>

Так, настройка завершена, можно пробовать :)
Чтобы запустить поиск сайтов, допустим, по доркам id= q= p= act=, и сканирование по дефолтному шаблону, вводим эту команду

> ./LFIFucker.sh --dork-query id=,q=,p=,act=

Сейчас тулза найдёт сайты по вышеуказанным доркам, отфильтрует их и в 6 потоков будет делать запрос по шаблону.
Результаты сохраняются в tmp директории.

Код:
RLFIFucker$ ls tmp/
16072019_142800_lfi_vulnerable.log

Указание списка ссылок для проверки на уязвимость, без использование CSE и с указанием вашего списка шаблонов:

> ./LFIFucker --sites sites.txt --patterns patterns.list

Как вы могли уже заметить, тулза на bash, но часть на python. Почему так? Да потому что это было чисто по-фану, в принципе я не планировал показывать в люди эту скромную софтинку :)
Функционал будет мной еще допиливаться, есть идеи прикрутить еще RFI(Remote File Inclusion), но пока имеем что имеем.
Если есть смысл и те, кому будет интересно более подробно разобрать LFI/RFI, в будушем я напишу статью по этой теме.

На этом пока всё.


aвтор @Ruby
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх