Тестирование на проникновение в сетях Microsoft (v.2)

Dmitry Evteev
Dmitry EvteevResearcher
Тестирование на
проникновение в сетях
Microsoft

        Дмитрий Евтеев, Positive Technologies
О чем пойдет речь


   Типовые сценарии успешных атак


   Пост эксплуатация в сетях Microsoft


   Как закрепиться в Microsoft Active Directory
Выбор цели(ей)


   Каталог Microsoft Active Directory

    • Структура леса, расположение объектов…


   Участники домена


   Смежные компоненты инфраструктуры
Сценарий 1: подбор


                               3. Список действующих (!) идентификаторов




   1. Список идентификаторов

             2. Перебор




   3. Верификация доступа;
   перебор действующих идентификаторов
Эффективность сценария по подбору

  Более половины пользователей в Российских
  компаниях используют цифровые пароли
   http://www.ptsecurity.ru/download/PT-Metrics-Passwords-2009.pdf


  Чем больше сотрудников в компании, тем выше
  вероятность успешной атаки
  ПРИМЕР: 1 из 100 при 1.000 = 10, а при 10.000.000 = 100.000




  За последние три года (!) в ходе проведения
  тестирований на проникновение не было ни одного
  случая, когда не удавалось получить список всех
  идентификаторов Active Directory с использованием
  слабостей парольной защиты
В помощь атакующему

  Уязвимости ПО (например, Microsoft Exchange & ISA
  Server)

  Уязвимости конфигураций
   • SMB NUll Session Authentication
   • SMB Use Host SID to Enumerate Local Users without Credentials
   • SMB LsaQueryInformationPolicy Function SID Enumeration
     without Credentials
   http://www.rapid7.com/vulndb/lookup/cifs-nt-0001
   http://metasploit.com/modules/auxiliary/scanner/smb/
Сценарий 2: использование бинарных уязвимостей

  MS08-067, MS09-050…
   • msf, immunity canvas (Agora, White Phosphorus, …)… - autopwn


  Adobe CoolType, Internet Explorer «Aurora»…
   • msf, immunity canvas (VulnDisco SA, …)… - browser autopwn
Сценарий 3: перехват

  MITM, прослушивание открытых протоколов, RDP…

  Понижение уровня проверки
  подлинности, Challenge Spoofing




  Authentication Capture (HTTP NTLM, …)

  Netbios spoofing

  Fake Update, ISR-evilgrade
   http://www.packetstan.com/2011/03/nbns-spoofing-on-your-way-to-world.html
   http://g0tmi1k.blogspot.com/2010/05/script-video-metasploit-fakeupdate-v011.html
   http://www.infobyte.com.ar/
Сценарий 4: Relay-атаки




MS08-068+MS10-046 = FUN UNTIL 2018 / BeEF
http://www.room362.com/blog/2012/2/11/ms08_068-ms10_046-fun-until-2018.html
http://beefproject.com/
Сценарий 5: атака через смежные компоненты
[*] Exploit completed, but no session was created.
msf exploit(servicedesk_db_disclosure) > exploit
[*] Reloading module...
……
[*] ServiceDesk user accounts (algorithm - md5($pass.$salt)): (username:md5hash:salt)
administrator:341b64d880b4de17139812a227bbf58f:1231052863318
……
[*] Active Directory accounts (DOMAINUSERNAME : PASSWORD) :
TESTAdministrator : P@ssw0rd
……
[*] Exploit completed, but no session was created.
msf exploit(servicedesk_db_disclosure) > info

      Name: MnageEngine ServiceDesk database/AD account disclosure
    Module: exploit/multi/http/servicedesk_db_disclosure
   Version: $Revision$
  Platform: Windows
Privileged: Yes
   License: Metasploit Framework License (BSD)
      Rank: Excellent
Provided by:
 PT Research Center
 Yuri Goltsev <ygoltsev@ptsecurity.ru>
 https://twitter.com/ygoltsev
Сценарий N…
  Общие ресурсы (shares, sps, ftp, etc), атака на сервера
  резервного копирования, атака на сервера управления
  виртуальными серверами, атака через терминальные
  сервера (& over сетевое оборудование), целевые атаки
  на компьютеры администраторов и пользователей
  домена, методы социальной инженерии…
