Эта статья предназначена для тех, кто либо вовсе не слышал о Shodan, либо слышал, но так и не понял, как им пользоваться. Подобных материалов на русском языке я не нашел, часть информации почерпнул тут, остальное добавил из личного опыта. Я приведу примеры использования «самого страшного поисковика интернета» по имени Shodan. Сервис разработан web-девелопером Джоном Мазерли (John Matherly) и ориентирован, прежде всего, на поиск устройств подключенных к интернету.
Shodan опрашивает порты устройств и на основе полученных ответных баннеров делает выводы об устройствах и сервисах. Поисковик платный, годовая подписка обойдется в 20$, однако, попробовать его в действии можно и за так: после бесплатной регистрации доступно 50 результатов поиска. Историю создания и биографию автора найдете сами, если будет интересно, а пока перейдем к делу:
Фильтры
Результаты поиска можно фильтровать с помощью следующих конструкций:
- country: страна, в формате RU, UK, US и т.д., например: nginx country:RU
- city: город, например: nginx city:«Moscow» country:RU
- os: операционная система, например: microsoft-iis os:«windows 2003»
- port: порт в формате 21, 80, 443 и тд, например: proftpd port:21
- hostname: позволяет искать с учетом домена, например: nginx hostname:.de
Пример 1: Устройства Cisco
Для того, чтобы понять первый пример необходимо вспомнить, как основные коды HTTP-ответов:
Коды состояния HTTP:
- 200 OK Request succeeded;
- 301 MovedPermanently Assigned a new permanentURI;
- 302 FoundResides under a different URI;
- 401 Unauthorized Request requires authentication;
- 403 ForbiddenRequest is denied regardlessof authentication.
В данном примере мы попробуем найти устройства-cisco с web-интерфейсом для доступа к которым не требуется авторизация.
Для начала посмотрим, как выглядит типичный «401 Unauthorized» баннер устройства-cisco, если в строке поиска мы введем просто «cisco»:
HTTP/1.0 401 Unauthorized
Date: Thu, 20 Oct 1994 05:18:36 GMT
Server: cisco-IOS
Connection: close
Accept-Ranges: none
WWW-Authenticate: Basic realm=«level_15_access»
Обратите внимание, что строка «WWW-Authenticate: Basic realm=»level_15_access» указывает на необходимость ввести логин и пароль.
В свою очередь, устройство авторизация в котором не требуется, вернет нам баннер со статусом 200 (для этого в строке поиска вбиваем «200 cisco», еще строка Last-Modified — верный признак, что это «наш клиент»:
HTTP/1.0 200 OK
Date: Mon, 08 Sep 2014 22:28:16 GMT
Server: cisco-IOS
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html
Expires: Mon, 08 Sep 2014 22:28:16 GMT
Last-Modified: Mon, 08 Sep 2014 22:28:16 GMT
Cache-Control: no-store, no-cache, must-revalidate
Accept-Ranges: none
Достаточно перейти по ссылке ip-адрес:80 и мы попадаем в web-консоль управления устройством. Я скачал Cisco SDM для удобства.
Пример 2: Пароли по умолчанию
К интернету подключено множество устройств с дефолтными логинами и паролями, давайте попробуем что-нибудь найти. Для этого в строке поиска пишем «default+password». Добавим также port:80, чтобы выбрать устройства с www-аутентификацией.
В результате мы увидим множество баннеров, содержащих искомую фразу, и, как показывает практика, большой процент устройств будут иметь логин/пароль вида admin/password, admin/pass, и т.д.,
Пример 3: Камеры видеонаблюдения
Если в случае сетевых устройств пользователи в большинстве случаев устанавливают более-менее надежные пароли, то с остальным оборудованием дела обстоят намного хуже. В этом примере мы посмотрим в камеры видеонаблюдения. По работе мне часто приходится сталкиваться с видеорегистраторами фирмы DVR, некоторые из них имеют выход в сеть. Пишем в строке поиска: DVR port:80 country:RU city:«Saint Petersburg» И получаем список видеорегистраторов в СПБ, обнаружилось около 200 устройств.
Стандартные учетные записи на таких устройствах admin и user, пароли: admin, user, 1111, 1234, 123456, 8888 (можно найти в инструкциях). Уже на первой странице устройство со стандартной учетной записью:
Пример 4: Популярные запросы
В разделе Popular Searches, можно подсмотреть варианты запросов, вот, например, поиск ip-видеокамер фирмы avtech на территории США: linux upnp avtech country:US, добавим к нему привычный фильтр port:80:
И снова на первой странице поиска попадается устройство, в котором получилось залогинится с помощью admin/admin:
Итоги
Подводя итоги, хочу лишний раз напомнить всем пользователям: пожалуйста, устанавливайте надежные пароли на ВСЕ устройства подключенные к сети, если у вас в видеорегистраторе или smart-тв нет «секретных» данных это еще не значит, что эти устройства не могут стать целями злоумышленников, пусть даже просто ради развлечения.
Ссылки
http://www.scribd.com/doc/34507835/SHODAN-for-Penetration-Testers-The-Next-HOPE — Презентация с примерами (англ.).
http://vimeo.com/13465839 — Видео по использованию (англ.).
— Твиттер Джона Мазерли
— официальный user guide (англ.)
5 comments On Поиск через Shodan.
Pingback: Атака на IPMI/BMC (KVM over IP) системы. - Cryptoworld ()
Pingback: IPE - софт для анализа информации собраной в процессе пентестов. - Cryptoworld ()
Pingback: Новый хакерский поисковик CENSYS - уроки использования. - Cryptoworld ()
Pingback: Взлом и получение доступа к камерам наблюдения. - Cryptoworld ()
Pingback: Как взломать корпоративную сеть используя бесплатные инструменты. - Cryptoworld ()