Как найти все файлы на сайте

В общем случае такую информацию узнать нельзя, т.к. обычно выставлена защита на сайтах от перечисления папок и получения списка файлов. Только если включена возможность перечисления папок, что бывает редко, тогда можно набрать имя папки в браузере, например mysite.org/folder_name/, и возможно оно выдаст список файлов. Если список получать нельзя у папки, можно только перебирать возможные папки и имена и пытатьтся скачивать их.

Также можно попробовать поискать в гугле через «site:SITENAME filetype:txt» (например найти все TXT на archive.org), он вернёт список всех индексированных TXT файлов на заданном сайте, конечно если на них какая-то страница сайта где-то ссылалась, если ссылок на файлы нигде нет на страницах то и гугл не найдёт.

Any crawler or spider will read your index.htm or equivalent, that is exposed to the web, they will read the source code for that page, and find everything that is associated to that webpage and contains subdirectories. If they find a «contact us» button, there may be is included the path to the webpage or php that deal with the contact-us action, so they now have one more subdirectory/folder name to crawl and dig more. But even so, if that folder has a index.htm or equivalent file, it will not list all the files in such folder.

If by mistake, the programmer never included an index.htm file in such folder, then all the files will be listed on your computer screen, and also for the crawler/spider to keep digging. But, if you created a folder www.yoursite.com/nombresinistro75crazyragazzo19/ and put several files in there, and never published any button or never exposed that folder address anywhere in the net, keeping only in your head, chances are that nobody ever will find that path, with crawler or spider, for more sophisticated it can be.

Except, of course, if they can enter your FTP or access your site control panel.

В информационной безопасности есть казалось бы очевидные вещи. Но они все еще часто встречаются, в том числе в крупных компаниях и государственных организациях. На эту тему эксперт по информационной безопасности и преподаватель Иван Юшкевич провел мастер-класс по безопасности на конференции РИТ++ на платформе hacktory.ai.

Практическую часть МК о том, как накрутить лайки в социальных сетях, украсть криптовалюту и получить доступ к самым большим секретам пользователей, вы можете посмотреть здесь и здесь.

Теоретическую часть пришлось разбить на 3 части. Сегодня рассказ будет о том, что злоумышленник может сделать с найденными файлами и директориями. А также, как используется удаленное выполнение кода (инъекции), в том числе и в SQL.

Поиск файлов и директорий

Одна из самых распространенных проблем, связанная с информационной безопасностью — файлы хранятся в общедоступном виде. Это касается файлов с чувствительной информацией или тех, про которые забыли, например:

  • Файлы административной панели (/admin.php); 

  • Бэкапы и логи (/log.txt; /back.sql; /backup.tar.gz);

  • Структура веб проекта; 

  • Файлы систем контроля версий (/.git); 

  • Отладочные файлы (test.php);

  • Скрытые копии редактируемых файлов (/admin.php-).

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

Угрозы могут быть самыми разными. Начиная от того, что человек может получить доступ к интересной информации о сервере, например, php-info. И заканчивая серьезными вещами. Например, если он сможет найти систему контроля версий, то при некоторых особенностях он сможет получить даже доступ к исходному коду самого веб-приложения.

Важно всегда держать в голове:

1. Не полагайтесь на то, что если вы переименовали какой-то ресурс, то подобрать название крайне сложно. Злоумышленник может найти любой ресурс, каким бы замысловатым его название ни было.

2. Никогда не храните бэкапы и файлы конфигураций в общей директории веб-ресурсов. Это очевидно.

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

Ищем файлы и директории

Предположим, есть некоторый ресурс. Мы на него зашли и обнаружили, что есть файл index.html, папки со скриптами и стилями (/css/, /js/) и несколько api-ручек (/api/v1/user/: login, register, info/:id/). 

В принципе, ничего интересного. Однако если применить один из инструментов (его мы рассмотрим чуть позже) для поиска файлов и скрытых директорий, можно обнаружить еще 5 интересных адресов. 

Рассмотрим каждую из них и подумаем, какую угрозу они в принципе могут нести. Начнем снизу.

Test.php

Test.php, да и любые отладочные файлы могут представлять абсолютно разную функциональность, начиная от простой информации или вывода на страничку «Привет, мир», и заканчивая теми, что помогут злоумышленнику скомпрометировать сервер.

Исследуя веб-ресурс, можно найти поддомены, например, тестовые, и на них поискать скрипты, которые использовались для отладки, тестирования или чего-то еще. С их помощью можно получить доступ к серверу. Довольно много ресурсов были таким образом скомпрометированы.

Например, один из исследователей зарепортил уязвимость, обнаружив на сайте скрипт check.php, и получив с его помощью доступ к информации о сервере. Скорее всего, это было самое тривиальное PHP-info, но все же такие вещи встречаются в реальной жизни.

Рассмотрим следующую папку.

Директория /.git/

/.git/ cодержит изменения и артефакты системы контроля версий. Если её обнаружат, а ее не почистили, не удалили или не закрыли к ней доступ, то можно получить доступ даже к исходным кодам всего проекта. Нужно будет просто восстановить те или иные файлы по их артефактам. Звучит интересно, потому что так возможен доступ к исходному коду файла test.php.

А проанализировав test.php, мы могли бы узнать, например, что он создавал бэкапы с определенным названием в папке /backup/. 

Директория /backup/

Ее название говорит само за себя. Там может оказаться что угодно, начиная от исходных данных самого приложения и заканчивая бэкапами БД. И она может нанести непоправимый ущерб, если находится в открытом доступе. В этом случае можно получить доступы к учетным записям, исходным кодам, БД — к чему угодно.

Может показаться, что эта уязвимость прямо из 90-х. Однако нет, она встречается повсеместно. Например, на одном из сайтов — к слову,  на сайте Министерства безопасности США — исследователь нашел такую папку и получил доступ к бэкапам. 

Директория /access/

Можно найти папку /access/ с говорящим файлом access.log, в котором, собирается какая-то информация (логи). Эти логи иногда могут содержать тоже очень интересную информацию, критичную для веб-ресурса.

Проанализировав access.log, можно найти некоторую папку, явно указывающую, что она принадлежит к административной панели. И если после анализа директории /backup/ у нас доступ к backup БД, то мы знаем, какие пользователи и их пароли нужны, чтобы получить доступ к этой административной панели. То есть из одной уязвимости можно получить доступ к административной панели, даже если у нее странное название, которое нелегко подобрать.

Один исследователь исследовал ресурс мессенджера Slack и нашел файл, или даже ручку под названием debug (тоже вполне говорящее название). С его помощью он получил информацию о том, какие пользователи сейчас находятся в системе, их API адреса, идентификаторы сессий и многое другое Вознаграждение составило $1500.

Директория /api/v1/user/

Не только файлы или папки могут являться угрозой. Иногда проблема может крыться в API-ручках. Поскольку считается правильным делать ручки (названия функций) говорящими, чтобы можно было легко понять, к чему они относятся, то злоумышленник может  попробовать поперебирать те или иные составляющие части адреса ручек. 

Например, заменить user на admin, чтобы получить доступ к другой ручке, изначально скрытой, и которая может использоваться в той самой административной панели. Если она не требует никакой авторизации и на ней не проверяется контроль доступа, то, совершить с её помощью какие-то противоправные действия.

То есть, хотя изначально сайт состоял всего из 7 адресов, за каждым из них может быть огромное количество скрытой информации, которая может позволить скомпрометировать сервер. Не надейтесь, что переименовав скрипт во время тестирования сайта или переноса данных, вы закроете доступ к данным. Всё это можно найти.

Инструменты

Инструментов для поиска файлов и директорий огромное количество. В другой статье на Хабре подробно рассказано об этом. 

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

Как избежать нахождения информации

Как обезопасить наше веб-приложение от того, чтобы кто-то не нашел чувствительную информацию и не использовал ее во вред?

Не хранить чувствительные данные в открытом доступе – самое очевидное решение. 

А если мы что-то и храним, например, по каким-то ручкам или в каких-то файлах, то всегда проверять, что эта информация в сети интернет не находится в публичном доступе. Что файлы и ручки прикрыты, может быть, паролями или настройки на веб-сервере не позволяют получить к ним доступ по прямым ссылкам.

Если ставим дополнительные плагины, директории и т.п., то нужно проверять, что они не создают какую-то информацию или сама настройка веб-сервера не раскрывает эту информацию. Например, если был ресурс, настроенный на работу с веб-сервером Apache, а потом эту настройку перенесли на Nginx, то иногда некоторые файлы и директории могут стать станут доступными для сторонних пользователей.

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

Перейдем к следующей уязвимости.

Удаленное выполнение кода (инъекции)

Внедрение команд — одна из самых распространенных и уязвленных уязвимостей. Она относится в OWASP к классу А1 под названием инъекция, и на самом деле, неважно, чего — кода или команд. Инъекция может быть абсолютно везде. 

Сначала рассмотрим самое простое и тривиальное внедрение команд.

Внедрение команд

Суть уязвимости крайне проста: пользователь передает некоторые данные и они попадают в какую-то строку, которая потом передается на выполнение в оболочку ОС. То есть атака возможна, когда приложение формирует команду к ОС и подставляет в неё небезопасные данные, контролируемые пользователем — GET/POST параметры, HTTP-заголовки, Cookies, и т. д. В результате все данные из не доверенных источников попадают куда бы то ни было без валидации этих данных.

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

Предотвратить внедрение команд возможно, если принимать меры безопасности на стадиях проектирования и разработки приложения.

Ищем возможность внедрения команд

Уязвимость можно обнаружить, проверяя код. Проверьте, вызываются ли какие-либо методы исполнения команд и принимается ли в качестве данных для этих команд не прошедший валидацию пользовательский ввод.

PING

Рассмотрим хрестоматийный пример. Допустим, у нас есть сайт vuln.com и скрипт /ping.php:

Этот скрипт вызывает утилиту ping, которая отправляет запросы на ip-адрес, а он попадает в скрипт в качество аргумента. Затем скрипт возвращает вывод команды на экран. То есть это некоторый сервис, который что-то пингует. В нормальном случае мы подставляем туда ip-адрес 8.8.8.8:

vuln.com/ping.php?ip=8.8.8.8 fc

В результате выполняется команда: ‘ping — с 4’ 8.8.8.8. Как вы можете заметить, в этом коде данные подставляются, как есть. Поэтому нам ничто не мешает вместо 8.8.8.8 (ведь никто не проверяет, что это ip-адрес и что он содержит некорректные управляющие символы) передать при отправке в качестве аргумента значения 123;whoami.  “;” будет являться управляющим символом, который свидетельствует о разделении команд.