Пост эксплуатация
  Повышение привилегий на системе: MS10-015, MS10-
  046, MS10-048, MS10-059, MS10-073, MS11-011…

  Что смотреть
   Plain   text  pwd,   SAM,    Password   history,  LSA
   secrets,      Credential      manager,       Protected
   storage, Autologin, Logon sessions, Cached domain
   logon, Wireless, Browsers & Other programs

  Чем смотреть
   Cain                                               &
   Abel, fgdump, PWDumpX, gsecdump, carrot, mimikatz, n
   tds_dump_hash, passcape, lsadump...

  Password hashes dump tools
   Bernardo Damele A. G.
   https://docs.google.com/spreadsheet/ccc?key=0Ak-
   eXPencMnydGhwR1VvamhlNEljVHlJdVkxZ2RIaWc#gid=0
Пост эксплуатация: повышение привилегий в домене



   Самый простой путь – найти администратора
   домена!

http://devteev.blogspot.com/2011/03/1-microsoft.html
Пост эксплуатация: Incognito (MS09-012?)
Пост эксплуатация: Pass-the-hash
Пост эксплуатация: Pass-the-Pass 




     http://blog.gentilkiwi.com/mimikatz
     http://www.ampliasecurity.com/research/wcefaq.html
И тут приходит админ…
Как спрятаться в Microsoft Active Directory

   Хранить идентификатор «правильного»
   пользователя в одном контейнере с большим
   скоплением других идентификаторов
   (идентификатором может быть не только
   пользователь домена!)
   Идентификатор «правильного» пользователя
   не должен непосредственно являться членом
   групп с расширенными привилегиями
   Разумно не «светить» идентификатор
   «правильного» пользователя даже в списках
   контроля доступа у групп с расширенными
   привилегиями
Как спрятаться в Microsoft Active Directory

   Как это работает?
Как спрятаться в Microsoft Active Directory

   Как это выглядит?
Как спрятаться в Microsoft Active Directory

   Некоторые тонкости
     • Объект AdminSDHolder и процесс SDPROP

     http://technet.microsoft.com/en-us/query/ee361593

   Практическая реализация
     1. Завести неприметного пользователя;

     2. Разрешить этому пользователю изменять список
     участников группы «BuiltinTerminal Server License Servers»;

     3. Разрешить группе «BuiltinTerminal Server License Servers»
     изменять список участников объекта
     CN=AdminSDHolder,CN=System,<defaultNamingContext>.

     http://devteev.blogspot.com/2011/02/backdoor-active-directory.html
     http://devteev.blogspot.com/2012/03/backdoor-active-directory-iii.html
Как закрепиться в Microsoft Active Directory

   Чего хочется на самом деле?


   Встроенные возможности сокрытия
   объектов Active Directory
   «showInAdvancedViewOnly»
Как закрепиться в Microsoft Active Directory

   Идея раз, идея два…
   Администратору будет вполне комфортно
   быть участником только одной группы
   скопления других администраторов
   Идентификатор пользователя может
   содержать множество символов из таблицы
   юникода (!)
Как закрепиться в Microsoft Active Directory

   Как это выглядит?
Как закрепиться в Microsoft Active Directory

   Как это использовать?
Как закрепиться в Microsoft Active Directory

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

     2. Создать идентичную организационную единицу используя
     символы юникода;

     3. Создать идентичного пользователя используя символ
     «202E» и добавить его в освободившуюся административную
     группу;

     4. Ограничить доступ к объекту организационной единицы.

     http://devteev.blogspot.com/2012/01/backdoor-active-directory.html
И это все?

   Исследования в этой области продолжаются
   Microsoft Active Directory не единственная система
   для внимания (!), есть и другие:
     389 Directory Server, Apache Directory Server, Lotus
     Domino, Novell eDirectory, OpenLDAP, Oracle
     Directory Server, Red Hat Directory Server…

   и цели могут быть гораздо шире
     Identity & Access Management

   А вообще…
Спасибо за внимание!

devteev@ptsecurity.ru
http://devteev.blogspot.com
https://twitter.com/devteev
1 of 28

More Related Content

What's hot(20)

Услуги PT для банковУслуги PT для банков
Услуги PT для банков
Dmitry Evteev1.7K views
Этичный хакингЭтичный хакинг
Этичный хакинг
Positive Hack Days3.6K views
penetest VS. APTpenetest VS. APT
penetest VS. APT
Dmitry Evteev16K views
Доклад SiteSecureДоклад SiteSecure
Доклад SiteSecure
Positive Hack Days235 views
Анализ уязвимостей ПОАнализ уязвимостей ПО
Анализ уязвимостей ПО
Sergey Borisov4.1K views

Similar to Тестирование на проникновение в сетях Microsoft (v.2)(20)

