Прелюдия к атаке: практика и автоматизация OSINT

Post on 09-Jun-2015

4.099 views 11 download

Tags:

Transcript of Прелюдия к атаке: практика и автоматизация OSINT

прелюдия к атакеOpen Source Intelligence в тесте на проникновение

по социальному каналу

Владимир Стыран

Positive Hack Days 2013

об авторе

• «I test pens» - hdm• изучаю психологическую составляющую безопасности

• социальная инженерия• невербальная коммуникация• анализ социальных сетей

• в отрасли с 2005 г.• администратор систем безопасности• инженер внедрения систем ИБ• офицер информационной безопасности• руководитель подразделения аудита ИТ• руководитель подразделения тестирования систем безопасности

• веду блог, (изредка) записываю подкаст, участвую в организации UISGCON…

содержание

• что такое OSINT и для чего он пентестеру• low-tech OSINT

• первое знакомство с клиентом• визуальное наблюдение• дружественные визиты• shoulder surfing• dumpster diving

• high-tech OSINT• веб-сайты• инструменты• продвинутые техники

• систематизация результатов

что такое 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)• имеет более узко-специальное применение

• не дает научных результатов

• поддерживает человека (или группу людей) в принятии решений

кто, как и зачем практикует OSINT?

“More prepared equals less nervous.”- Eric "urbal" Maxwell

кто, как и зачем практикует OSINT?

• используется государственными службами, бизнесом и частными лицами…

• используется как в законных…• репортерская деятельность• маркетинговые исследования• конкурентная разведка• расследование преступлений• государственная разведывательная деятельность

• …так и в незаконных целях• планирование преступлений• кибер-сталкинг• промышленный шпионаж• выводы о секретах на основе обработки открытых данных (inference)

OSINT в тестах на проникновениепо каналу передачи данных («классика»)

• формирование и проверка области действия (scope)• обследование сетевого присутствия во время предпродажной подготовки• исключение объектов, попавших в скоуп по ошибке клиента

• «не та маска подсети»• «чужие» веб-сайты• ошибки в нотации и написании IP-адресов и сетей

• дополнение скоупа объектами, о которых клиент «забыл» или не знает• пентесты редко заказываются ИТ-подразделениями• остальные сотрудники не всегда знают обо всех системах

• сбор данных об объектах тестирования• резюме администраторов и их профили в «рабочих» соцсетях• форумы сисадминов, вебсайты по обмену экспертизой• онлайн БД общего пользования: WHOIS, Pastebin, Robtex, Shodan etc.

OSINT в тестах на проникновениепо социальному каналу («социальная инженерия»)

“Only amateurs attack machines; professionals target people.”

- Bruce Schneier

OSINT в тестах на проникновениепо социальному каналу («социальная инженерия»)

• установление контекста: что к чему• сбор информации о продуктах, процессах и местоположении клиента

• выявление ключевых клиентов, партнеров, поставщиков услуг клиента

• предположения об используемых технологиях, вендорах, типах и версиях программного обеспечения

• сбор контактных данных персонала• формирование выборки для тестирования (спам это грех)

• демонстрация клиенту рисков компрометации

• моделирование атак• об этом – подробнее

моделирование атак социальной инженерии• формирование предлога (pretext)

• интересы, страсти, хобби сотрудников клиента

• использование установленного ранее контекста

• доставка полезного груза (payload)• адреса эл. почты для «прицельного» фишинга (spear phishing)

• множество адресов эл. почты для обычного фишинга

• номера телефонов для звонков под предлогом

• помним о физике: почтовые ящики, адреса доставки, парковочные места

login & password profilingс использованием личных данных

• логины• конвенции именования

• <firstname>.<lastname>, <f><lastname>, <l><firstname> etc.

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

• пароли• некоторые просто не заморачиваются: Lastname1, Firstname1!• парольные инспекторы с использованием методов Маркова имеют КПД

69% (10 млрд попыток) – это наивысший результат на сегодня• знание личных данных пользователей может повысить результат на > 5%• если пароль составлен на основании личных данных, прирост составит до

30%

артефакты OSINTкакую информацию мы ищем?

• основные бизнес-системы• core banking, billing, product management, SCADA…

• вспомогательные бизнес-системы• ERP, CRM, self-care, ITSM, IAM/IDM/SSO…

• серверное ПО• ОС, СУБД, система менеджмента, контроли безопасности

• десктопы• ОС, офисный пакет, просмотрщик PDF (Penetration Document Format) & Flash,

используется ли Java (например, для клиент-сайда бизнес-систем)

• сеть• роутеры, брандмауэры, концентраторы VPN…

артефакты OSINTкакую информацию мы ищем?

• контактные данные сотрудников• имена и фамилии• даты рождения• занимаемые должности• телефоны (в т.ч. внутренние)• адреса электронной почты• марки, номера, приметы авто

• хобби, сообщества, предпочтения – для составления претекста

• помним о том, что мы моделируем атаку на компанию клиента, а не его персонал• об этом подробнее через несколько слайдов

ошибки и подводные камни

• полное отсутствие OSINT – сразу же заряжаем сканер• чем больше информации вы соберете до перехода в

активную фазу, тем выше эффективность пентеста

• недостаточное усердие: whois, nslookup, и переходим к п. 1• “try harder” ©

• боязнь собрать «слишком много» информации• мозг способен систематизировать бОльшие объемы

данных, чем нам кажется• систематизация данных хорошо автоматизируется (см.

далее)

• останавливаем OSINT как только обнаруживаем зацепку• а рядом пылится дверная ручка незапертой двери