Тогда сформированная команда будет выглядеть следующим образом:

‘ping - с 4’ 123;whoami

Команда попробует пропинговать адрес 123, и естественно, сделать это не сможет. А так как “;” говорит, что предыдущая команда закончилась и началась следующая, то скрипт выполнит “whoami”. Собственно, в этом и заключается суть уязвимости. Она крайне простая, но в результате данные пользователей попадают в необработанном виде куда-то, где и  исполняются.

Может показаться, что это тоже архаизм, и сейчас его найти невозможно. Однако нет. В качестве примера есть такой report. 

Рассмотрим его подробнее.

Nextcloud

Существует ПО Nextcloud, которое позволяет создавать свое облако и шарить файлы — такое standalone решение. В 2018 году исследователь нашел в нем уязвимость как раз через внедрения команды.

Посмотрите на 11 строку. Выполняются функция “exec”, команда “unrar” и передаются значения переменных “file” и “dir”. Последние получаются, как показывает этот код, из архива “rar”, который, скорее всего, может как-то передавать пользователей. То есть если исследователь сможет сформировать такой архив “rar”, в котором будет содержаться имя “file с ;”, то при распаковке он сможет выполнить свою стороннюю команду и получить доступ к серверу.

Да, наверное, он не сможет это сделать штатными способами, но есть ПО, которое это сделает за него. А если там содержатся приватные данные или сервер используется как корпоративный dropbox?

Но не только PHP уязвим к данному классу атак. Например, если вы используете какие-то библиотеки, уязвимость может открыться в них.

Image Magick 

Набор утилит (ПО) Image Magick отвечает за конвертацию изображения и их обработку. Огромное количество компаний использовала его для обработки изображений. 

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

Найденные уязвимости

Рассмотрим, в чем суть данной уязвимости.

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

В итоге пользователь мог передать какую-нибудь картинку (например, аватарку) в формате SVG, внутри которой была ссылка на стороннюю картинку. При конвертации картинки, которая внутри SVG, ImageMagick пытался ее запросить с помощью команды wget, и подставлял адрес той картинки. Что приводило к тому, что можно было поставить двойную кавычку и выполнить стороннюю команду.

Компоненты

Под капотом всех приложений, которые сейчас издаются, кроется огромное количество разнообразных взаимосвязанных компонент и библиотек.

https://engineering.videoblocks.com/web-architecture-101-a3224e126947

https://engineering.videoblocks.com/web-architecture-101-a3224e126947

Каждая компонента состоит из множества библиотек, даже из таких, которые мы просто скачали и начали использовать. Уязвимости могут крыться как раз в этих библиотеках. Мы можем быть не виноваты, но наше ПО все равно будет уязвимо.

Сами посудите, есть некоторый сервис, который может заниматься абсолютно какой-нибудь ерундой, если смотреть в рамках всего приложения. Однако в нем какой-то компонент использует библиотеку, о существовании которой мы не знаем — и в ней кроется уязвимость. По цепочке это приводит к тому, что всё наше приложение, как бы круто оно ни было написано, становится уязвимым.

Поиск уязвимости blackbox методом

Инъекции могут быть в разных местах команды. Иногда инъекция может выполниться даже после правильного завершения команды.

Существуют разные спецсимволы, которые позволяют разделить команды:; ,&,&&, | , 11 , >. Выбор спецсимвола влияет на условия — параллельное или последовательное выполнение, в зависимости или вне от того, что возвращает первая команда, перенаправление вывода и так далее.

Например, можно внедрить команду “sleep” и посмотреть, увеличится ли время выполнения (базовое время выполнения скрипта ping.php — около 4 секунд). Если поставить символ &, который говорит, что команда должна выполняться параллельно, то сервер вернет ответ за 5 секунд. А если восьмерки обернуть кавычками, то команда завершится неправильно:

В принципе можно сформировать несколько небольших универсальных векторов, используя команды, которые есть почти в любой ОС типа sleep, и проверять вектора на эксплуатацию. Естественно, для эксплуатации той или иной совместимости надо выполнять нормальные команды, например, “sleep”. Они помогут подтвердить, что уязвимость присутствует. 

Если можно увидеть ответ от сервера, то станет ясно, от какого пользователя выполнялось приложение или скрипт. Если результат выполнения команды не отображается на странице, речь идет о слепой инъекции. Об исполнении команды можно понять по косвенным признакам:

  • По времени. Для этого используйте функции sleep<), benchmark) и аналогичные.

  • Запрос на внешний сервис и разрешение DNS имени. Попробуйте команды ping, nslookup, dig, whois.

В большинстве случаев выполнение произвольных, но безвредных команд вроде sleep, id, hostname, whoami достаточно для подтверждения критичности уязвимости.

Поиск уязвимости при наличии исходных текстов (White Box)

Если у нас есть доступ к коду, почему бы не проанализировать его? 

Абсолютно во всех языках программирования есть функции, которые отвечают за вызов командной оболочки или за исполнение стороннего кода. У всех этих функций, что хорошо, имеются говорящие названия: exec, system, start. Поэтому, даже не имея навыков разработки на определенном языке программирования, можно поискать функции с говорящими названиями и, возможно, это будет иметь успех.

Инструменты

При наличии исходных текстов уязвимость можно обнаружить поиском небезопасных функций, специфичных для данного языка программирования. Здесь помогут даже grep или notepad++

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

Анализаторы кода

  • Checkmarx;

  • Cppcheck для C++ и C;

  • Rats, который работает типа «грепалки»;

  • RIPS – крутой анализатор для PHP (сейчас есть в платном и бесплатном варианте);

  • Findbugs для языка Java;

  • GREP

  • Много их…

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

Исправление и предотвращение внедрения команд

Весь пользовательский ввод или любые данные, которые приходят из не доверенных источников, мы должны обрабатывать, и эти данные должны проходить валидацию

Символы, которые необходимо фильтровать: <>&*’!-?; []А~! . » % @ ‘

Во всех языках программирования и фреймворках есть специальные функции, которые позволяют безопасно выполнять те или иные команды, например, ProcessBuilder в Java. Для построения команды эти функции должны использоваться обязательно.

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

Также желательно, чтобы веб-приложение и его компоненты работали по принципу наименьших привилегий. То есть если мы запускаем наше приложение от root, не стоит потом говорить, что жизнь не очень легка. Если даже злоумышленник найдет уязвимость, проэксплуатирует ее и получит доступ к серверу, нужно, чтобы он потратил еще уйму времени и несколько раз просигнализировал о себе. Чтобы мы смогли его обнаружить и закрыть ту или иную дыру.

Посмотрим теперь на другой вид инъекций.

SQL-инъекции

В общем смысле с помощью SQL-инъекции злоумышленник может контролировать запросы, которые приложение выполняет в базе данных. Инъекция возникает, когда приложение подставляет неотфильтрованные данные из запроса пользователя (например GET/POSТ параметры, HTTP заголовки) в запрос к базе данных без какой-либо обработки.

Это позволяет злоумышленнику внедрить свой стиль команды, изменить логику SQL запроса и таким образом получить доступ к чувствительным данным, хранящимся в БД, например: данным пользователей, платежным данным, сохраненным паролям, если они лежат не в зашифрованном виде.

В ряде случаев злоумышленник может не только получить данные, но изменить и удалить их, а также — более редкий кейс, но тоже бывает — выполнить код на уровне ОС. Здесь злоумышленник может развить атаку и скомпрометировать весь сервер или другие объекты инфраструктуры.

Как выглядит уязвимость?

Представим, что у нас есть таблица “Users”для двух пользователей (Боба и Алисы), а также скрипт, который получает от клиента идентификатор userid и выводит имя пользователя по этому значению:

Скрипт возвращает «Bob», потому что у Боба userid=1. И вроде бы код хорош, но это не так, так как он уязвим по SQL-инъекции. Итоговый SQL запрос имеет следующий вид:

Так как 1 подставляется как есть, то можно передать туда какой-то текст. Если коде нет ни санитизации, ни фильтрации пользовательского ввода, то значение GET-параметра id попадет в $sqlQuery как есть. Для эксплуатации злоумышленник должен изменить значение параметра id так, чтобы он содержал вредоносный SQL-код для исполнения. 

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

После получения логин и пароль вставляются как есть в SQL запрос к БД. Если запрос будет валидным, то он исполнится, как и должен был. Но если попытаться найти Боба с паролем куча единиц, то получим ошибку, потому что такого пароля нет. И это место для SQL-инъекции.

Как можно использовать эту уязвимость? Например, отправить в качестве логина admin’ и знак комментария:

Благодаря одинарной кавычке запрос закроется раньше, чем это предполагалось. Двойной дефис в MySQL является комментарием, то есть эту часть запроса СУБД при исполнении просто отбросит, а там была проверка пароля. Запрос выполнится успешно и приложение нас пропустит.

Некоторые разновидности SQL-инъекций 

UNION BASED

Способ основан на использовании оператора UNION. Предположим, в приложении присутствует две таблицы — статьи (Articles) и пользователи (Users). SQL-инъекция присутствует в запросе к таблице Articles, при этом необходимо извлечь данные из таблицы Users. В этом случае поможет применение SQL-оператора UNION, который объединяет два запроса в один. Важное правило — количество колонок в обоих запросах должно совпадать.

Как это происходит на практике. Представим, что первый запрос содержит 4 столбца. Попытка UNION с запросом из трех столбцов будет неудачна, поскольку БД вернет ошибку. Если Debug Mode включен, мы можем эту ошибку даже увидеть. Но объединение четырех колонок слева и четырех справа будет успешным.

Если колонок в таблице пользователей меньше, можно добавить их с помощью констант, написав 1, 2, 3 и т.д. Или же придётся из таблицы пользователей выбирать нужные колонки.

 ERROR BASED

Этот способ основан на эксплуатации того, что ошибка в SQL-запросе попадает в содержимое HTML-страницы. То есть мы видим ошибку, которая происходит в нашей СУБД.

В MySQL существует функция extroctvolue(), которая ожидает в качестве аргумента данные в XML представлении, иначе она выбрасывает ошибку. Нетрудно догадаться, что этим можно воспользоваться. Если передать туда невалидные данные, она выполнит запрос и можно будет увидеть версию системы, на которой крутится СУБД. Или пользователя, от имени которого выполняется запрос в СУБД.

