5 способов краулинга веб-сайта

Автор оригинала: Aarti Singh
  • Перевод


Из Википедии веб-краулер или паук – бот, который с просматривает всемирную паутину, как правило, с целью индексации. Поисковики и другие веб-сайты используют краулеры для обновления своего содержимого или индексации содержимого других сайтов.


Давайте начнем!!


Metasploit


Вспомогательный поисковый модуль Metasploit представляет собой модульный поисковый робот, который будет использоваться вместе с wmap или автономно.


use auxiliary/crawler/msfcrawler
msf auxiliary(msfcrawler) > set rhosts www.example.com
msf auxiliary(msfcrawler) > exploit

Видно, что был запущен сканер, с помощью которого можно найти скрытые файлы на любом веб-сайте, например:


  • about.php
  • jquery contact form
  • html и т. д.

Что невозможно сделать вручную при помощи браузера.



Httrack


HTTrack — это бесплатный краулер и автономный браузер с открытым исходным кодом. Он позволяет полностью скачать веб-сайт, рекурсивно строя все каталоги
получая:


  • HTML
  • изображения
  • другие файлы

HTTrack упорядочивает относительную структуру ссылок исходного сайта.


Введем следующую команду внутри терминала


httrack http://tptl.in –O /root/Desktop/file

Он сохранит вывод в заданном каталоге /root/Desktop/file



На скриншоте можно увидеть, что Httrack скачал немало информации о веб-сайте, среди которой много:


  • html
  • JavaScript файлов


Black Widow


Представляет собой загрузчик веб-сайтов и офлайн браузер. Обнаруживает и отображает подробную информацию для выбранной пользователем веб-страницы. Понятный интерфейс BlackWidow с логическими вкладками достаточно прост, но обилие скрытых возможностей может удивить даже опытных пользователей. Просто введите желаемый URL и нажмите Go. BlackWidow использует многопоточность для быстрой загрузки всех файлов и проверки ссылок. Для небольших веб-сайтов операция занимает всего несколько минут.


Введем свой URL http://tptl.in в поле адрес и нажмем «Go».



Нажимаем кнопку «Start», расположенную слева, чтобы начать сканирование URL-адресов, а также выбираем папку для сохранения выходного файла. На скриншоте видно, что просматривался каталог C:\Users\RAJ\Desktop\tptl, чтобы сохранить в нем выходной файл.



В каталоге tptl теперь будут храниться все данные веб-сайта:


  • изображения
  • контент
  • html
  • php
  • JavaScript файлы


Website Ripper Copier


Website Ripper Copier (WRC) — это универсальная высокоскоростная программа-загрузчик веб-сайтов. WRC может загружать файлы веб-сайтов на локальный диск для просмотра в автономном режиме, извлекать файлы веб-сайтов определенного размера и типа, такие как:


  • Изображения
  • Видео
  • Аудио

Также WRC может извлекать большое количество файлов в качестве диспетчера загрузки с поддержкой возобновления.


Вдобавок WRC является средством проверки ссылок на сайты, проводником и веб-браузером с вкладками, предотвращающим всплывающие окна. Website Ripper Copier — единственный инструмент для загрузки веб-сайтов, который может:


  • возобновлять прерванные загрузки из:
    • HTTP
    • HTTPS
    • FTP-соединений
  • получать доступ к сайтам, которые защищены паролями
  • поддерживать веб-файлы cookie
  • анализировать скрипты
  • обновлять полученные сайты или файлы
  • запускать более пятидесяти потоков извлечения

Скачать его можно здесь.


Выбираем «websites for offline browsing».



Вводим URL-адрес веб-сайта как http://tptl.in и нажимаем «next».



Указываем путь к каталогу, чтобы сохранить результат, после чего жмём «run now».



При открытии выбранного каталога tp, внутри него будут файлы:


  • CSS
  • php
  • html
  • js


Burp Suite Spider


Burp Suite Spider – это инструмент для автоматического сканирования веб-приложений, более подробно о котором уже писали на habr. В большинстве случаев желательно отображать приложения вручную, но с помощью Burp Spider данный процесс можно автоматизировать, что упростит работу с очень большими приложениями или при нехватке времени.


На скриншоте видно, что http-запрос был отправлен "пауку" с помощью контекстного меню.



Веб-сайт был добавлен на карту сайта под целевой вкладкой в качестве новой области для веб-сканирования, в результате которого была собрана информация в форме:


  • Php
  • Html
  • Js


image

AlexHost
AlexHost — надежный хостинг по доступным ценам!

Комментарии 5

    +1

    Еще можно использовать owasp zap — в нем есть несколько модулей для краулинга сайтов, гибкая настройка и приятный бонус в виде удобной АПИшки, которая позволит работать в терминале

      +1
      Спасибо за обзор, попробую.
      HTTrack кстати пробовал (с GUI-оберткой), не понравилось. Как-то все криво и косо, да и работает не очень.
      Раньше был Teleport Pro/Teleport Ultra, но теперь он большую часть сайтов просто не качает — вероятно, что-то современное в http(s) ему не доступно.
      Еще вспоминаю одну старую (времен Windows98) программу под названием DiscoPumper (ДискоКачалка) — маленькая и удобная, там есть уникальная фича — команды «углубить» и «не читать» в дереве ссылок, что позволяло скачивать не весь сайт, а выборочно, анализируя структуру сайта на ходу, отсекая ненужные части и углубляя нужные.
      Поскольку она на движке IE, то как ни странно, до сих пор работает. Жалко что открытых исходников нет.
        +2

        Для больших объемов (не один сайт) есть настоящие краулеры:


        1. https://github.com/LAW-Unimi/BUbiNG/ — BUbiNG — разработка университета Милана, умеет сохранять в WARC формат (Java)
        2. https://github.com/DigitalPebble/storm-crawler — Strom Crawler — разработка DigitalPeble — хороший масштабируемый краулер — конструктор (Java)
        3. https://frontera.readthedocs.io/en/latest/topics/overview.html — Frontera — отличный масштабируемый фреймворк для построения краулеров (Python)
        4. http://nutch.apache.org/ — Nutch — один из долгожителей, основа CommonCrawl

        На базе 2-го и 3-го сделано огромное количество коммерческих поделок, но в каждом из этих четырых есть масса интересных идей, которых я нигде не встречал. Например, в BUbiNG используется bloom фильтр для снижения нагрузки при обнаружении новых ссылок.

          0
          А сайт во время краулинга, наверное, напевает «Сrawling in my skin, These wounds they will not heal ...».
          Ох уж этот новояз.
            +1

            Лет 20 назад начинал с программы Teleport Pro 1.72 (если кто помнит). Затем перешел на "Offline Explorer 8" — платная. Кто интересуется темой parse / scraping см. в гугле по запросу Offline Browsers — целый зоопарк этого класса программ и обзоров на них.

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

            Самое читаемое