Центр оперативного управления информационной безопасностью
Прелюдия к атаке: практика и автоматизация OSINT
1. прелюдия к атаке
Open Source Intelligence в тесте на проникновение
по социальному каналу
Владимир Стыран
Positive Hack Days 2013
2. об авторе
• «I test pens» - hdm
• изучаю психологическую составляющую безопасности
• социальная инженерия
• невербальная коммуникация
• анализ социальных сетей
• в отрасли с 2005 г.
• администратор систем безопасности
• инженер внедрения систем ИБ
• офицер информационной безопасности
• руководитель подразделения аудита ИТ
• руководитель подразделения тестирования систем безопасности
• веду блог, (изредка) записываю подкаст, участвую в организации
UISGCON…
3. содержание
• что такое OSINT и для чего он пентестеру
• low-tech OSINT
• первое знакомство с клиентом
• визуальное наблюдение
• дружественные визиты
• shoulder surfing
• dumpster diving
• high-tech OSINT
• веб-сайты
• инструменты
• продвинутые техники
• систематизация результатов
4. что такое Open Source Intelligence?
• буквально – разведданные, полученные из открытых источников
• по определению US DoD & DNI –
• "produced from publicly available information that is collected, exploited, and
disseminated in a timely manner to an appropriate audience for the purpose of
addressing a specific intelligence requirement."
• не имеет никакого отношения к Open Source Software
• хотя нередко использует подобные инструменты
• не то же самое, что исследование (research)
• имеет более узко-специальное применение
• не дает научных результатов
• поддерживает человека (или группу людей) в принятии решений
5. кто, как и зачем практикует OSINT?
“More prepared equals less nervous.”
- Eric "urbal" Maxwell
6. кто, как и зачем практикует OSINT?
• используется государственными службами, бизнесом и частными
лицами…
• используется как в законных…
• репортерская деятельность
• маркетинговые исследования
• конкурентная разведка
• расследование преступлений
• государственная разведывательная деятельность
• …так и в незаконных целях
• планирование преступлений
• кибер-сталкинг
• промышленный шпионаж
• выводы о секретах на основе обработки открытых данных (inference)
7. OSINT в тестах на проникновение
по каналу передачи данных («классика»)
• формирование и проверка области действия (scope)
• обследование сетевого присутствия во время предпродажной подготовки
• исключение объектов, попавших в скоуп по ошибке клиента
• «не та маска подсети»
• «чужие» веб-сайты
• ошибки в нотации и написании IP-адресов и сетей
• дополнение скоупа объектами, о которых клиент «забыл» или не знает
• пентесты редко заказываются ИТ-подразделениями
• остальные сотрудники не всегда знают обо всех системах
• сбор данных об объектах тестирования
• резюме администраторов и их профили в «рабочих» соцсетях
• форумы сисадминов, вебсайты по обмену экспертизой
• онлайн БД общего пользования: WHOIS, Pastebin, Robtex, Shodan etc.
8. OSINT в тестах на проникновение
по социальному каналу («социальная инженерия»)
“Only amateurs attack machines;
professionals target people.”
- Bruce Schneier
9. OSINT в тестах на проникновение
по социальному каналу («социальная инженерия»)
• установление контекста: что к чему
• сбор информации о продуктах, процессах и местоположении клиента
• выявление ключевых клиентов, партнеров, поставщиков услуг клиента
• предположения об используемых технологиях, вендорах, типах и версиях
программного обеспечения
• сбор контактных данных персонала
• формирование выборки для тестирования (спам это грех)
• демонстрация клиенту рисков компрометации
• моделирование атак
• об этом – подробнее
10. моделирование атак социальной
инженерии
• формирование предлога (pretext)
• интересы, страсти, хобби сотрудников клиента
• использование установленного ранее контекста
• доставка полезного груза (payload)
• адреса эл. почты для «прицельного» фишинга (spear phishing)
• множество адресов эл. почты для обычного фишинга
• номера телефонов для звонков под предлогом
• помним о физике: почтовые ящики, адреса доставки, парковочные места
11. login & password profiling
с использованием личных данных
• логины
• конвенции именования
• <firstname>.<lastname>, <f><lastname>, <l><firstname> etc.
• имена пользователей могут совпадать с адресами эл. почты
• имена содержатся в Интернете, метаданных и пр. открытых источниках
• пароли
• некоторые просто не заморачиваются: Lastname1, Firstname1!
• парольные инспекторы с использованием методов Маркова имеют КПД
69% (10 млрд попыток) – это наивысший результат на сегодня
• знание личных данных пользователей может повысить результат на > 5%
• если пароль составлен на основании личных данных, прирост составит до
30%
12. артефакты OSINT
какую информацию мы ищем?
• основные бизнес-системы
• core banking, billing, product management, SCADA…
• вспомогательные бизнес-системы
• ERP, CRM, self-care, ITSM, IAM/IDM/SSO…
• серверное ПО
• ОС, СУБД, система менеджмента, контроли безопасности
• десктопы
• ОС, офисный пакет, просмотрщик PDF (Penetration Document Format) & Flash,
используется ли Java (например, для клиент-сайда бизнес-систем)
• сеть
• роутеры, брандмауэры, концентраторы VPN…
13. артефакты OSINT
какую информацию мы ищем?
• контактные данные сотрудников
• имена и фамилии
• даты рождения
• занимаемые должности
• телефоны (в т.ч. внутренние)
• адреса электронной почты
• марки, номера, приметы авто
• хобби, сообщества, предпочтения – для составления претекста
• помним о том, что мы моделируем атаку на компанию клиента, а
не его персонал
• об этом подробнее через несколько слайдов
16. ошибки и подводные камни
• сомнительная достоверность результатов
• все полученные факты подлежат проверке (ЛК блог -
http://blog.kaspersky.com/fact-checking/ )
• подмена понятий «конфиденциальности» и «приватности»
• конфиденциальность это секретность информации клиента
• приватность это секретность информации частных лиц
• пентест заказывает организация клиента, аудитор моделирует атаки на
организацию
• частные лица не должны испытывать угрозу от действий аудитора
17. Lo-tech OSINT
• тесное знакомство с бизнесом клиента
• если возможно, станьте «клиентом клиента»
• посещайте отраслевые конференции, выставки, конвенции и т.д.
• участвуйте в жизни отрасли онлайн: группы LinkedIn, форумы, блоги
• визуальное наблюдение: (авто-) прогулки в районе офиса клиента
• выявление поставщиков услуг: пища, уборка, вывоз мусора, ИТ-
поддержка…
• выделенные или излюбленные места парковки авто
• архитектура и система охраны здания
• размещение почтовых ящиков, курьерские службы
18. Lo-tech OSINT
• «дружественные визиты» в офис клиента
• «соискатель»
• «торговый агент»
• перевоплощение
• внимание: представление гос. служащим скорее всего незаконно
• исследование корпоративных досок объявлений
• shoulder surfing
• лаптопы, планшеты, телефоны (для настоящих джедаев)
• кафе, курилки, кофематы вблизи офиса
• инструменты: всолнечные очки, мобильные телефоны…
• dumpster diving
• «озеленение» офиса – вывоз бумажного мусора
19. Hi-tech OSINT
социальные сети
• LinkedIn (3 из 5)
• группы и сообщества, карьерная история,
резюме
• слабый, не-анонимный API, базовые
(бесплатные) возможности ограничены
• Facebook (2 из 5)
• «ручной» поиск в Graph Search, хобби и
предпочтения сотрудников
• поиск по месту работы через публичный API
выключен 4 мая 2013 г.
• Twitter (2 из 5)
• геолокация (если включена), хобби, контакты,
характер деятельности
• редко является «основной» соцсетью
сотрудника
• Google+ (1 из 5)
• широкие возможности обеспечения
приватности, низкая популярность
• VK (2 из 5)
• группы по месту работы (могут
модерироваться), личные данные,
хобби
• очень слабый (в смысле OSINT) API
• Одноклассники (1 из 5)
• «сообщества» по месту работы (не
модерируются)
• низкая популярность в бизнес-среде
• Foursquare (?)
• возможно, комментарии и подсказки
содержат важную информацию
20. Hi-tech OSINT
веб-сайты
• сайты по поиску работы
• резюме, открытие привлекательных вакансий
• подготовка к визитам, поиск открытых вакансий
• корпоративные веб-сайты клиентов
• информация, попавшая на сайт по ошибке или халатности, либо была
выложена «временно»
• «Дамы ЛК поздравляют с 23 февраля!»
• публикуются отчеты, пресс-релизы, новости, блоги, открытые вакансии
• документы в разных форматах (PDF, DOC, XLS etc.) – источник
метаданных (создано в программе…, пользователем…, на ПК с
именем…)
21. Hi-tech OSINT
поисковые системы
• google is your (best) friend
• google dorks
• site:<clientname.ru> ext:pdf «для служебного пользования»
• site:<clientname.ru> ext:pdf «конфиденциально»
• site:<clientname.ru> ext:txt login OR username OR password
• Google Operands Site https://sites.google.com/site/gwebsearcheducation/advanced-operators
• Google Hacking Database http://www.exploit-db.com/google-dorks/
• Johny Long’s Google Hacking book
• «Рассекреченное» на днях руководство NSA по поиску в Интернете
• Untangling the Web http://www.nsa.gov/public_info/_files/Untangling_the_Web.pdf
• facebook graph
• пока что выглядит наивно, но амбиции имеются
22.
23. Hi-tech OSINT
инструменты автоматизации
• theHarvester
• поиск публичных данных при помощи API соцсетей
и поисковиков
• FOCA
• поиск документов при помощи дорков
• извлечение и систематизация метаданных
• Maltego Radium
• коллекция инструментов поиска по различным критериям
• критерии – параметры объектов, методы поиска – трансформы
• трансформы «живут» онлайн или могут добавляться вручную к оффлайн
инсталляции (Canari/Sploitego)
24.
25.
26.
27.
28. (comprehensive) FOCA demo
• DEFCON 18: FOCA2: The FOCA Strikes Back 1/3
• https://www.youtube.com/watch?v=Ou4TRvzYpVk
• DEFCON 18: FOCA2: The FOCA Strikes Back 2/3
• https://www.youtube.com/watch?v=r3K7V4LL8yk
• DEFCON 18: FOCA2: The FOCA Strikes Back 3/3
• https://www.youtube.com/watch?v=Ou4TRvzYpVk
29. (comprehensive) Maltego Radium demo
• Official Maltego tutorials
• http://www.youtube.com/watch?v=3zlbUck_BLk
• [1] - Google's websites
• [2] - Mapping Sony
• [3] - Importing CSVs, spreadsheets
• [4] - Social Networks
• [5] - Writing your own transforms
• [6] - Integrating with SQL DBs
30. Hi-tech OSINT
инструменты автоматизации
• Whois + DNS + AS + … = Robtex.com
• консолидированный ресурс по сетевому OSINT
• Cornell Spider
• поиск данных (в т.ч. по regex) на иске и файловой шаре
• YaCy
• индексирование и поиск данных на HTTP, FTP, SMB серверах
• Shodan
• «компьютерный» поисковик
• cree.py
• извлечение метаданных геолокации из Twitter
31. продвинутые техники
программируемый API
• facebook
• API Explorer https://developers.facebook.com/tools/explorer
• linkedin
• developer APIs https://developer.linkedin.com/apis
• google
• custom search engine http://www.google.com/cse/all
• bing
• search API http://www.bing.com/developers/
• twitter
• developer API https://dev.twitter.com/
• foursquare
• developer API https://dev.twitter.com/
39. продвинутые техники
• написание собственных сценариев
• скриптовый язык, я рекомендую Python
• хотя подойдет любой ОО-язык с поддержкой HTTP & JSON
• Perl is good, but…
• собственные трансформы Maltego
• на любом языке
• интерфейс через стандартный ввод/вывод
• apigee.com – портал в десятки API для разработчиков
43. систематизация результатов
• записные книжки и блокноты
• смартфон
• масса приложений для сохранения заметок
• но обычно хватает «стандартного»
• электронные записные книжки (online)
• Evernote
• недавно был взломан
• MS OneNote
• может работать в т.ч. оффлайн
• Springpad
• неплохо заточен под смартфоны и планшеты
• Google Keep
• не знаю, жив ли еще – вы же знаете Google
44. систематизация результатов
• MS OneNote
• интеграция для снятия скриншотов
• интеграция с MS Office
• экспорт в MHT (MIME HTML)
• разделение «записных книжек» на файловых шарах или SharePoint
• Jarnal – на Java…
• Emacs (в режиме Org-mode) – для членов Совета Ордена джедаев
• Maltego Casefile
• представление и построение связей между артефактами
• может использоваться для организации доказательств
47. TODO
что делать дальше?
• Social-Engineer.Org podcast and newsletter
• http://www.social-engineer.org/se-newsletter/
• When Privacy meets Security: Leveraging personal information for password cracking (Cornell University)
• http://arxiv.org/abs/1304.6584
• Paterva – the makers of Maltego
• https://www.paterva.com/web6/
• Informatica 64 – the makers of FOCA
• http://www.informatica64.com/foca.aspx
• APIgee consoles
• https://apigee.com/console/
• Learn Python at CodeAcademy.com - http://www.codecademy.com/#!/exercises/0
• or at Coursera.org - https://www.coursera.org/course/interactivepython
• Note to self: REMOVE LIXTRACTOR!!!! (done at the time of publishing slides)
• DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO
EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO
NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL DO NO EVIL…