imageСпециалисты по безопасности из компании Foxglove Security сумели объединить несколько уязвимостей операционных систем от Microsoft, самой старой из которых уже 15 лет. Систему из трёх уязвимостей, собранных в одну, назвали «Hot Potato». Эта система позволяет за разумное время поднять привилегии процесса с самого нижнего до системного, и получить тем самым контроль над ОС.

Среди используемых уязвимостей — NTLM relay, атака на протокол аутентификации NT LAN Manager (конкретно HTTP->SMB relay). Другая уязвимость — «NBNS spoofing», позволяющая атакующему настроить поддельные прокси в Web Proxy Auto-Discovery Protocol. Все уязвимости работают в Windows 7, 8, 10, Server 2008 и Server 2012.


Как утилита работает в Windows 7

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

Исследователи взяли за основу своей системы метод 2014 года от Google Project Zero, а затем расширили и дополнили его. Новинкой является метод комбинирования известных уязвимостей между собой.

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

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

Комментарии (14)


  1. prabhu
    24.01.2016 23:27

    Есть где скачать екзешник?


    1. shaman1010
      25.01.2016 02:04
      +2

      А чем тот, что на гите не устраивает?


    1. Exaybachay
      25.01.2016 02:26
      +1

      github.com/foxglovesec/Potato/tree/master/source/Potato/Potato/bin/Release
      Но там только под 32bit, во всяком у меня под Win8 64Bit не работает, на 32 всё ок.


  1. ck80
    25.01.2016 12:39
    +1

    Разве антивирусные лаборатории не должны такие файлы и такое поведение обнаруживать как опасное? Virustotal екзешник вообще никак не определяет. Хотя, судя по новости, уже неделя прошла.


  1. gotch
    25.01.2016 15:39

    Эту атаку системный администратор может пресечь практически при рождении. Возьмем следующий отрывок:

    1. Локальный спуфер имен Netbios (NBNS Spoofer)

    NBNS это протокол, использующий широковещательные пакеты UDP для разрешения имен.

    Нет: на самом деле, широковещательность зависит от типа узла. Узел типа “P” не будет уязвим, но кто их использует, правда?

    Когда вы разрешаете имя, сначала Windows resolver ищет в hosts, потом в DNS, а если и там ничего не находится – то через NBNS.

    Нет: Netbios может быть отключен в свойствах сетевого интерфейса, тогда клиент не будет вообще разрешать имена через Netbios.


  1. gotch
    25.01.2016 15:51

    2. Поддельный WPAD Proxy Server

    В Windows, Internet Explorer по умолчанию попробует автоматически определить настройки прокси-сервера, обратившись к URL wpad/wpad.dat

    Нет: порядок поиска WPAD следующий — 1. DHCP (252 option), 2. DNS A record query/queries, 3. NetBios.
    Определите опцию DHCP 252 на сервере — и вы неуязвимы.


    1. Klukonin
      25.01.2016 23:03

      Воу воу, полегче с неуязвимостью. Никто не мешает пассивно прослушать 252, провести атаку на arp и, затем, подменить ответ DNS, представившись прокси сервером.
      Просто, атака слегка усложняется и, возможно, потребуется больше времени.


      1. gotch
        26.01.2016 10:43

        Можно по шагам? Как вы будете подменять ответ DNS? Даже авторы эксплойта это уже не берутся делать, пытаясь подсунуть ископаемый netbios?

        Как вы будете подменять ARP, имея всего лишь пользовательский доступ на рабочей станции? Что будете делать ip dhcp snooping и ip arp inspection?


        1. Klukonin
          26.01.2016 11:38

          Ну, они показали определенный сценарий. А своя голова на что?

          Для подмены ARP совсем не обязательно иметь доступ к машине.
          https://ru.wikipedia.org/wiki/ARP-spoofing

          с DHCP Snooping ничего не буду делать, он абсолютно безразличен в таком случае.

          ARP inspection позволяет только заметить атаку, но пока админ доберется до логов… Да и такой защитой заморачиваются единицы.

          С DNS все просто до боли. Опцией 252 передается FQDN. Предположу что запись для него в hosts на клиентской машине отсутствует, иначе какой смысл передавать в таком виде, можно сразу адрес передать, правда?
          Клиент лезет резолвить адрес прокси, я подменяю ему IP на свой и он скачивает настройки прокси с моего фиктивного сервера.

          ПРОФИТ!

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

          Можно тут же подключиться от его имени к настоящему прокси и, предположим, весело провести время с использованием sslstrip.
          Сценарии зависят от целей. Ночью можно зайти на его машину и попытать счастья с mimikatz. Если повезет — у нас будет еще и админский пароль.
          Конечно, в реальности будут дополнительные шаги. Но никакие настройки DHCP вас не спасут. Это надо четко понимать.


          1. gotch
            26.01.2016 12:52

            У вас ничего нет кроме неадминистративной консоли на локальной машине.

            Если же вы обосновались где-то в сети, то DHCP snooping не даст вам выставить на порту вручную адрес. Arp inspection не даст вам изменить IP адрес после выдачи его DHCP на произвольный.

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


            1. Klukonin
              26.01.2016 13:05

              Вы пытаетесь выдать желаемое за действительное.

              Я получаю абсолютно нормально адрес через DHCP. вместе с ним и получаю все опции.
              ARP inspection — технология ПАССИВНОГО слежения с протоколом ARP. Если вы знаете способы активного противодействия таким атакам, пожалуйста, указывайте его при рассмотрении общего сценария.

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

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

              Хотел бы почитать как вы собираетесь противодействовать атаке технологией ARP iтspection. и как вообще собираетесь противодействовать. Так же, по шагам, а не в духе «технология X нас надежно защитит, мы в домике».


              1. gotch
                26.01.2016 13:36

                Arp inspection совместно с DHCP snooping в Catalyst превращается в вполне активную технологию.
                1. Получили адрес
                2. Попробовали представиться другим IP адресом, Catalyst отключил порт.


                1. Klukonin
                  26.01.2016 14:15

                  В таком случае, стоило сразу указать что вы имеете в виду коммутаторы Cisco и технологию Dynamic ARP Inspection, работающую только при включенном DHCP Snooping.

                  И нужно так же уточнить, что никаких сторонних промежуточных коммутаторов нет.

                  Будем переходить к логичному продолжению с ICMP Redirect или примем что ICMP отключен абсолютно на всех машинах? =)


                  1. gotch
                    26.01.2016 14:35

                    Давайте перейдем к ICMP Redirect, расширьте мой кругозор.
                    В Windows Firewall по умолчанию прием этих пакетов запрещен. Не будем же мы отключать Firewall.