TIME BASED

Наверное, это самый интересный способ, который основан на времени исполнения запроса. Он применяется, если инъекция «слепая» и на страницу ничего не выводится. То есть можно только по косвенным признакам понять, что там существует SQL-инъекция. Для этого можно воспользоваться функциями:

  • sleep() — запрос выполняется долго, как и при использовании обычной консоль-утилиты sleep в Bash;

  • benchmark() — что-то выполняет очень много раз, например, может считать миллион раз MD5 от 1. 

Также можно использовать конструкции вида: 

IF(expr1,expr2,expr3) - ЕСЛИ «ехрг1» ИСТИНА, то выполни «ехрг2», ИНАЧЕ «ехргЗ»

Таким образом можно подбирать логин пользователя по букве. Например,  если поставить первую букву «А» и запрос не уснет на 10 с, то значит, буква не «А», и т.д., пока запрос не уснет. Как только мы угадаем первую букву пользователя, запрос подвиснет на 10 с.

При этом такую рутину можно автоматизировать утилитой SQLMAP.

Инструменты

SQLMAP поддерживает большинство техник эксплуатации и умеет обходить WAF. У нее автоматическая выгрузка дампа БД, если она найдет уязвимые места SQL-инъекции. Обычно мы должны ей указать какой-то параметр, который по нашему мнению может быть уязвим.

С ее помощью можно выполнять команды (RCE), и она может работать с запросом из Burp. И при этом не нужно вручную составлять все атрибуты командной строки.

Исправление и предотвращение SQL-инъекций

Мы можем использовать:

  1. Параметризированные запросы, когда запросы готовятся заранее, и мы им потом «скармливаем» наши данные;

  2. ORM — она сделает всё за нас, и нам не нужно будет беспокоиться;

  3. Query-билдеры, то есть составители запросов, которые нам предоставляют фреймворки. PHP-фреймворки этим богаты, такие как Symfony, Laravel и Spring. На выходе получается производительность обычных запросов. 

В следующей статье рассказ будет про Cross Site Request forgery (CSRF), XSS (Cross Site Scripting или межсайтовый скриптинг) и  XXE: XML External Entity Processing.

FrontendConf 2021 — это два дня интересных докладов, ярких встреч и много-много нетворкинга. Расписание. Билеты. Доклады.

Встречаемся 11-12 октября в Москве!

Ниже вы найдете обновленное руководство о том, как SEO-специалисты, профессионалы контекстной рекламы и эксперты по цифровому маркетингу могут использовать краулер Screaming Frog (также называемый поисковым роботом, пауком или ботом) для оптимизации своего рабочего процесса.

Оглавление статьи

  • 1 Основы краулинга
    • 1.1 Как сканировать весь сайт
    • 1.2 Как сканировать один подкаталог
    • 1.3 Как сканировать определенный набор поддоменов или подкаталогов
    • 1.4 Я хочу получить список всех страниц моего сайта
    • 1.5 Я хочу получить список всех страниц в определенном подкаталоге
    • 1.6 Как найти все поддомены на сайте и проверить внутренние ссылки.
    • 1.7 Как сканировать сайт электронной коммерции или другой крупный сайт
    • 1.8 Как сканировать сайт, расположенный на старом сервере — или как просканировать сайт, не положив его
    • 1.9 Как просмотреть сайт, на котором используются файлы cookie
    • 1.10 Как сканировать, используя другой пользовательский агент
    • 1.11 Как сканировать страницы, требующие аутентификации
  • 2 Внутренние ссылки
    • 2.1 Мне нужна информация обо всех внутренних и внешних ссылках на моем сайте (якорный текст, директивы, ссылки на страницу и т.д.).
    • 2.2 Как найти неработающие внутренние ссылки на странице или сайте
    • 2.3 Как найти неработающие исходящие ссылки на странице или сайте (или все исходящие ссылки в целом)
    • 2.4 Как найти ссылки, которые перенаправляются
  • 3 Контент сайта
    • 3.1 Как определить страницы с “тонким” контентом
    • 3.2 Мне нужен список ссылок на изображения на определенной странице
    • 3.3 Как найти изображения, у которых отсутствует alt-текст, или изображения, у которых alt-текст длинный
    • 3.4 Как найти все CSS файлы на моем сайте
    • 3.5 Как найти каждый файл JavaScript на моем сайте
    • 3.6 Как определить все плагины jQuery, используемые на сайте, и на каких страницах они используются
    • 3.7 Как найти, где на сайте внедрен flash
    • 3.8 Как найти все внутренние PDF файлы, на которые есть ссылки на сайте
    • 3.9 Как понять сегментацию контента внутри сайта или группы страниц
    • 3.10 Как найти страницы, на которых есть кнопки поделиться в соцсетях
    • 3.11 Как найти страницы, использующие iframes
    • 3.12 Как найти страницы, содержащие встроенное видео или аудио содержимое
  • 4 Мета-данные и директивы
    • 4.1 Как определить страницы с длинными заголовками, мета-описаниями или URL-адресами
    • 4.2 Как найти дублирующиеся заголовки страниц, мета-описания или URL-адреса
    • 4.3 Как найти дублированный контент и/или URL, которые необходимо переписать/перенаправить/канонизировать
    • 4.4 Как определить все страницы, которые включают мета-директивы, например: nofollow/noindex/noodp/canonical и т.д.
    • 4.5 Как проверить, что мой файл robots.txt работает так, как нужно
    • 4.6 Как найти или проверить разметку Schema или другие микроданные на моем сайте
  • 5 Sitemap
    • 5.1 Как создать XML Sitemap
    • 5.2 Создание карты сайта XML путем загрузки URL-адресов
    • 5.3 Как проверить существующий XML Sitemap
  • 6 Устранение общих неполадок
    • 6.1 Как определить, почему определенные разделы моего сайта не индексируются или не ранжируются
    • 6.2 Как проверить, была ли миграция/редизайн моего сайта успешной
    • 6.3 Как найти медленно загружающиеся страницы на моем сайте
    • 6.4 Как найти вредоносное ПО или спам на моем сайте
  • 7 PPC и аналитика
    • 7.1 Как проверить, что мой код Google Analytics находится на каждой странице или на определенном наборе страниц моего сайта
    • 7.2 Как проверить список PPC URLs в массовом порядке
  • 8 Скраппинг
    • 8.1 Как произвести скраппинг метаданных для списка страниц
    • 8.2 Как найти на сайте все страницы, содержащие определенное посадочное место
  • 9 Переписывание URL
    • 9.1 Как найти и удалить идентификатор сеанса или другие параметры из моих просмотренных URL
    • 9.2 Как переписать URL (например: заменить .com на .co.uk, или писать все URL в нижнем регистре)
  • 10 Исследование ключевых слов
    • 10.1 Как узнать, какие страницы наиболее ценны для моих конкурентов
    • 10.2 Как узнать, какой анкорный текст используют мои конкуренты для внутренней перелинковки
    • 10.3 Как узнать, какие мета ключевые слова (если таковые имеются) добавили мои конкуренты на свои страницы
  • 11 Линкбилдинг
    • 11.1 Как проанализировать список перспективных мест размещения ссылок
    • 11.2 Как найти неработающие ссылки, чтобы использовать их для аутрич-возможностей
    • 11.3 Как проверить мои обратные ссылки и просмотреть анкорный текст
    • 11.4 Я нахожусь в процессе очистки своих обратных ссылок и мне нужно проверить, что ссылки удаляются в соответствии с запросом
    • 11.5 Бонусный раунд
    • 11.6 Как редактировать метаданные
    • 11.7 Как просканировать сайт с JavaScript
  • 12 Просмотр оригинального HTML и рендеринга HTML
    • 12.1 Заключительные замечания

Основы краулинга

Как сканировать весь сайт

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

По умолчанию Screaming Frog сканирует только тот поддомен, который вы указали. Любые дополнительные поддомены, которые встречает паук, будут рассматриваться как внешние ссылки. Для того чтобы просканировать дополнительные поддомены, необходимо изменить настройки в меню Configuration паука. Установив флажок ‘Crawl All Subdomains’, вы убедитесь, что паук просматривает все ссылки на другие поддомены вашего сайта, которые он встречает.

Шаг 1:

Шаг 2:

Кроме того, если вы начинаете поиск из определенной подпапки или подкаталога, но при этом хотите, чтобы Screaming Frog просмотрел весь сайт, установите флажок «Crawl Outside of Start Folder».

По умолчанию SEO Spider настроен на краулинг только той подпапки или поддиректории, из которой вы начинаете сканирование. Если вы хотите сканировать весь сайт и начинать с определенного подкаталога, убедитесь, что в конфигурации установлен режим просмотра за пределами начальной папки.

Профессиональный совет:

Чтобы сэкономить время и дисковое пространство, не забывайте о ресурсах, которые могут не понадобиться в процессе сканирования. Веб-сайты содержат ссылки не только на страницы. Снимите флажки с Изображений, CSS, JavaScript и SWF ресурсов, чтобы уменьшить размер краулинга.

Как сканировать один подкаталог

Если вы хотите ограничить краулинг одной папкой, просто введите URL и нажмите старт, не изменяя никаких настроек по умолчанию. Если вы переписали исходные настройки по умолчанию, сбросьте их в меню ‘File’.

Если вы хотите начать поиск в определенной папке, но продолжить поиск по остальной части поддомена, обязательно выберите «Crawl Outside Of Start Folder» в настройках конфигурации паука перед вводом конкретного начального URL.

Как сканировать определенный набор поддоменов или подкаталогов

Если вы хотите ограничить краулинг определенным набором поддоменов или подкаталогов, вы можете использовать RegEx, чтобы установить эти правила в настройках Include или Exclude в меню Configuration.

Исключение:

В этом примере мы сканировали все страницы на сайте seerinteractive.com, исключая страницы «О сайте» на каждом поддомене.

Шаг 1:

Перейдите в меню Configuration > Exclude (Конфигурация > Исключить); используйте регулярное выражение с подстановочным знаком, чтобы определить URL-адреса или параметры, которые вы хотите исключить.

Шаг 2:

Проверьте регулярное выражение, чтобы убедиться, что оно исключает те страницы, которые вы ожидали исключить, прежде чем начать сканирование:

Включение:

В приведенном ниже примере мы хотели просканировать только подпапку «Команда» на сайте seerinteractive.com. Снова используйте вкладку «Тест» для проверки нескольких URL-адресов и убедитесь, что RegEx правильно настроен для вашего правила включения.

