company_banner

Shodan — темный близнец Google


    Источник
    S in IoT stands for Security
    Про Shodan уже не раз писали, в том числе и здесь. Я хочу предложить еще раз пробежаться по возможностям этого замечательного инструмента и принципам его работы. Сразу хочу оговориться, ситуация с этим поисковиком вполне классическая для исследователей в области информационной безопасности — инструмент может использоваться как с благими намерениями, так и сильно за чертой закона.

    Disclamer:
    Использование самого поисковика не является чем-то наказуемым. Успешный вход в незакрытую панель управления узла нефтяного терминала где-то в Сингапуре и эксперименты с открыванием заслонок — уже наказуемы. Могут прийти и постучаться недружелюбные люди. Поэтому будьте благоразумны и уважайте чужое пространство. Мы против применения Shodan для чего-то кроме исследовательских целей или анализа собственных систем.

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

    Люди беспечны


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

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

    Если бы проблема исчерпывалась джуниор-админами и обычными людьми, которым простительна некоторая беспечность и неквалифицированность, то оправдать компании, которые намеренно встраивают бэкдоры в свои железные продукты я просто не могу. Классические примеры — популярные IP-камеры Hikvision и Dahua. Аналогичные истории были и с роутерами D-link, Huawei и прочих производителей.

    А уж с приходом Internet-of-Things, с его «безопасными» подходами к реализации все становится совсем грустно. Тут тебе умные лампочки без паролей, работающие со внешним интернетом по HTTP. Или вообще роботы-пылесосы, которые будут использованы для атаки на вашу внутреннюю инфраструктуру, как это случилось с Dongguan Diqee. Там вообще весело — уязвимости CVE-2018-10987 и CVE-2018-10988 позволяли получить root-права, перехватить управление устройством, подъехать в нужную точку и получить изображение с инфракрасной камеры устройства.


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

    Как работает Shodan


    Все сильно изменилось, когда появился Shodan. Ну ладно, на самом деле все осталось таким же дырявым, но хотя бы появилась возможность оценить масштабы конкретного бедствия и попытаться достучаться до вендора для закрытия уязвимости. Shodan, по сути, это некий гибрид nmap -sV по всему диапазону IPv4 и поисковика результатов. Краулеры скрупулезно сканируют весь Интернет, пробуют подключиться к открытым портами и по fingerprint определяют сервис, который находится за этими портами.


    Пример результата поиска по «vuln:cve-2014-0160».

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

    Данные по каждой записи хранятся в структуре, которую разработчики называют banner. Вот как он выглядит:

    {
        "data": "Moxa Nport Device
                Status: Authentication disabled
                Name: NP5232I_4728
                MAC: 00:90:e8:47:10:2d",
        "ip_str": "46.252.132.235",
        "port": 4800,
        "org": "Starhub Mobile",
        "location": {
            "country_code": "SG"
        }
    }

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

    HTTP/1.1 200 OK
    Server: nginx/1.1.19
    Date: Sat, 03 Oct 2015 06:09:24 GMT
    Content-Type: text/html; charset=utf-8
    Content-Length: 6466
    Connection: keep-alive

    Вот так будет выглядеть типичное поле data для HTTP-сервера. Можно увидеть основные параметры и версию.

    Copyright: Original Siemens Equipment
    PLC name: S7_Turbine
    Module type: CPU 313C
    Unknown (129): Boot Loader           A
    Module: 6ES7 313-5BG04-0AB0  v.0.3
    Basic Firmware: v.3.3.8
    Module name: CPU 313C
    Serial number of module: S Q-D9U083642013
    Plant identification: 
    Basic Hardware: 6ES7 313-5BG04-0AB0  v.0.3

    А вот так выглядит куда более необычный промышленный контроллер Siemens S7. Вот на этом этапе уже становится немного страшновато от того, какие устройства могут торчать в интернет и попадать в результаты поиска. С другой стороны, security through obscurity еще никому не помогало.

    Типовой сценарий использования предполагает, что вы даете общий запрос к полю data, после чего уточняете свой поиск многочисленными фильтрами. Формат выглядит запроса выглядит примерно так:

    nuclear reactor filtername1:value filtername2:value filtername3:value
    

    Обратите внимание, что после двоеточия пробел отсутствует. При этом вначале будет произведена выборка всех записей, содержащих «nuclear reactor» в общем поле data, а затем последовательно применены все перечисленные фильтры для сужения объектов поиска.

    Полный список фильтров доступен тут. При этом, некоторая часть доступна только для платных аккаунтов, например «tag» и «vuln».

    Пробуем искать



    Давайте попробуем что-то вроде door controller.


    Чудно. Теперь посмотрим на все HID VertX контроллеры, принадлежащие Spectrum Business.

    door controller org:"Spectrum Business"

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

    Raw data по 70.62.170.218
    Property Name 	Value
    area_code 	null
    asn 	AS10796
    city 	Garfield Heights
    country_code 	US
    country_code3 	null
    country_name 	United States
    data.0._shodan.crawler 	4aca62e44af31a464bdc72210b84546d570e9365
    data.0._shodan.id 	e85c3c1b-54ff-4194-8dc1-311da6851e5d
    data.0._shodan.module 	http
    data.0._shodan.options.referrer 	5ee031c4-75c3-423f-99b8-5c06dd97cf14
    data.0._shodan.ptr 	True
    data.0.data 	
    data.0.domains 	['rr.com']
    data.0.hash 	0
    data.0.hostnames 	['rrcs-70-62-170-218.central.biz.rr.com']
    data.0.http.host 	70.62.170.218
    data.0.http.html 	null
    data.0.http.html_hash 	null
    data.0.http.location 	/
    data.0.http.redirects 	[]
    data.0.http.robots 	null
    data.0.http.robots_hash 	null
    data.0.http.securitytxt 	null
    data.0.http.securitytxt_hash 	null
    data.0.http.server 	null
    data.0.http.sitemap 	null
    data.0.http.sitemap_hash 	null
    data.0.http.title 	null
    data.0.port 	443
    data.0.timestamp 	2020-09-02T15:26:31.443605
    data.0.transport 	tcp
    data.1._shodan.crawler 	4aca62e44af31a464bdc72210b84546d570e9365
    data.1._shodan.id 	458e8be2-04df-4db7-8499-8e378792584e
    data.1._shodan.module 	http
    data.1._shodan.ptr 	True
    data.1.data 	HTTP/1.1 301 Moved Permanently Location: https://70.62.170.218:443/ Content-Length: 0 Date: Wed, 02 Sep 2020 15:26:23 GMT Server: HID-Web
    data.1.domains 	['rr.com']
    data.1.hash 	-788227878
    data.1.hostnames 	['rrcs-70-62-170-218.central.biz.rr.com']
    data.1.http.host 	70.62.170.218
    data.1.http.html 	
    data.1.http.html_hash 	0
    data.1.http.location 	/
    data.1.http.redirects 	[]
    data.1.http.robots 	null
    data.1.http.robots_hash 	null
    data.1.http.securitytxt 	null
    data.1.http.securitytxt_hash 	null
    data.1.http.server 	HID-Web
    data.1.http.sitemap 	null
    data.1.http.sitemap_hash 	null
    data.1.http.title 	null
    data.1.port 	80
    data.1.timestamp 	2020-09-02T15:26:24.253885
    data.1.transport 	tcp
    data.2._shodan.crawler 	70752434fdf0dcec35df6ae02b9703eaae035f7d
    data.2._shodan.id 	b7f280e3-cffc-4ddd-aa4b-1f9cd9e4d2be
    data.2._shodan.module 	vertx-edge
    data.2._shodan.ptr 	True
    data.2.data 	HID VertX/ Edge door controller MAC: 00:06:8E:41:AB:81 Name: EdgeEHS400 Internal IP: 70.62.170.218 Type: EHS400 Firmware Version: 2.1.1.101 Firmware Date: 2018-05-03-11
    data.2.domains 	[]
    data.2.hash 	-764264635
    data.2.hostnames 	[]
    data.2.opts.raw 	646973636f76657265643b3039313b30303a30363a38453a34313a41423a38313b456467654548533430303b37302e36322e3137302e3231383b313b4548533430303b322e312e312e3130313b323031382d30352d30332d31313b
    data.2.port 	4070
    data.2.tags 	['ics']
    data.2.timestamp 	2020-08-26T20:59:09.260224
    data.2.transport 	udp
    data.2.vertx.firmware_data 	2018-05-03-11
    data.2.vertx.firmware_version 	2.1.1.101
    data.2.vertx.internal_ip 	70.62.170.218
    data.2.vertx.mac 	00:06:8E:41:AB:81
    data.2.vertx.name 	EdgeEHS400
    data.2.vertx.type 	EHS400
    data.3._shodan.crawler 	4aca62e44af31a464bdc72210b84546d570e9365
    data.3._shodan.id 	43663d5e-db76-4cba-8f14-6c1bf417ddd3
    data.3._shodan.module 	ntp
    data.3._shodan.ptr 	True
    data.3.data 	NTP protocolversion: 3 stratum: 3 leap: 0 precision: -17 rootdelay: 0.108978271484 rootdisp: 0.162017822266 refid: 1209934681 reftime: 3807379353.45 poll: 3
    data.3.domains 	['rr.com']
    data.3.hash 	-1317347992
    data.3.hostnames 	['rrcs-70-62-170-218.central.biz.rr.com']
    data.3.opts.raw 	1c0303ef00001be60000297a481e2359e2efff9972f64603e2f0016cc6b1f800e2f0016ceef1bb83e2f0016cef0fb34d
    data.3.port 	123
    data.3.timestamp 	2020-08-25T21:30:20.877776
    data.3.transport 	udp
    dma_code 	510
    domains 	['rr.com']
    hostnames 	['rrcs-70-62-170-218.central.biz.rr.com']
    ip 	1178512090
    ip_str 	70.62.170.218
    isp 	Spectrum Business
    last_update 	2020-09-02T15:26:31.443605
    latitude 	41.4344
    longitude 	-81.6373
    org 	Spectrum Business
    os 	null
    ports 	[80, 123, 443, 4070]
    postal_code 	null
    region_code 	OH
    tags 	['ics']
    


    Что еще интересного можно найти


    На самом деле, чего только уже не находили. И управление турбинами ГЭС, и контроллер управления системами охлаждения муниципального ледового катка. Вот несколько интересных и относительно безобидных вариантов.



    "Server: Prismview Player"

    Показывает уличные рекламные панели. И вечно датчики температуры демонстрируют абсолютный ноль.


    http.title:"Tesla PowerPack System" http.component:"d3" -ga3ca4f2

    Показывает текущий статус Tesla PowerPack.

    Интернет не самое безопасное место


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

    1. Если устройство может работать в оффлайне — не выставляйте его в Интернет
    2. Если очень надо выставить устройство в Интернет, не надо пробрасывать к нему доступ напрямую. Используйте VPN для подключения к своей сети
    3. Если уж нужен публичный доступ — закрывайте панели управления паролями
    4. Не забывайте своевременно обновлять устройства и закрывать уязвимости
    5. Помните, что даже холодильник или телевизор может быть ключевым звеном в атаке на вашу сеть и устройства

    RUVDS.com
    VDS/VPS-хостинг. Скидка 10% по коду HABR

    Comments 31

      –7
      Использование самого поисковика не является чем-то наказуемым.

      Писательница из Лонг-Айленда, штат Нью-Йорк, была крайне удивлена, когда к ней домой нагрянули представители правоохранительных органов. Оказалось, что их визит был связан с поисковыми запросами в Google о скороварках и рюкзаках, которые она и ее муж делали некоторое время назад.
        0
        Всё разумно. Скороварка и рюкзак — известные компоненты для взрывного устройства, которое можно использовать при теракте (Бостон, апрель 2013 — после этих событий копы и нагрянули к журналистке). А визит сотрудников соотв. органов — это не наказание.
          0
          визит это не наказание
          Смотря каких органов, некоторые органы могут и дверь выпилить для начала (тоже денег стоит), а потом ещё всю оргтехнику изъять, в которой есть микропроцессоры, до выяснения обстоятельств.
            0
            Говорят с ними потом можно долго и с удовольствием судиться и даже выиграть.
              0

              Просто речь про разные страны идёт, видимо )

        +2
        The "vuln" filter is only available to academic users or Small Business API subscription and higher.

        Small Business: $299 /month

          +1

          Ну, на что-то же им надо содержать инфраструктуру)

          0

          То ли еще будет, когда начнется ipv6.

            0

            А разве нельзя его NATить? Типа, снаружи всё по шестому протоколу ходит, а внутри всё по-староверски. Иначе, боюсь, машинку-плеер с MS-DOS 6.22 придётся таки апгрейдить каким-то образом :-)
            Хотя даже если NATить — вряд ли кто из "домохозяек" этим будет заморачиваться...

              0
              Можно, но это идиотизм, достаточно на роутере стандартного дропа открытия соединений. Теоретически обходится через STUN и аналоги, но тут и NAT не сильно поможет.
            +3
            Есть один телеграм-канал «Утечки информации» называется, я на него раньше был подписан. Одна наша контора по безопасности поддерживает DeviceLock, в качество своего промо. Они туда каждый день выкладывают что ещё удалось и где найти, чаще всего как раз вот этим Shodan-ом пользуются. От количества и качества утечек, если честно, волосы на жопе шевелятся… Всем советую немного почитать, чтобы избавиться от некоторых иллюзий относительно мира, в котором мы живём.
              0

              Хороший канал, спасибо!

                0
                @dataleak этот что-ли?
                0

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

                –1
                Спасибо за статью, я конечно не настолько наивен чтобы верить в мир во всём мире, Но почему нельзя сделать какой-то скрипт который будет пытаться отослать предупреждение о проблеме с безопасностью владельцам дырявых интернет устройств? Поясню свою мысль: конечно домохозяйки не в состоянии исправить проблемы в сетевых устройствах, но часть таких устройств принадлежит it-компания в которых могут быть достаточно толковые админы способные заткнуть эту дырку. Тут правда непонятно почему достаточно толковые админы до сих пор мне прошоданили свою сеть на предмет выявление дырок но это уже философия…

                  0

                  Здесь мне кажется вопрос о базовых принципах функционирования интернета. Если в этой среде "по умолчанию" принято быть открытым для людей с самым разным техническим уровнем, то всегда будут люди, желающие эксплуатировать эту открытость. Поэтому участники сети должны самостоятельно выработать средства защиты, если делать это за них — вы их ничему не научите (причем есть шанс получить коррумпированный орган, который будет решать — кого уведомлять, а кого нет). Мне кажется, это вопрос времени и регуляции сети: законов, которые будут принуждать сервисы поддерживать определенный уровень безопасности и развитие контролирующих органов.

                    0
                    В некоторых странах так делают на государственном уровне. Например, если откроете беспарольный mongodb на немецком айпишнике, в течение нескольких часов придет письмо от местной киберполиции, с предупреждением и ссылкой на документацию по настройке парольного доступа.
                      0
                      Приятно это слышать, везде бы так делали.
                    0
                    Ни чего нового так то. Умный дом, интерактивное пространство, SMART кофеварки. Хотя по сути все это ерунда. Вот смартфон совсем другое дело! Вот тебе и видео в качестве и GPS и звук, биометрия, финансовые операции, доступ к личным данным. Ломани смарт массово, получишь самую широкую базу знаний о носителях.
                      0
                      Несогласен. Представьте, что в кофеварке или чайнике софтверная кнопка. В автомобиле софтверные педали… в умной ванне софтверные клапаны и краны… короче апокалипсис…
                        0
                        Если так все в цифру вогнать, то да… жутковатая картина
                          0
                          А разве сейчас уже не так? Педали и так софтверные, напрямую дроссельную заслонку нажатие на педаль не регулирует, только через ЭБУ. Краны во многих общественных местах с фоторезисторами — руку подносишь и он открывается.
                        0

                        Очень интересно, спасибо. Действительно, я знал людей, которые панически боялись обновлять свои девайсы, в том числе и девайсы интернета вещей. Мол, страшно, да и зачем? Вот из-за таких интернет и кишит уязвимыми устройствами, серверами и т.п.

                          +2
                          Люди боятся вовсе небезосновательно, потому как любой апдейт — палка о двух концах: «одно лечим — другое калечим». Вероятность получить после обновления какой-нибудь геморрой или вовсе «кирпич» далеко не нулевая. Совсем недавно звонил мне один знакомый и просил помочь в решении проблемы с переставшим работать хотспотом, построенным на машинке с Windows 10 на борту. Случилось это после очередного апдейта винды. Проблема решилась откатом апдейта. Хорошо, что была возможность откатиться, а вот если бы не было — тогда что делать? Да что говорить про других, если даже я однажды наступил на эти грабли: получил труп материнской платы при попытке обновить в ней BIOS. Проблема решилась приобретением второй такой-же матери, выпаиванием с обеих матерей микросхем BIOS, копированием прошивки из рабочей микросхемы в «неисправную» на программаторе и впаиванием микросхем обратно. Как думаете — каждому по силам провернуть такую операцию?
                            0
                            Ну да, с одной стороны имеем неиллюзорную вероятность поиметь проблем из-за кривого обновления, с другой стороны имеем неиллюзорную вероятность поиметь проблем из-за того, что вы вовремя не обновились.
                            Но, как говорится, есть один нюанс. При грамотном подходе, обновление — процесс заранее планируемый и управляемый. Перед тем, как накатывать апдейт, всегда можно почитать профильные форумы пользователей продукта в поисках отзывов о новой версии, изучить как в случае чего восстанавить систему или откатиться на предыдущую версию, сделать бэкап данных и конфигурации и убедиться что он нормально восстанавливается (!), выбрать для обновления время, когда нет срочных и критически важных задач. А вот прилетание зловреда, натыкание на ваш IP авто-бота, набег скрипткидди со сканером, или кого похуже с более плохими намерениями — оно произойдет внезапно. В самый неподходящий момент, когда горят срочные дела, когда неизвестно как что чинить и техподдержка спит, когда не сделан бэкап, а если и сделан, то может быть еще и не восстановится…
                              +1
                              Заметил, что Виндоус 10 покласть на ваше мнение о том, когда можно обновляться, а когда нельзя, и что включается в неизбежные обновления а что нет, и о чём вам сказали, а о чём скрыли, типа системы слежки, которую раз десять выдавали за часть обновления безопасности. Не даром «Мой компьютер» переименовали в «Этот компьютер». :) И для того чтобы хотя бы частично избежать всего этого самоуправства вам потребуется ровно столько же знаний и умений как для того чтобы не допустит зловреда на системах предыдущего поколения.

                              Баланс, чё уж там.
                              0
                              Не понятно, зачем перепаивать биос надо было, если нашли такую же мать? или она тоже не полностью исправна была?
                                0
                                Вторая была исправна и тоже пошла в дело.
                            0
                            Нда, было дело. Из найденного — вебморды 5-ти «вышек» мобильной связи, не скажу где. И коммутаторы Академии Наук не скажу какого гос-ва. Связюки просто закрыли доступ, а Акадэмики кроме закрытия ответили спасибом.
                              0
                              даже без взлома некоторые девайсы, подключенные напрямую к интернету, выдают много приватной информации, к примеру вебкамеры с микрофоном

                              Only users with full accounts can post comments. Log in, please.