БезопасностьБезопасность
Безопасность
1С-Битрикс629 views
Безопасность CMSБезопасность CMS
Безопасность CMS
1С-Битрикс3K views
CyberArk 21.10.2014CyberArk 21.10.2014
CyberArk 21.10.2014
DialogueScience1.1K views
безопасностьбезопасность
безопасность
Shoplist370 views
Avanpost idm пацифика 2016Avanpost idm пацифика 2016
Avanpost idm пацифика 2016
Diana Frolova365 views
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)
Dmitry Evteev1.1K views
Database securityDatabase security
Database security
Mikhail Vanin1.4K views
McAfee Encryption 2015McAfee Encryption 2015
McAfee Encryption 2015
Vladyslav Radetsky3K views

More from Dmitry Evteev(17)

WAF наше все?!WAF наше все?!
WAF наше все?!
Dmitry Evteev1K views
Ruscrypto CTF 2010 Full DisclosureRuscrypto CTF 2010 Full Disclosure
Ruscrypto CTF 2010 Full Disclosure
Dmitry Evteev658 views
Penetration testing, What’s this?Penetration testing, What’s this?
Penetration testing, What’s this?
Dmitry Evteev1.7K views

Тестирование на проникновение в сетях Microsoft (v.2)

  • 1. Тестирование на проникновение в сетях Microsoft Дмитрий Евтеев, Positive Technologies
  • 2. О чем пойдет речь Типовые сценарии успешных атак Пост эксплуатация в сетях Microsoft Как закрепиться в Microsoft Active Directory
  • 3. Выбор цели(ей) Каталог Microsoft Active Directory • Структура леса, расположение объектов… Участники домена Смежные компоненты инфраструктуры
  • 4. Сценарий 1: подбор 3. Список действующих (!) идентификаторов 1. Список идентификаторов 2. Перебор 3. Верификация доступа; перебор действующих идентификаторов
  • 5. Эффективность сценария по подбору Более половины пользователей в Российских компаниях используют цифровые пароли http://www.ptsecurity.ru/download/PT-Metrics-Passwords-2009.pdf Чем больше сотрудников в компании, тем выше вероятность успешной атаки ПРИМЕР: 1 из 100 при 1.000 = 10, а при 10.000.000 = 100.000 За последние три года (!) в ходе проведения тестирований на проникновение не было ни одного случая, когда не удавалось получить список всех идентификаторов Active Directory с использованием слабостей парольной защиты
  • 6. В помощь атакующему Уязвимости ПО (например, Microsoft Exchange & ISA Server) Уязвимости конфигураций • SMB NUll Session Authentication • SMB Use Host SID to Enumerate Local Users without Credentials • SMB LsaQueryInformationPolicy Function SID Enumeration without Credentials http://www.rapid7.com/vulndb/lookup/cifs-nt-0001 http://metasploit.com/modules/auxiliary/scanner/smb/
  • 7. Сценарий 2: использование бинарных уязвимостей MS08-067, MS09-050… • msf, immunity canvas (Agora, White Phosphorus, …)… - autopwn Adobe CoolType, Internet Explorer «Aurora»… • msf, immunity canvas (VulnDisco SA, …)… - browser autopwn
  • 8. Сценарий 3: перехват MITM, прослушивание открытых протоколов, RDP… Понижение уровня проверки подлинности, Challenge Spoofing Authentication Capture (HTTP NTLM, …) Netbios spoofing Fake Update, ISR-evilgrade http://www.packetstan.com/2011/03/nbns-spoofing-on-your-way-to-world.html http://g0tmi1k.blogspot.com/2010/05/script-video-metasploit-fakeupdate-v011.html http://www.infobyte.com.ar/
  • 9. Сценарий 4: Relay-атаки MS08-068+MS10-046 = FUN UNTIL 2018 / BeEF http://www.room362.com/blog/2012/2/11/ms08_068-ms10_046-fun-until-2018.html http://beefproject.com/
  • 10. Сценарий 5: атака через смежные компоненты [*] Exploit completed, but no session was created. msf exploit(servicedesk_db_disclosure) > exploit [*] Reloading module... …… [*] ServiceDesk user accounts (algorithm - md5($pass.$salt)): (username:md5hash:salt) administrator:341b64d880b4de17139812a227bbf58f:1231052863318 …… [*] Active Directory accounts (DOMAINUSERNAME : PASSWORD) : TESTAdministrator : P@ssw0rd …… [*] Exploit completed, but no session was created. msf exploit(servicedesk_db_disclosure) > info Name: MnageEngine ServiceDesk database/AD account disclosure Module: exploit/multi/http/servicedesk_db_disclosure Version: $Revision$ Platform: Windows Privileged: Yes License: Metasploit Framework License (BSD) Rank: Excellent Provided by: PT Research Center Yuri Goltsev <ygoltsev@ptsecurity.ru> https://twitter.com/ygoltsev
  • 11. Сценарий N… Общие ресурсы (shares, sps, ftp, etc), атака на сервера резервного копирования, атака на сервера управления виртуальными серверами, атака через терминальные сервера (& over сетевое оборудование), целевые атаки на компьютеры администраторов и пользователей домена, методы социальной инженерии…
  • 12. Пост эксплуатация Повышение привилегий на системе: MS10-015, MS10- 046, MS10-048, MS10-059, MS10-073, MS11-011… Что смотреть Plain text pwd, SAM, Password history, LSA secrets, Credential manager, Protected storage, Autologin, Logon sessions, Cached domain logon, Wireless, Browsers & Other programs Чем смотреть Cain & Abel, fgdump, PWDumpX, gsecdump, carrot, mimikatz, n tds_dump_hash, passcape, lsadump... Password hashes dump tools Bernardo Damele A. G. https://docs.google.com/spreadsheet/ccc?key=0Ak- eXPencMnydGhwR1VvamhlNEljVHlJdVkxZ2RIaWc#gid=0
  • 13. Пост эксплуатация: повышение привилегий в домене Самый простой путь – найти администратора домена! http://devteev.blogspot.com/2011/03/1-microsoft.html
  • 16. Пост эксплуатация: Pass-the-Pass  http://blog.gentilkiwi.com/mimikatz http://www.ampliasecurity.com/research/wcefaq.html
  • 17. И тут приходит админ…
  • 18. Как спрятаться в Microsoft Active Directory Хранить идентификатор «правильного» пользователя в одном контейнере с большим скоплением других идентификаторов (идентификатором может быть не только пользователь домена!) Идентификатор «правильного» пользователя не должен непосредственно являться членом групп с расширенными привилегиями Разумно не «светить» идентификатор «правильного» пользователя даже в списках контроля доступа у групп с расширенными привилегиями
  • 19. Как спрятаться в Microsoft Active Directory Как это работает?
  • 20. Как спрятаться в Microsoft Active Directory Как это выглядит?
  • 21. Как спрятаться в Microsoft Active Directory Некоторые тонкости • Объект AdminSDHolder и процесс SDPROP http://technet.microsoft.com/en-us/query/ee361593 Практическая реализация 1. Завести неприметного пользователя; 2. Разрешить этому пользователю изменять список участников группы «BuiltinTerminal Server License Servers»; 3. Разрешить группе «BuiltinTerminal Server License Servers» изменять список участников объекта CN=AdminSDHolder,CN=System,<defaultNamingContext>. http://devteev.blogspot.com/2011/02/backdoor-active-directory.html http://devteev.blogspot.com/2012/03/backdoor-active-directory-iii.html
  • 22. Как закрепиться в Microsoft Active Directory Чего хочется на самом деле? Встроенные возможности сокрытия объектов Active Directory «showInAdvancedViewOnly»
  • 23. Как закрепиться в Microsoft Active Directory Идея раз, идея два… Администратору будет вполне комфортно быть участником только одной группы скопления других администраторов Идентификатор пользователя может содержать множество символов из таблицы юникода (!)
  • 24. Как закрепиться в Microsoft Active Directory Как это выглядит?
  • 25. Как закрепиться в Microsoft Active Directory Как это использовать?
  • 26. Как закрепиться в Microsoft Active Directory Некоторые тонкости Практическая реализация 1. Выбрать подходящего администратора и удалить его из одной административной группы, оставив его членство в других группах с расширенными привилегиями; 2. Создать идентичную организационную единицу используя символы юникода; 3. Создать идентичного пользователя используя символ «202E» и добавить его в освободившуюся административную группу; 4. Ограничить доступ к объекту организационной единицы. http://devteev.blogspot.com/2012/01/backdoor-active-directory.html
  • 27. И это все? Исследования в этой области продолжаются Microsoft Active Directory не единственная система для внимания (!), есть и другие: 389 Directory Server, Apache Directory Server, Lotus Domino, Novell eDirectory, OpenLDAP, Oracle Directory Server, Red Hat Directory Server… и цели могут быть гораздо шире Identity & Access Management А вообще…