Это отличный способ краулинга по большим сайтам; на самом деле, Screaming Frog рекомендует этот метод, если вам нужно разделить и подчинить себе краулинг по большому домену.

Я хочу получить список всех страниц моего сайта

По умолчанию Screaming Frog настроен на сканирование всех изображений, JavaScript, CSS и флеш-файлов, которые встречаются пауку. Чтобы проверять только HTML, вам нужно снять флажки ‘Check Images’, ‘Check CSS’, ‘Check JavaScript’ и ‘Check SWF’ в меню Spider Configuration.

Запуск паука с этими настройками без галочек, по сути, предоставит вам список всех страниц вашего сайта, на которые ведут внутренние ссылки.

После завершения сканирования перейдите на вкладку ‘Internal’ («Внутренние») и отфильтруйте результаты по «HTML». Нажмите «Экспорт», и вы получите полный список в формате CSV.

Совет профессионала:

Если вы склонны использовать одни и те же настройки для каждого краулинга, Screaming Frog теперь позволяет сохранять параметры конфигурации:

Я хочу получить список всех страниц в определенном подкаталоге

В дополнение к снятию флажков ‘Check Images’, ‘Check CSS’, ‘Check JavaScript’ и ‘Check SWF’, вы также должны снять флажок ‘Check Links Outside Folder’ в настройках конфигурации паука. Запуск паука с этими настройками без галочки даст вам список всех страниц в вашей начальной папке (если они не являются страницами-сиротами) Примечание: страницы-сироты — это страницы, которые не связаны ни с одной другой страницей / разделом сайта, поэтому если пользователь попал на неё, он не сможет перейти с этой страницы на другую.

Как найти все поддомены на сайте и проверить внутренние ссылки.

Существует несколько различных способов найти все поддомены на сайте.

Способ 1:

Используйте Screaming Frog для определения всех поддоменов на данном сайте. Перейдите в раздел Configuration > Spider и убедитесь, что выбрана опция «Crawl all Subdomains». Как и при описанном выше сканировании всего сайта, это поможет сканировать все поддомены, на которые есть ссылки на сайте. Однако это не поможет найти поддомены, которые являются “сиротливыми” или на которые нет ссылок.

Метод 2:

Используйте Google для определения всех проиндексированных поддоменов.

С помощью расширения Scraper Chrome и некоторых операторов расширенного поиска можно найти все индексируемые поддомены для данного домена.

Шаг 1:

Начните с использования оператора поиска site: в Google, чтобы ограничить результаты конкретным доменом. Затем используйте оператор поиска -inurl, чтобы сузить результаты поиска, удалив основной домен. Вы должны увидеть список субдоменов, которые были проиндексированы в Google и не содержат основного домена.

Шаг 2:

Используйте расширение Scraper, чтобы извлечь все результаты в лист Google. Просто щелкните правой кнопкой мыши URL в поисковой выдаче, нажмите «Scrape Similar» и экспортируйте в Google Doc.

Шаг 3:

В Google Doc используйте следующую функцию, чтобы обрезать URL до поддомена:

=LEFT(A2,SEARCH(«/»,A2,9))

По сути, приведенная выше формула должна помочь отсечь любые подкаталоги, страницы или имена файлов в конце сайта. Эта формула, по сути, говорит sheets или Excel возвращать то, что находится слева от косой черты. Начальное число 9 является важным, потому что мы просим начать поиск косой черты после 9-го символа. Это учитывает протокол: https://, длина которого составляет 8 символов.

Дедублируйте список и загрузите его в Screaming Frog в режиме списка — вы можете вставить список доменов вручную, использовать функцию вставки или загрузить CSV.

Способ 3:

Введите URL корневого домена в инструменты, помогающие искать сайты, которые могут существовать на том же IP, или в поисковые системы, созданные специально для поиска поддоменов, например FindSubdomains. Создайте бесплатную учетную запись, чтобы войти в систему и экспортировать список поддоменов. Затем загрузите список в Screaming Frog с помощью режима списка.

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

Как сканировать сайт электронной коммерции или другой крупный сайт

Изначально Screaming Frog не был создан для просмотра сотен тысяч страниц, но благодаря обновлениям он становится все ближе к этому.

В версии 11.0 Screaming Frog позволил пользователям сохранять все данные на диске в базе данных, а не просто хранить их в оперативной памяти. Это впервые открыло возможность обхода очень больших сайтов.

В версии 12.0 краулер автоматически сохраняет данные в базе данных. Это позволяет получить к ним доступ и открыть их с помощью команды «File > Crawls» в меню верхнего уровня — на случай, если вы запаникуете и задумаетесь, куда делась команда open!

Хотя использование базы данных краулинга помогает Screaming Frog лучше управлять большими сканами, это, конечно, не единственный способ краулить большой сайт.

Во-первых, вы можете увеличить объем памяти, выделяемой пауку.

Во-вторых, вы можете разбить краулинг по подкаталогам или сканировать только определенные части сайта с помощью настроек Include/Exclude («Включить/Исключить»).

В-третьих, вы можете отказаться от просмотра изображений, JavaScript, CSS и flash. Отменив выбор этих опций в меню Конфигурация, вы можете сэкономить память, выполняя сканирование только HTML.

Профессиональный совет:

До недавнего времени Screaming Frog SEO Spider мог приостановиться или упасть при просмотре большого сайта. Теперь, когда хранение базы данных установлено по умолчанию, вы можете восстановить краулинг, чтобы продолжить работу с того места, на котором остановились. Кроме того, вы можете получить доступ к URL-адресам, поставленным в очередь. Это может дать вам представление о дополнительных параметрах или правилах, которые необходимо исключить при краулинге большого сайта.

Как сканировать сайт, расположенный на старом сервере — или как просканировать сайт, не положив его

В некоторых случаях старые серверы могут быть не в состоянии обрабатывать стандартное количество запросов URL в секунду. На самом деле, мы рекомендуем на всякий случай включить ограничение на количество URL-адресов для просмотра в секунду, чтобы проявить уважение к серверу сайта. Лучше всего сообщить клиенту о том, что вы планируете провести сканирование сайта, на всякий случай, если у него есть защита от неизвестных пользовательских агентов. С одной стороны, им может понадобиться внести ваш IP или User Agent в белый список до того, как вы пройдете по сайту. Худший сценарий может заключаться в том, что вы посылаете слишком много запросов на сервер и непреднамеренно разрушаете сайт.

Чтобы изменить скорость краулинга, выберите «Speed» в меню «Configuration» и во всплывающем окне выберите максимальное количество потоков, которые должны работать одновременно. В этом же меню вы можете выбрать максимальное количество URL-адресов, запрашиваемых в секунду.

Профессиональный совет:

Если вы обнаружите, что в результате вашей проверки возникает много ошибок сервера, перейдите на вкладку ‘Advanced’ в меню Spider Configuration и увеличьте значение ‘Response Timeout’ и ‘5xx Response Retries’, чтобы получить лучшие результаты.

Как просмотреть сайт, на котором используются файлы cookie

Хотя поисковые боты не принимают cookies, если вы сканируете сайт и вам нужно разрешить cookies, просто выберите ‘Allow Cookies’ во вкладке ‘Advanced’ в меню Spider Configuration.

Как сканировать, используя другой пользовательский агент

Чтобы выполнить поиск с использованием другого агента пользователя, выберите ‘User Agent’ в меню ‘Configuration’, затем выберите поискового бота из выпадающего списка или введите желаемые строки агента пользователя.

Поскольку Google теперь ориентируется на мобильные устройства, попробуйте просмотреть сайт под именем Googlebot Smartphone или измените User-Agent, чтобы он имитировал Googlebot Smartphone. Это важно по двум разным причинам:

  1. Краулинг, имитирующий пользовательский агент Googlebot Smartphone, может помочь определить любые проблемы, возникающие у Google при краулинге и рендеринге содержимого вашего сайта.
  2. Использование модифицированной версии агента Googlebot Smartphone поможет вам отличить ваши краулинги от краулингов Google при анализе журналов сервера.

Как сканировать страницы, требующие аутентификации

Когда паук Screaming Frog наткнется на страницу, защищенную паролем, появится всплывающее окно, в котором вы сможете ввести имя пользователя и пароль.

Аутентификация на основе форм — очень мощная функция, и для ее эффективной работы может потребоваться рендеринг JavaScript. Примечание: Аутентификация на основе форм должна использоваться редко и только опытными пользователями. Краулер запрограммирован на переход по каждой ссылке на странице, поэтому потенциально это может привести к ссылкам на выход из системы, создание сообщений или даже удаление данных.

Чтобы управлять аутентификацией, перейдите в раздел Configuration > Authentication.

Чтобы отключить запросы на аутентификацию, отмените выбор ‘Standards Based Authentication’ в окне ‘Authentication’ в меню Configuration.

Внутренние ссылки

Мне нужна информация обо всех внутренних и внешних ссылках на моем сайте (якорный текст, директивы, ссылки на страницу и т.д.).

Если вам не нужно проверять изображения, JavaScript, flash или CSS на сайте, отмените выбор этих опций в меню Spider Configuration, чтобы сэкономить время обработки и память.

После того как паук закончит проверку, воспользуйтесь меню Bulk Export, чтобы экспортировать CSV ‘All Links’. Это позволит вам получить все местоположения ссылок, а также соответствующий якорный текст, директивы и т.д.

Все ссылки могут быть большим отчетом. Помните об этом при экспорте. Для большого сайта этот экспорт может занять несколько минут.

Чтобы быстро подсчитать количество ссылок на каждой странице, перейдите на вкладку «Internal» и отсортируйте по «Outlinks». Все, что превышает 100, может потребовать пересмотра.

Как найти неработающие внутренние ссылки на странице или сайте

Если вам не нужно проверять изображения, JavaScript, flash или CSS сайта, снимите выделение этих опций в меню конфигурации паука, чтобы сэкономить время обработки и память.

После того как паук закончит сканирование, отсортируйте результаты на вкладке «Internal» по «Status Code». Любые 404, 301 или другие коды статуса будут легко просматриваться.

При нажатии на любой отдельный URL-адрес в результатах сканирования вы увидите изменение информации в нижнем окне программы. Перейдя на вкладку ‘In Links’ в нижнем окне, вы увидите список страниц, которые ссылаются на выбранный URL, а также якорный текст и директивы, используемые в этих ссылках. Вы можете использовать эту функцию для выявления страниц, на которых необходимо обновить внутренние ссылки.