ошибки и подводные камни

• сомнительная достоверность результатов• все полученные факты подлежат проверке (ЛК блог -

http://blog.kaspersky.com/fact-checking/ )

• подмена понятий «конфиденциальности» и «приватности»• конфиденциальность это секретность информации клиента

• приватность это секретность информации частных лиц

• пентест заказывает организация клиента, аудитор моделирует атаки на организацию

• частные лица не должны испытывать угрозу от действий аудитора

Lo-tech OSINT

• тесное знакомство с бизнесом клиента• если возможно, станьте «клиентом клиента»

• посещайте отраслевые конференции, выставки, конвенции и т.д.

• участвуйте в жизни отрасли онлайн: группы LinkedIn, форумы, блоги

• визуальное наблюдение: (авто-) прогулки в районе офиса клиента• выявление поставщиков услуг: пища, уборка, вывоз мусора, ИТ-

поддержка…

• выделенные или излюбленные места парковки авто

• архитектура и система охраны здания

• размещение почтовых ящиков, курьерские службы

Lo-tech OSINT

• «дружественные визиты» в офис клиента• «соискатель»• «торговый агент»• перевоплощение

• внимание: представление гос. служащим скорее всего незаконно

• исследование корпоративных досок объявлений

• shoulder surfing• лаптопы, планшеты, телефоны (для настоящих джедаев)• кафе, курилки, кофематы вблизи офиса• инструменты: всолнечные очки, мобильные телефоны…

• dumpster diving• «озеленение» офиса – вывоз бумажного мусора

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 (?)• возможно, комментарии и подсказки

содержат важную информацию

Hi-tech OSINTвеб-сайты

• сайты по поиску работы• резюме, открытие привлекательных вакансий

• подготовка к визитам, поиск открытых вакансий

• корпоративные веб-сайты клиентов• информация, попавшая на сайт по ошибке или халатности, либо была

выложена «временно»• «Дамы ЛК поздравляют с 23 февраля!»

• публикуются отчеты, пресс-релизы, новости, блоги, открытые вакансии

• документы в разных форматах (PDF, DOC, XLS etc.) – источник метаданных (создано в программе…, пользователем…, на ПК с именем…)

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• пока что выглядит наивно, но амбиции имеются

Hi-tech OSINTинструменты автоматизации

• theHarvester• поиск публичных данных при помощи API соцсетейи поисковиков

• FOCA• поиск документов при помощи дорков• извлечение и систематизация метаданных

• Maltego Radium• коллекция инструментов поиска по различным критериям• критерии – параметры объектов, методы поиска – трансформы• трансформы «живут» онлайн или могут добавляться вручную к оффлайн

инсталляции (Canari/Sploitego)

(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

(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

Hi-tech OSINTинструменты автоматизации

• Whois + DNS + AS + … = Robtex.com• консолидированный ресурс по сетевому OSINT

• Cornell Spider• поиск данных (в т.ч. по regex) на иске и файловой шаре

• YaCy• индексирование и поиск данных на HTTP, FTP, SMB серверах

• Shodan• «компьютерный» поисковик

• cree.py• извлечение метаданных геолокации из Twitter

продвинутые техникипрограммируемый 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/

Facebook API explorer demo

• https://www.youtube.com/watch?v=v2rVGI5wUKg

автоматизация OSINTLinkedIn Extractor

• Custom Search Engine• https://www.googleapis.com/customsearch/v1?key=' + API_KEY + '&cx=' + CX +

'&q=‘ + <company_name>

• search parameters• site:*.linkedin.com OR site:linkedin.com• intitle:” | LinkedIn”• -intitle:profiles -inurl:groups -inurl:company -inurl:title• “at <company_name>”

• success rate• ~ 45-55% - UA & RU companies• ~ 60-65% - English speaking and multinational companies

• R.I.P. Facebook Extractor

Google Custom Search demo

• https://www.youtube.com/watch?v=9WadweZFhVM

продвинутые техники

• написание собственных сценариев• скриптовый язык, я рекомендую Python

• хотя подойдет любой ОО-язык с поддержкой HTTP & JSON• Perl is good, but…

• собственные трансформы Maltego• на любом языке

• интерфейс через стандартный ввод/вывод

• apigee.com – портал в десятки API для разработчиков

apigee.com exampleпоиск паролей WiFi

Apigee + Foursquare demo

• https://www.youtube.com/watch?v=PoQ6nn0CIes

систематизация результатов

• записные книжки и блокноты• смартфон

• масса приложений для сохранения заметок• но обычно хватает «стандартного»

• электронные записные книжки (online)• Evernote

• недавно был взломан• MS OneNote

• может работать в т.ч. оффлайн• Springpad

• неплохо заточен под смартфоны и планшеты• Google Keep

• не знаю, жив ли еще – вы же знаете Google

систематизация результатов

• MS OneNote• интеграция для снятия скриншотов• интеграция с MS Office• экспорт в MHT (MIME HTML)• разделение «записных книжек» на файловых шарах или SharePoint

• Jarnal – на Java…

• Emacs (в режиме Org-mode) – для членов Совета Ордена джедаев

• Maltego Casefile• представление и построение связей между артефактами• может использоваться для организации доказательств

Maltego Casefile demo

• https://www.youtube.com/watch?v=MybmjIW4Uq0

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…

TODOчто делать дальше?

"Imagination is better than knowledge, ask Einstein". - Nas

Thank you!

• Мои контакты для возможных вопросов• @saprand

• vlad@styran.com