Чтобы экспортировать полный список страниц, содержащих неработающие или перенаправленные ссылки, выберите «Redirection (3xx) In Links» или «Client Error (4xx) In Links» или «Server Error (5xx) In Links» в меню «Advanced Export», и вы получите экспорт данных в формате CSV.

Чтобы экспортировать полный список страниц, содержащих неработающие или перенаправленные ссылки, зайдите в меню Bulk Export. Прокрутите вниз до кодов ответов и просмотрите следующие отчеты:

  • No Response Inlinks (Входящие ссылки без ответа)
  • Redirection (3xx) Inlinks (Перенаправление (3xx) Входящие ссылки)
  • Redirection (JavaScript) Inlinks (Перенаправление (JavaScript) Внутренние ссылки)
  • Redirection (Meta Refresh) Inlinks (Перенаправление (Meta Refresh) Входящие ссылки)
  • Client Error (4xx) Inlinks (Ошибка клиента (4xx) Входящие ссылки)
  • Server Error (5xx) Inlinks (Ошибка сервера (5xx) Ссылки)

Просмотр всех этих отчетов должен дать нам адекватное представление о том, какие внутренние ссылки должны быть обновлены, чтобы они указывали на каноническую версию URL и эффективно распределяли ссылочный капитал.

Как найти неработающие исходящие ссылки на странице или сайте (или все исходящие ссылки в целом)

После удаления выбора ‘Check Images’, ‘Check CSS’, ‘Check JavaScript’ и ‘Check SWF’ в настройках конфигурации паука, убедитесь, что ‘Check External Links’ остается выбранным.

После того как паук закончит сканирование, перейдите на вкладку ‘External’ в верхнем окне, отсортируйте по ‘Status Code’ и вы легко сможете найти URL с кодами состояния, отличными от 200. Если щелкнуть на любом отдельном URL-адресе в результатах сканирования, а затем перейти на вкладку ‘In Links’ в нижнем окне, вы найдете список страниц, которые указывают на выбранный URL-адрес. Вы можете использовать эту функцию для определения страниц, на которых необходимо обновить исходящие ссылки.

Чтобы экспортировать полный список исходящих ссылок, нажмите «Внешние ссылки» на вкладке «Массовый экспорт».

Для получения полного списка всех местоположений и якорного текста исходящих ссылок выберите ‘All Outlinks’ в меню ‘Bulk Export’. Отчет «All Outlinks» будет включать исходящие ссылки на ваши поддомены; если вы хотите исключить ваш домен, перейдите к отчету «External Links», о котором говорилось выше.

Как найти ссылки, которые перенаправляются

После того, как паук закончил сканирование, выберите вкладку ‘Response Codes’ в главном пользовательском интерфейсе и отфильтруйте по Status Code. Поскольку Screaming Frog использует регулярные выражения для поиска, используйте следующие критерии в качестве фильтра: 301|302|307. Это должно дать вам довольно солидный список всех ссылок, которые вернулись с каким-либо перенаправлением, независимо от того, был ли контент постоянно перемещен, найден и перенаправлен, или временно перенаправлен из-за настроек HSTS (это вероятная причина 307 перенаправления в Screaming Frog). Отсортируйте по ‘Status Code’, и вы сможете разбить результаты по типам. Перейдите на вкладку ‘In Links’ в нижнем окне, чтобы просмотреть все страницы, на которых используется перенаправляющая ссылка.

Если вы экспортируете данные непосредственно с этой вкладки, вы увидите только те данные, которые показаны в верхнем окне (исходный URL, код состояния и место, куда перенаправляет ссылка).

Чтобы экспортировать полный список страниц, включающих перенаправляющие ссылки, вам нужно выбрать ‘Redirection (3xx) In Links’ в меню ‘Advanced Export’. В результате вы получите CSV, содержащий расположение всех ваших перенаправленных ссылок. Чтобы показать только внутренние перенаправления, отфильтруйте столбец ‘Destination’ в CSV, чтобы включить только ваш домен.

Совет:

Используйте VLOOKUP между двумя вышеуказанными экспортными файлами, чтобы сопоставить столбцы Source и Destination с окончательным местоположением URL.

Пример формулы:

=VLOOKUP([@Destination],’response_codes_redirection_(3xx).csv’!$A$3:$F$50,6,FALSE)

(Где ‘response_codes_redirection_(3xx).csv’ — CSV файл, содержащий URL перенаправления, а ’50’ — количество строк в этом файле).

Контент сайта

Как определить страницы с “тонким” контентом

После того, как паук закончил сканирование, перейдите на вкладку ‘Internal’, отфильтруйте по HTML, затем прокрутите страницу вправо до столбца ‘Word Count’. Отсортируйте столбец ‘Word Count’ от низкого к высокому, чтобы найти страницы с низким содержанием текста. Вы можете перетащить столбец ‘Word Count’ влево, чтобы лучше сопоставить низкие значения количества слов с соответствующими URL-адресами. Нажмите кнопку «Export» на вкладке «Internal», если вы предпочитаете работать с данными в формате CSV.

Мне нужен список ссылок на изображения на определенной странице

Если вы уже просканировали весь сайт или подкаталог, просто выберите страницу в верхнем окне, затем нажмите на вкладку ‘Image Info’ в нижнем окне, чтобы просмотреть все изображения, которые были найдены на этой странице. Изображения будут перечислены в столбце «To».

Совет профессионала:

Щелкните правой кнопкой мыши на любой записи в нижнем окне, чтобы скопировать или открыть URL-адрес.

Кроме того, вы можете просмотреть изображения на одной странице, выполнив поиск только по этому URL. Убедитесь, что глубина просмотра установлена на ‘1’ в настройках конфигурации паука, затем, когда страница будет просмотрена, перейдите на вкладку ‘Images’, и вы увидите все изображения, которые нашел паук.

Как найти изображения, у которых отсутствует alt-текст, или изображения, у которых alt-текст длинный

Во-первых, вы должны убедиться, что опция ‘Check Images’ выбрана в меню Spider Configuration. После того, как паук закончит поиск, перейдите на вкладку ‘Images’ и отфильтруйте изображения по ‘Missing Alt Text’ или ‘Alt Text Over 100 Characters’. Вы можете найти страницы, на которых находится любое изображение, нажав на вкладку ‘Image Info’ в нижнем окне. Страницы будут перечислены в колонке ‘From’.

Наконец, если вы предпочитаете CSV, используйте меню ‘Bulk Export’ для экспорта ‘All Images’ или ‘Images Missing Alt Text Inlinks’, чтобы увидеть полный список изображений, где они расположены и любой связанный с ними alt text или проблемы с alt text.

Кроме того, используйте правую боковую панель для перехода к разделу «Images»; здесь вы можете легко экспортировать список всех изображений с отсутствующим alt-текстом.

Как найти все CSS файлы на моем сайте

В меню Spider Configuration выберите ‘Crawl’ и ‘Store’ CSS перед просмотром, затем, когда просмотр будет завершен, отфильтруйте результаты во вкладке ‘Internal’ по ‘CSS’.

Как найти каждый файл JavaScript на моем сайте

В меню Spider Configuration выберите ‘Check JavaScript’ перед просмотром, затем, когда просмотр будет завершен, отфильтруйте результаты во вкладке ‘Internal’ по ‘JavaScript’.

Как определить все плагины jQuery, используемые на сайте, и на каких страницах они используются

Во-первых, убедитесь, что опция ‘Check JavaScript’ выбрана в меню Spider Configuration. После того как паук закончит поиск, отфильтруйте вкладку ‘Internal’ по ‘JavaScript’, а затем выполните поиск по ‘jquery’. В результате вы получите список файлов плагинов. При необходимости отсортируйте список по ‘Address’ для более удобного просмотра, затем просмотрите ‘InLinks’ в нижнем окне или экспортируйте данные в CSV, чтобы найти страницы, на которых используется файл. Они будут находиться в колонке ‘From’.

Также вы можете использовать меню ‘Advanced Export’ для экспорта CSV ‘All Links’ и отфильтровать столбец ‘Destination’, чтобы показать только URL-адреса с ‘jquery’.

Профессиональный совет:

Не все плагины jQuery вредны для SEO. Если вы видите, что на сайте используется jQuery, лучше всего убедиться, что контент, который вы хотите проиндексировать, включен в исходный текст страницы и передается при ее загрузке, а не после. Если вы все еще не уверены, погуглите плагин, чтобы получить больше информации о том, как он работает.

Как найти, где на сайте внедрен flash

В меню Spider Configuration выберите ‘Check SWF’ перед началом сканирования, затем, когда сканирование будет завершено, отфильтруйте результаты на вкладке ‘Internal’ по ‘Flash’.

Это становится все более важным для поиска и идентификации содержимого, передаваемого с помощью Flash, и предложения альтернативного кода для этого содержимого. Chrome находится в процессе повсеместного отказа от Flash; это действительно то, что следует использовать для выявления проблем с критическим содержимым и Flash на сайте.

Примечание: Этот метод позволяет найти только файлы .SWF, связанные со страницей. Если Flash подтягивается через JavaScript, вам нужно будет использовать специальный фильтр.

Как найти все внутренние PDF файлы, на которые есть ссылки на сайте

После того, как паук закончил поиск, отфильтруйте результаты во вкладке ‘Internal’ по ‘PDF’.

Как понять сегментацию контента внутри сайта или группы страниц

Если вы хотите найти страницы вашего сайта, содержащие определенный тип контента, установите пользовательский фильтр для отпечатка HTML, уникального для данной страницы. Это нужно сделать *до* запуска паука.

Как найти страницы, на которых есть кнопки поделиться в соцсетях

Чтобы найти страницы, содержащие кнопки поделиться в соцсетях, вам нужно установить пользовательский фильтр перед запуском паука. Чтобы установить пользовательский фильтр, перейдите в меню Конфигурация и нажмите ‘Custom’. Оттуда введите любой фрагмент кода из источника страницы.

В приведенном выше примере я хотел найти страницы, содержащие кнопку Facebook «Мне нравится», поэтому я создал фильтр для facebook.com/plugins/like.php.

Как найти страницы, использующие iframes

Чтобы найти страницы, использующие iframe, установите пользовательский фильтр для <iframe перед запуском паука.

Как найти страницы, содержащие встроенное видео или аудио содержимое

Чтобы найти страницы, содержащие встроенное видео или аудио содержимое, установите пользовательский фильтр для фрагмента кода вставки для Youtube или любого другого медиаплеера, который используется на сайте.

Мета-данные и директивы

Как определить страницы с длинными заголовками, мета-описаниями или URL-адресами

После того, как паук закончил сканирование, перейдите на вкладку ‘Page Titles’ и отфильтруйте их по ‘Over 60 Characters’, чтобы увидеть слишком длинные заголовки страниц. То же самое можно сделать на вкладке ‘Meta Description’ или на вкладке ‘URI’.

Как найти дублирующиеся заголовки страниц, мета-описания или URL-адреса

После того, как паук закончил поиск, перейдите на вкладку ‘Page Titles’, затем отфильтруйте их по ‘Duplicate’. То же самое можно сделать на вкладках ‘Meta Description’ или ‘URI’.

Как найти дублированный контент и/или URL, которые необходимо переписать/перенаправить/канонизировать

После того, как паук закончил поиск, перейдите на вкладку ‘URI’, затем отфильтруйте по ‘Underscores’, ‘Uppercase’ или ‘Non ASCII Characters’ для просмотра URL, которые потенциально могут быть переписаны в более стандартную структуру. Отфильтруйте по ‘Duplicate’ и вы увидите все страницы, которые имеют несколько версий URL. Фильтр по ‘Параметрам’ позволяет увидеть URL-адреса, содержащие параметры.

Кроме того, если вы перейдете на вкладку ‘Internal’, отфильтруете по ‘HTML’ и прокрутите колонку ‘Hash’ в крайнем правом углу, вы увидите уникальную серию букв и цифр для каждой страницы. Если вы нажмете кнопку «Экспорт», вы сможете использовать условное форматирование в Excel, чтобы выделить дублирующиеся значения в этом столбце, что в конечном итоге покажет вам страницы, которые идентичны и требуют внимания.

Как определить все страницы, которые включают мета-директивы, например: nofollow/noindex/noodp/canonical и т.д.

После того, как паук закончил сканирование, перейдите на вкладку ‘Directives’. Чтобы увидеть тип директивы, просто прокрутите страницу вправо и посмотрите, какие столбцы заполнены, или воспользуйтесь фильтром, чтобы найти любой из следующих тегов:

  • index
  • noindex
  • follow
  • nofollow
  • noarchive
  • nosnippet
  • noodp
  • noydir
  • noimageindex
  • notranslate
  • unavailable_after
  • refresh

Как проверить, что мой файл robots.txt работает так, как нужно

По умолчанию, Screaming Frog будет соблюдать инструкции robots.txt. В первую очередь, он будет следовать директивам, сделанным специально для пользовательского агента Screaming Frog. Если нет директив специально для агента пользователя Screaming Frog, то паук будет следовать любым директивам для Googlebot, а если нет специальных директив для Googlebot, то паук будет следовать глобальным директивам для всех агентов пользователя. Паук будет следовать только одному набору директив, поэтому если есть правила, установленные специально для Screaming Frog, он будет следовать только этим правилам, а не правилам для Googlebot или любым глобальным правилам. Если вы хотите заблокировать определенные части сайта от паука, используйте обычный синтаксис robots.txt с агентом пользователя ‘Screaming Frog SEO Spider’. Если вы хотите игнорировать robots.txt, просто выберите эту опцию в настройках конфигурации паука.

Configuration > Robots.txt > Settings

Как найти или проверить разметку Schema или другие микроданные на моем сайте

Чтобы найти каждую страницу, которая содержит разметку Schema или любые другие микроданные, вам необходимо использовать пользовательские фильтры. Просто нажмите на ‘Custom’ → ‘Search’ в меню конфигурации и введите искомый след.

Чтобы найти каждую страницу, содержащую разметку Schema, просто добавьте следующий фрагмент кода в пользовательский фильтр: itemtype=http://schema.org

Чтобы найти определенный тип разметки, вам придется уточнить его. Например, используя пользовательский фильтр для ‘span itemprop=»ratingValue»‘, вы получите все страницы, содержащие разметку Schema для оценок.

Начиная с версии Screaming Frog 11.0, SEO-паук также предлагает нам возможность сканировать, извлекать и проверять структурированные данные непосредственно из краулинга. Проверяйте любые структурированные данные JSON-LD, Microdata или RDFa в соответствии с рекомендациями Schema.org и спецификациями Google в режиме реального времени по мере сканирования. Чтобы получить доступ к инструментам проверки структурированных данных, выберите опции в разделе «Config > Spider > Advanced».

В главном интерфейсе появится вкладка «Структурированные данные» (Structured Data), которая позволяет переключаться между страницами, содержащими структурированные данные, отсутствующими структурированными данными, а также страницами с ошибками проверки или предупреждениями:

Вы также можете экспортировать проблемы со структурированными данными в массовом порядке, посетив раздел «Reports > Structured Data > Validation Errors & Warnings.».

Sitemap

Как создать XML Sitemap

После того, как паук закончил сканирование вашего сайта, нажмите на меню «Sitemaps» и выберите «XML Sitemap».

Открыв настройки конфигурации XML Sitemap, вы сможете включить или исключить страницы по кодам ответа, последним изменениям, приоритету, частоте изменений, изображениям и т.д. По умолчанию Screaming Frog включает только URL-адреса 2xx, но это хорошее правило — всегда перепроверять.

В идеале, ваша XML sitemap должна включать только единственную, предпочтительную (каноническую) версию каждого URL со статусом 200, без параметров или других дублирующих факторов. После внесения всех изменений нажмите кнопку OK. Файл XML sitemap загрузится на ваше устройство, и вы сможете отредактировать соглашение об именовании по своему усмотрению.

Создание карты сайта XML путем загрузки URL-адресов

Вы также можете создать XML sitemap, загрузив URL-адреса из существующего файла или вставив их вручную в Screaming Frog.

Измените «Режим» с «Паук» на «Список» и нажмите на выпадающий список «Загрузить», чтобы выбрать любой из вариантов.

Нажмите кнопку «Старт», и Screaming Frog начнет просматривать загруженные URL-адреса. После того, как URL будут просмотрены, вы будете следовать тому же процессу, что и выше.

Как проверить существующий XML Sitemap

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

Перейдите в меню ‘Mode’ в Screaming Frog и выберите ‘List’. Затем нажмите «Upload» в верхней части экрана, выберите «Download Sitemap» или «Download Sitemap Index», введите URL-адрес карты сайта и начните сканирование. После того как паук закончит сканирование, вы сможете найти любые перенаправления, ошибки 404, дублированные URL и многое другое. Вы можете легко экспортировать выявленные ошибки.

Выявление отсутствующих страниц в XML Sitemap

Вы можете настроить параметры краулинга для обнаружения и сравнения URL-адресов в XML-карте сайта с URL-адресами в краулинге сайта.

Перейдите в ‘Configuration’ -> ‘Spider’ в главной навигации и внизу есть несколько опций для XML sitemaps — автоматическое обнаружение XML sitemaps через файл robots.txt или ручной ввод ссылки XML sitemap в поле. *Важное замечание — если ваш файл robots.txt не содержит надлежащих ссылок назначения на все XML sitemap, которые вы хотите получить, вы должны ввести их вручную.

После обновления настроек краулинга XML Sitemap перейдите к разделу «Crawl Analysis» в навигации, затем нажмите «Configure» и убедитесь, что кнопка Sitemaps отмечена. Сначала необходимо выполнить полное сканирование сайта, затем вернуться в «Crawl Analysis» и нажать кнопку Start.

После завершения Crawl Analysis вы сможете увидеть любые несоответствия, например, URL-адреса, которые были обнаружены в ходе полного обхода сайта и отсутствуют в XML sitemap.

Устранение общих неполадок

Как определить, почему определенные разделы моего сайта не индексируются или не ранжируются

Интересуетесь, почему определенные страницы не индексируются? Во-первых, убедитесь, что они не были случайно помещены в robots.txt или помечены как noindex. Затем необходимо убедиться, что пауки могут добраться до страниц, проверив внутренние ссылки. Страница, на которую нет внутренней ссылки на вашем сайте, часто называется «сиротской”.

Для того чтобы определить все подобные страницы, выполните следующие действия:

  • Перейдите в ‘Configuration’ -> ‘Spider’ в главной навигации, там внизу есть несколько опций для XML sitemap — Автоматическое обнаружение XML sitemap через ваш файл robots.txt или ручной ввод ссылки XML sitemap в поле. *Важное замечание — если ваш файл robots.txt не содержит надлежащих ссылок назначения на все XML sitemap, которые вы хотите получить, вам следует ввести их вручную.
  • Перейдите в раздел ‘Configuration → API Access’ → ‘Google Analytics’ — с помощью API вы можете получить данные аналитики для определенного аккаунта и вида. Чтобы найти страницы-«сироты» из органического поиска, убедитесь, что проведена сегментация по ‘Organic Traffic’
  • Вы также можете зайти в General → ‘Crawl New URLs Discovered In Google Analytics’, если хотите, чтобы URLs, обнаруженные в GA, были включены в полный обход сайта. Если эта функция не включена, вы сможете просматривать новые URL, полученные из GA, только в отчете Orphaned Pages (“сиротским” страницам).
  • Перейдите в раздел ‘Configuration → API Access’ → ‘Google Search Console’ — с помощью API вы можете получить данные GSC для определенного аккаунта и вида. Чтобы найти страницы-«сироты», вы можете искать URL-адреса, получающие клики и впечатления, которые не включены в ваш краулинг.
  • Вы также можете зайти в General → ‘Crawl New URLs Discovered In Google Search Console’, если хотите, чтобы URLs, обнаруженные в GSC, были включены в полный обход сайта. Если эта функция не включена, вы сможете просматривать новые URL-адреса, полученные из GSC, только в отчете Orphaned Pages.
  • Выполните сканирование всего сайта. После завершения обхода перейдите в меню ‘Crawl Analysis –> Start’ и дождитесь его завершения.
  • Просмотрите “сиротские” URL-адреса на каждой из вкладок или экспортируйте все осиротевшие URL-адреса оптом, перейдя в Reports → Orphan Pages.

Если у вас нет доступа к Google Analytics или GSC, вы можете экспортировать список внутренних URL в файл .CSV, используя фильтр ‘HTML’ на вкладке ‘Internal’.

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

Как проверить, была ли миграция/редизайн моего сайта успешной

У @ipullrank есть отличный Whiteboard Friday на эту тему, но общая идея в том, что вы можете использовать Screaming Frog для проверки того, перенаправляются ли старые URL, используя режим ‘List’ для проверки кодов состояния. Если старые URL-адреса выдают 404, то вы будете знать, какие URL-адреса еще нужно перенаправить.

Как найти медленно загружающиеся страницы на моем сайте

После того, как паук закончил сканирование, перейдите на вкладку ‘Response Codes’ и отсортируйте по столбцу ‘Response Time’ от высокого к низкому, чтобы найти страницы, которые могут страдать от низкой скорости загрузки.

Как найти вредоносное ПО или спам на моем сайте

Во-первых, вам нужно определить посадочное место вредоносного ПО или спама. Далее, в меню Конфигурация, нажмите на ‘Custom’ → ‘Search’ и введите посадочное место, которое вы ищете.

Вы можете ввести до 10 различных посадочных мест для каждого сканирования. Наконец, нажмите OK и перейдите к просмотру сайта или списка страниц.

Когда паук закончит сканирование, выберите вкладку «Custom» в верхнем окне, чтобы просмотреть все страницы, содержащие ваши посадочные места. Если вы ввели более одного пользовательского фильтра, вы можете просмотреть каждый из них, изменив фильтр на результатах.

PPC и аналитика

Как проверить, что мой код Google Analytics находится на каждой странице или на определенном наборе страниц моего сайта

Начните с выбора Пользовательских фильтров в разделе Конфигурация.

Определите, что вы хотите искать в фильтрах. Обычно один фильтр показывает страницы, содержащие нужную информацию, а другой — страницы, не содержащие ее. Например, фильтры 1 и 2 обычно представляют собой страницы, содержащие или не содержащие номер UA.

Для примера ниже использован номер UA компании SEER: UA-11852503-1.

Если сайт использует кросс-доменное отслеживание, поскольку он охватывает несколько доменов или субдоменов, возьмите строку кода для кросс-доменного отслеживания и поместите ее в фильтры 3 и 4. Сделайте один фильтр Contains, а другой — Does Not Contain.

Для примера ниже использованы setDomainName’, ‘seerinteractive.com.

Для фильтра 5 попробуйте добавить фрагмент из второй части кода GA. Я был удивлен количеством сайтов, которые отбрасывают вторую часть и сохраняют только верхнюю часть кода.

Для примера ниже использован google-analytics.com/ga.js.

После того как все настройки выполнены, введите URL-адрес в Screaming Frog и нажмите кнопку Start.

Оттуда перейдите на вкладку Custom. Данные, которые отображаются, будут относиться к любому из ваших фильтров. Вы можете быстро проверить данные фильтров на наличие проблем или экспортировать данные из каждого фильтра в CSV для дальнейшего анализа или отправки клиенту.

Как проверить список PPC URLs в массовом порядке

Сохраните ваш список в формате .txt или .csv, затем измените настройки ‘Mode’ на ‘List’.

Затем выберите файл для загрузки и нажмите ‘Start’ или вставьте список вручную в Screaming Frog. Посмотрите код состояния каждой страницы на вкладке «Internal».

Скраппинг

Как произвести скраппинг метаданных для списка страниц

Итак, вы собрали кучу URL, но вам нужно больше информации о них? Установите режим ‘List’, затем загрузите список URL в формате .txt или .csv. После того, как паук закончит работу, вы сможете увидеть коды статуса, исходящие ссылки, количество слов и, конечно же, метаданные для каждой страницы из вашего списка.

Как найти на сайте все страницы, содержащие определенное посадочное место

Сначала вам нужно определить посадочное место. Далее, в меню Конфигурация, нажмите на ‘Custom’ → ‘Search’ или ‘Extraction’ и введите посадочное место, которое вы ищете.

Вы можете ввести до 10 различных посадочных мест для каждого краулинга. Наконец, нажмите OK и приступайте к краулингу сайта или списка страниц. В приведенном ниже примере я хотел найти все страницы, на которых в разделе цен написано «Пожалуйста, позвоните», поэтому я нашел и скопировал HTML-код из источника страницы.

Когда паук закончит краулинг, выберите вкладку «Custom» в верхнем окне, чтобы просмотреть все страницы, содержащие ваше посадочное место. Если вы ввели более одного пользовательского фильтра, вы можете просмотреть каждый из них, изменив фильтр в результатах.

Ниже приведены дополнительные общие посадочные места, которые вы можете соскраппить с веб-сайтов и которые могут быть полезны для вашего SEO-аудита:

  • http://schema.org — Поиск страниц, содержащих schema.org
  • youtube.com/embed/|youtu.be|<video|player.vimeo.com/video/|wistia.(com|net)/embed|sproutvideo.com/embed/|view.vzaar.com|dailymotion.com/embed/|players.brightcove.net/|play.vidyard.com/|kaltura.com/(p|kwidget)/ — Поиск страниц, содержащих видеоконтент.

Профессиональный совет:

Если вы извлекаете данные о продуктах с сайта клиента, вы можете сэкономить себе время, попросив клиента извлечь данные непосредственно из его базы данных. Приведенный выше метод предназначен для сайтов, к которым у вас нет прямого доступа.

Переписывание URL

Как найти и удалить идентификатор сеанса или другие параметры из моих просмотренных URL

Чтобы определить URL с идентификатором сессии или другими параметрами, просто выполните сканирование вашего сайта с настройками по умолчанию. Когда паук закончит работу, перейдите на вкладку «URI» и отфильтруйте «Parameters», чтобы просмотреть все URL-адреса, содержащие параметры.

Чтобы убрать параметры из URL, которые вы сканируете, выберите в меню конфигурации ‘URL Rewriting’, затем на вкладке ‘Remove Parameters’ нажмите ‘Add’, чтобы добавить параметры, которые вы хотите убрать из URL, и нажмите ‘OK’. Вам придется запустить паука снова с этими настройками, чтобы переписывание произошло.

Как переписать URL (например: заменить .com на .co.uk, или писать все URL в нижнем регистре)

Чтобы переписать любой URL, выберите ‘URL Rewriting’ в меню Configuration, затем во вкладке ‘Regex Replace’ нажмите ‘Add’, чтобы добавить RegEx для того, что вы хотите заменить.

После добавления всех необходимых правил вы можете протестировать правила на вкладке ‘Тест’, введя тестовый URL в поле ‘URL before rewriting’. ‘URL after rewriting’ будет автоматически обновлен в соответствии с вашими правилами.

Если вы хотите установить правило, чтобы все URL возвращались в нижнем регистре, просто выберите ‘Lowercase discovered URLs’ на вкладке ‘Options’. Это устранит дублирование URL с заглавными буквами.

Помните, что вам придется запустить паука с этими настройками, чтобы произошло переписывание URL.

Исследование ключевых слов

Как узнать, какие страницы наиболее ценны для моих конкурентов

Как правило, конкуренты пытаются увеличить популярность ссылок и привлечь трафик на свои наиболее ценные страницы, размещая на них внутренние ссылки. Любой SEO-мыслящий конкурент, вероятно, также будет ссылаться на важные страницы из своего блога. Чтобы найти ценные страницы конкурентов, просмотрите их сайт, а затем отсортируйте вкладку «Internal» по столбцу «Inlinks» от наибольшего к наименьшему, чтобы увидеть, на каких страницах больше всего внутренних ссылок.

Чтобы просмотреть страницы, на которые ведут ссылки из блога конкурента, снимите флажок ‘Check links outside folder’ («Проверять ссылки вне папки») в меню «Конфигурация паука» и просмотрите папку/поддомен блога. Затем на вкладке ‘External’ отфильтруйте результаты, используя поиск по URL-адресу основного домена. Прокрутите список вправо и отсортируйте его по колонке ‘Inlinks’, чтобы увидеть, на какие страницы чаще всего ссылаются.

Профессиональный совет:

Перетаскивайте столбцы влево или вправо, чтобы улучшить вид данных.

Как узнать, какой анкорный текст используют мои конкуренты для внутренней перелинковки

В меню ‘Bulk Export’ выберите ‘All Anchor Text’, чтобы экспортировать CSV, содержащий весь анкорный текст на сайте, где он используется и на что он ссылается.

Как узнать, какие мета ключевые слова (если таковые имеются) добавили мои конкуренты на свои страницы

После того, как паук закончил работу, посмотрите на вкладку ‘Meta Keywords’, чтобы увидеть все мета ключевые слова, найденные для каждой страницы. Отсортируйте по столбцу ‘Meta Keyword 1’, чтобы упорядочить список по алфавиту и визуально отделить пустые записи, или просто экспортируйте весь список.

Линкбилдинг

Как проанализировать список перспективных мест размещения ссылок

Если вы провели скраппинг или иным образом составили список URL, которые необходимо проверить, вы можете загрузить и просмотреть их в режиме ‘List’, чтобы собрать больше информации о страницах. Когда паук закончит сканирование, проверьте коды состояния на вкладке «Response Codes» и просмотрите исходящие ссылки, типы ссылок, якорный текст и директивы nofollow на вкладке «Outlinks» в нижнем окне. Это даст вам представление о том, на какие сайты и как ссылаются эти страницы. Чтобы просмотреть вкладку «Outlinks», убедитесь, что интересующий вас URL выбран в верхнем окне.

Конечно, вы захотите использовать пользовательский фильтр, чтобы определить, ссылаются ли эти страницы уже на вас.

Вы также можете экспортировать полный список внешних ссылок, нажав на «All Outlinks» в «Bulk Export Menu». Это не только покажет вам ссылки на внешние сайты, но и покажет все внутренние ссылки на отдельных страницах в вашем списке.

Как найти неработающие ссылки, чтобы использовать их для аутрич-возможностей

Итак, вы нашли сайт, с которого вы хотели бы получить ссылку? Используйте Screaming Frog для поиска битых ссылок на нужной странице или на сайте в целом, затем свяжитесь с владельцем сайта, предложите свой сайт в качестве замены битой ссылки, если это возможно, или просто предложите битую ссылку в знак доброй воли.

Как проверить мои обратные ссылки и просмотреть анкорный текст

Загрузите список обратных ссылок и запустите паука в режиме ‘List’. Затем экспортируйте полный список исходящих ссылок, нажав на ‘All Out Links’ в ‘Advanced Export Menu’. В результате вы получите URL-адреса и якорный текст/alt-текст для всех ссылок на этих страницах. Затем вы можете использовать фильтр в столбце ‘Destination’ в CSV, чтобы определить, есть ли на вашем сайте ссылки и какой якорный текст/alt текст включен.

Я нахожусь в процессе очистки своих обратных ссылок и мне нужно проверить, что ссылки удаляются в соответствии с запросом

Установите пользовательский фильтр, содержащий URL вашего корневого домена, затем загрузите список обратных ссылок и запустите паука в режиме ‘List’. Когда паук закончит сканирование, выберите вкладку ‘Custom’, чтобы просмотреть все страницы, которые все еще ссылаются на вас.

Бонусный раунд

Знаете ли вы, что, щелкнув правой кнопкой мыши на любом URL в верхнем окне результатов, вы можете сделать любое из следующих действий?

  • Скопировать или открыть URL
  • Повторно просканировать URL или удалить его из просмотра
  • Экспортировать информацию об URL, входящие ссылки, исходящие ссылки или информацию об изображении для этой страницы.
  • Проверить индексацию страницы в Google, Bing и Yahoo
  • Проверить обратные ссылки страницы в Majestic, OSE, Ahrefs и Blekko
  • Посмотреть кэшированную версию/дату кэширования страницы
  • Посмотреть более старые версии страницы
  • Проверить валидность HTML страницы
  • Открsnm robots.txt для домена, на котором расположена страница
  • Искать другие домены на том же IP

Аналогично, в нижнем окне, щелкнув правой кнопкой мыши, вы можете:

  • Скопировать или открыть URL-адрес в столбце «To» или «From» для выбранной строки.

Как редактировать метаданные

Режим SERP Mode позволяет просматривать сниппеты поисковой выдачи по устройствам, чтобы наглядно показать, как ваши метаданные будут отображаться в результатах поиска.

  • Загрузите URL, заголовки и метаописания в Screaming Frog с помощью документа .CSV или Excel
  • Если вы уже выполнили сканирование своего сайта, вы можете экспортировать URL-адреса, перейдя в раздел ‘Reports → SERP Summary’. Это позволит легко отформатировать URL-адреса и мета-описания, которые вы хотите повторно загрузить и отредактировать.
  • Mode → SERP → Upload File
  • Редактирование метаданных в Screaming Frog
  • Массовый экспорт обновленных метаданных для отправки непосредственно разработчикам для обновления

Как просканировать сайт с JavaScript

Все чаще сайты строятся с использованием JavaScript-фреймворков, таких как Angular, React и т. д. Google настоятельно рекомендует использовать решение для рендеринга, поскольку Googlebot все еще с трудом справляется с содержимым на javascript. Если вы обнаружили сайт, построенный с использованием javascript, следуйте приведенным ниже инструкциям, чтобы сканировать его.

  • ‘Configuration → Spider → Rendering → JavaScript
  • Измените настройки рендеринга в зависимости от того, что вы ищете. Вы можете настроить время ожидания, размер окна (мобильное, планшетное, настольное и т.д.).
  • Нажмите OK и сканируйте сайт.

В нижней навигации перейдите на вкладку Rendered Page («Рендеринг страницы»), чтобы посмотреть, как отображается страница. Если страница отображается некорректно, проверьте наличие заблокированных ресурсов или увеличьте лимит тайм-аута в настройках конфигурации. Если ни один из этих способов не помогает решить проблему рендеринга страницы, возможно, необходимо выявить более серьезную проблему.

Вы можете просмотреть и экспортировать в массовом порядке все заблокированные ресурсы, которые могут влиять на краулинг и рендеринг вашего сайта, перейдя в раздел ‘Bulk Export’ → ‘Response Codes’.

Просмотр оригинального HTML и рендеринга HTML

Если вы хотите сравнить исходный HTML и рендеринг HTML, чтобы выявить любые несоответствия или убедиться, что важное содержимое находится в DOM, перейдите в ‘Configuration’ → ‘Spider’ -> ‘Advanced’ и нажмите store HTML & store rendered HTML.

В нижнем окне вы сможете увидеть необработанный и преобразованный HTML. Это может помочь выявить проблемы с тем, как ваше содержимое отображается и просматривается краулерами.

Заключительные замечания

В заключение, я надеюсь, что это руководство даст вам лучшее представление о том, что Screaming Frog может сделать для вас. Оно сэкономило мне бесчисленное количество часов, поэтому я надеюсь, что оно поможет и вам!

Кстати, я не связан со Screaming Frog; я просто считаю, что это потрясающий инструмент.

Источник: https://www.seerinteractive.com/blog/screaming-frog-guide/

Сканирование каталогов веб-сайтов и конфиденциальных файлов — одна из важных задач при тестировании вашего сайта. Сканирование необходимо для обнаружения конфиденциальных каталогов или поиска скрытых каталогов на веб-сайте. С помощью нашего инструмента вы можете сканировать и находить такие файлы, как PHP Robots.txt и другую информацию;

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

По этой причине очень важно знать, как найти скрытые файлы на веб-сайте и в каталогах.

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

Что такое сканер каталогов веб-сайтов?

Как найти скрытые страницы на сайте?

Отличная идея — просканировать веб-сайт на наличие скрытых каталогов и файлов (скрытых — это каталоги и файлы, на которые нет ссылок и о которых знает только владелец сайта!) с помощью онлайн-сканера каталогов веб-сайтов. Как минимум, вы можете узнать что-то новое о сайте, просмотреть структуру каталогов сайта, а иногда просто выпадает суперприз — архив сайта или базы данных, резервная копия конфиденциальных документов и т.д.

Что такое каталог сайта?

Это основная папка, в которой хранятся все каталоги и файлы сайта. Именно в эту папку загружается архив с файлами сайта и базой данных. Если вы поместите файлы сайта не в ту папку, вместо сайта будет отображаться ошибка 403.

Средство поиска каталогов помогает найти указанный каталог в системе для файлов, содержащих сообщения (например, в формате XML или JSON). Когда сообщения прочитаны, они могут быть переданы в основной конвейер сообщений, где на них может воздействовать весь спектр фильтров обработки сообщений.

Средство просмотра файлов веб-сайта обычно используется в тех случаях, когда внешнее приложение сбрасывает файлы (возможно, по FTP) в файловую систему, чтобы их можно было проверить, изменить и, возможно, перенаправить через HTTP или JMS.

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

Что могут быть «скрытые файлы»?

В общем случае это могут быть следующие каталоги:

  • Файлы конфигурации проекта, которые создает интегрированная среда разработки (IDE).
  • Специальная конфигурация и файлы конфигурации для данного проекта или технологии.

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

Различные типы сканеров каталогов веб-сайтов

Как просмотреть каталог сайта? Сканеры работают по разным принципам. Есть инструменты для сканирования вашего сайта (и это авторизованные инструменты), а есть и хакерские. С этической точки зрения вы не можете сканировать каталоги других сайтов. Юридически это считается взломом и мошенничеством.

Посмотрим, по какому принципу будут работать разные типы сканеров каталогов.

  • Словарь сканировать сайт на наличие файлов.
  • Сканирование чистым сканером.
  • Сканирование веб-сканером.
  • Сканирование с реализацией библиотеки запросов Python.

Как видите, есть несколько способов сканирования и поиска скрытых файлов на вашем сайте. Вы можете выбрать наиболее удобный для вас или воспользоваться нашим простым инструментом Website Directory Scanner. С помощью нашего бесплатного сканера вы легко сможете просмотреть все директории сайта и найти все скрытые файлы, которые могут стать вашими уязвимыми местами.

Руководство по эффективному использованию нашего сканера каталогов

Если вы хотите найти скрытые страницы на веб-сайте и знаете, как просмотреть список каталогов веб-сайтов, используйте наш инструмент сканера каталогов веб-сайтов.

Это достаточно просто:

  1. Введите URL-адрес веб-сайта, который вы хотите отсканировать, в заполнитель ниже и начните бесплатную пробную версию. Это супербыстро и абсолютно бесплатно;
  2. проанализировать текущий каталог вашего сайта

  3. После этого наш поисковый робот просканирует весь ваш сайт;
  4. проанализировать текущий каталог вашего сайта

  5. Получить отчет об аудите целиком и просмотреть все файлы в каталоге веб-сайта в Интернете.

получить информацию о кодах состояния, коде ответа http и прочем

Вот и все. Так просто выглядит процесс поиска в каталоге веб-сайтов.

Специальные функции нашего сканера каталогов веб-сайтов

Что ж, давайте кратко рассмотрим основные функции нашего сканера каталогов веб-сайтов.

Как только сканирование остановится, вы увидите оценку вашего сайта, количество просканированных страниц и количество страниц в индексе Google. Например, мы просканировали наш сайт sitechecker.pro. Результаты сканирования вы можете увидеть на скриншоте ниже.

Специальные возможности сканера каталогов веб-сайтов

Прокручивая ниже, вы можете увидеть проблемы на уровне сайта. Если на вашем веб-сайте есть скрытые файлы, которые может сканировать наш инструмент, вы также увидите их в этом списке.

Специальные возможности сканера каталогов веб-сайтов 2

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

Это предупреждения, информирующие владельца сайта о том, что можно улучшить. А второстепенные — это уведомления, которые не являются важными предупреждениями.

Специальные возможности сканера каталогов веб-сайтов 3

Так вы можете просмотреть все файлы в каталоге веб-сайта. Это очень просто и не займет у вас много времени. Кроме того, это позволит избежать неприятных ситуаций с доступом к вашему сайту.

Просканируйте каталог своего веб-сайта прямо сейчас!

Sitechecker rating on crozdesk
Sitechecker rating on crowd
Sitechecker rating on capterra

Часто задаваемые вопросы

Что такое каталог веб-сайта?

Веб-каталог – это онлайн-список или каталог веб-сайтов. Также известный как тематический каталог, эти списки представляют собой организованный метод поиска веб-сайтов.

Как получить все файлы с веб-сайта?

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

Что такое фаззер URL?

Это действие по обнаружению, позволяющее обнаружить ресурсы, которые не должны быть общедоступными (например, /backups, /index.php.old, /archive.tgz, /source_code.zip и т.д.).

Является ли фаззинг URL незаконным?

Мы настоятельно рекомендуем вам не запускать программы тестирования на проникновение на чужом сайте без письменного разрешения веб-мастера. Это может иметь для вас нежелательные последствия в зависимости от законов вашей страны о кибербезопасности.

Понравилась статья? Поделить с друзьями:
  • Цитаты как найти друзей
  • Как найти штайнера в лаборатории
  • Как найти где привязана карта
  • Как найти период математики
  • Как найти силу упругости все формулы