Библиотека хакера | Hacking, Infosec, ИБ, информационная безопасность
12.6K subscribers
1.81K photos
92 videos
166 files
2.86K links
Все самое полезное по инфобезу в одном канале.

Список наших каналов: https://t.me/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67ab0e2e75b36e054ef6d5bf
Download Telegram
The Bug Hunters Methodology.pdf
8.9 MB
The Bug Hunters Methodology v3

Презентация от специалиста из Bugcrowd о методологии поиска багов при участии в Bug Bounty программах.

Автор описывает полный цикл работ: от определения скоупа и разведки до поиска уязвимостей. Кроме того, он приводит наиболее популярные иструменты, которые позволяют автоматизировать работу на каждом этапе, а также сравнивает быстродействие и результативность описываемых инструментов.

Если вам более удобен видеоформат — держите ссылку на презентацию.
#OSINT

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

OSINT (Open Source INTelligence) — поиск, сбор и анализ информации, полученной из общедоступных источников. Но это не просто поиск, а использование возможностей открытых источников информации, доступных в сети интернет, на максимальную мощность.

Большинство людей завершат поиск там, где для OSINT-профессионалов он только начинается.

«В чем заключается разница?» — спросите вы. Там, где новичок увидит фото, репосты, группы и страницы, на которые подписан человек / организация в социальной сети, — профессионал увидит активность, даты публикаций, фон на фотографиях, возможные причины подписки на определенные группы, определит круги общения и т. д.

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

Точки входа в свою очередь можно классифицировать следующим образом:
🔍информационные системы, расположенные на периметре и имеющие доступ в интернет (серверы, рабочие станции, административные панели и т. д.);
🔍мобильные устройства, используемые сотрудниками;
🔍учетные записи сотрудников в различных сервисах.

Инструменты, которые стоит применять при OSINT, обсудим в слудующих постах.
#pentest #recon

Активная разведка

При рассмотрении такого этапа, как активная разведка, мы переходим к следующим понятиям:
✍️Сервер — выделенный или специализированный компьютер для выполнения сервисного ПО. Интереснее звучит следующее определение: программа (в терминологии TCP — процесс), обрабатывающая запросы клиентов. Например, приложение, обслуживающее пользователей WWW, называется веб-сервером.
✍️Узел — любая сущность, имеющая уникальный IP-адрес.
✍️Хост — с точки зрения пользователя как будто то же, что и узел, однако любой узел — хост, но не любой хост — узел, если это виртуальный хост.
✍️Сервис — программа, работающая на сервере и занимающаяся обслуживанием пользователей, которые могут к ней подключаться.
✍️Виртуальный хост — хост, не имеющий уникального IP-адреса в сети, но доступный с помощью указания какого-нибудь дополнительного адреса (например, DNS-имени).

В ходе активной разведки мы должны проанализировать каждую вышеуказанную сущность и ответить на следующие вопросы:
какие хосты работают на каждом узле?
какие сервисы запущены на каждом узле и какие у них версии?
есть ли публичные уязвимости под найденные сервисы?
используются ли средства защиты? Если используются, то какие?
какие скрытые директории можно обнаружить путем их перебора?

1. Сканирование. Итак, вы знаете диапазон IP-адресов (список узлов), принадлежащий целевой организации. Начать активную разведку необходимо со сканирования портов. В данном случае советую использовать Masscan для ускорения процесса, а затем, для определения ОС и углубленного сканирования каждого сервиса, использовать Nmap. В связке с Nmap эффективно себя показывает скрипт nmap_vulners, использующий API Vulners для предоставления информации об уязвимостях. Автоматизировать процесс сканирования, перечисления и оценки уязвимостей можно с помощью инструмента Sparta.

2. Спускаемся до хостов. На данном этапе необходимо определить, на основе какого движка работает каждый хост (как на уровне Backend, так и на уровне Frontend). Это может быть CMS, фреймворк или самопис. Помочь в этом могут как различные инструменты (например, WhatWeb), так и онлайн-сервисы (например, builtwith.com).

3. Поиск уязвимостей. В ходе данного этапа необходимо определиться, с чем вы имеете дело, и выбрать в зависимости от этого инструмент анализа. Другими словами, если перед вами хост под управлением Wordpress, то смело используйте WPScan. Если что-то неизвестное, то начните с Nikto. Наконец, параллельно с использованием данных инструментов, необходимо найти любые скрытые директории и файлы, что можно сделать с помощью инструмента dirsearch. За вами остается только выбор словаря.
#OSINT

Инструменты OSINT

В ходе OSINT накапливается много информации, которую необходимо структурировать. Для решения этой задачи могут помочь следующие инструменты:
🔍Maltego — используется для анализа связей между людьми в социальных сетях Twitter и Facebook, веб-сайтами, доменами, сетями и т.д.
🔍Creepy — предназначен для анализа геолокационных данных пользователей на основе информации из социальных сетей.
🔍OSINT Framework — фреймворк, ориентированный на сбор информации из бесплатных инструментов или ресурсов.
🔍CheckUserNames — онлайн-инструмент, который может помочь найти имена пользователей в социальных сетях.

Для расширения кругозора можно ознакомиться с материалами статьи от Postuf об инструментах OSINT, которые сделают исследования в сети более быстрыми, полезными и, возможно, более приятными. Большинство собранных ресурсов — на английском, бесплатные и без регистрации.

https://proglib.io/w/7eeea9f2
#bugbounty #hacktivity

Всякий раз убеждаюсь, что усидчивость, нестандартное мышление и желание что-то найти является главным скилом при участии в Bug Bounty программе. Более того, не надо думать, что у таких ИТ-гигантов, как Facebook, не может быть уязвимостей в приложениях. Это доказывают writeup'ы вроде этого.

Исследователь обнаружил уязвимость типа «выполнение произвольного кода» в приложении Facebook для Android, а именно, в функционале загрузки файла из вкладки «Файлы», а не из самого сообщения. В таком случае приложение загружало файл, а затем сохраняло его в каталоге «Загрузки» без какого-либо фильтра.
#recon #OSINT

Работа с Google Dorks предполагает использование расширенных операторов в поисковой системе Google для поиска определенных строк текста в результатах выдачи. Основное преимущество их использования связано с тем, что они ограничивают количество выдаваемой информации, что позволяет в кратчайшие сроки найти интересующую информацию. Ниже представлены самые распространенные операторы поиска:

🔍site — поиск только на указанном сайте

🔍inurl — поиск по словам, присутствующим в URL

🔍intext — поиск в теле страницы

🔍intitle — поиск в заголовке страницы (текст, заключенный между тэгами <title>)

🔍ext или filetype — поиск страниц с указанным расширением

🔍related — поиск сайтов со схожей тематикой

🔍link — поиск внешних ссылок на страницы

🔍cache — поиск содержимого страницы в кэше (если имеется)

🔍numrange — поиск определенных чисел в результатах поиска

🔍before/after — поиск в определенном диапазоне дат

Специальные символы: "" (точная фраза), * (любой текст), . (любой символ), - (исключить слово), .. (диапазон дат), | (логическое «или»).

Список Google Dorks вырос в большой словарь запросов, которые в конечном итоге были организованы в Google Hacking Database (GHDB). В базе данных хранятся запросы, направленные на поиск уязвимостей / утечек чувствительной информации / листинга директорий / журналов и многого другого. То есть как раз то, что нам нужно.

https://proglib.io/w/fa0ffc00
#redteam #pentest

Жизненный цикл атаки (kill chain)

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

От того, на каком этапе kill chain была обнаружена угроза, зависит эффективность расследования и размер материального и репутационного ущерба, нанесённого атакуемой организации.

Традиционный kill chain выглядит следующим образом (каждый следующий этап, как правило, не начинается без окончания предыдущего):
1. Разведка и сбор данных (reconnaissance)
2. Выбор способа атаки (weaponization)
3. Доставка (delivery)
4. Эксплуатация (exploitation)
5. Закрепление (installation)
6. Исполнение команд (command and control)
7. Достижение цели (actions on objective)

Интересно рассмотреть каждый этап по отдельности?
#bugbounty #hacktivity

Год назад исследователь из PortSwigger опубликовал работу о новых подходах к атаке HTTP request smuggling. Данная атака вмешивается в обработку последовательности HTTP-запросов, которую веб-приложение получает от одного или нескольких пользователей.

Атака направлена на рассинхронизацию backend и frontend веб-сервера, в результате чего злоумышленник может "контрабандой" пронести HTTP-запрос мимо последнего. Подробнее можно почитать на сайте PortSwigger или в упрощенном варианте на Хабре.

Недавно некто Ricardo Iramar dos Santos опубликовал writeup с описанием хода вышеописанной атаки, которая позволила управлять корпоративными мобильными устройствами, отправляя поддельные запросы на MDM сервер Citrix.

Профит от Bug Bounty программы — 17 000💲.

https://proglib.io/w/47b6718d
#redteam #pentest

Kill chain в деталях

1. Разведка и сбор данных (reconnaissance). Нам уже знаком данный этап из предыдущих постов, точнее два этапа — активная и пассивная разведка. Обобщим: в рамках разведки злоумышленник пытается установить организационную структуру организации, стек технологий, средства обеспечения ИБ, возможности использования социальной инженерии по отношению к сотрудникам.

2. Выбор способа атаки (weaponization). Злоумышленник определяет способ атаки, исходя из информации, полученной на предыдущем этапе. При этом злоумышленник может как создать новое вредоносное ПО, позволяющее эксплуатировать обнаруженные уязвимости, так и воспользоваться средствами с открытым исходным кодом. Например, он подготовил вредоносный файл MS Office с макросами. Остается выбрать способ доставки в атакуемую организацию.

3. Доставка (delivery). На данном этапе атакующий должен обеспечить попадание вредоносного ПО в информационные системы (ИС) атакуемой организации. Это может быть вложение электронной почты, вредоносная и фишинговая ссылка и т. д.

4. Эксплуатация (exploitation). После успешного попадания в ИС атакуемой организации вредоносное ПО, используя уязвимости, распространяется по сети и закрепляется на зараженных машинах в ожидании команд от злоумышленника.

5. Закрепление (installation). Вредоносное ПО осуществляет заражение для того, чтобы минимизировать свое обнаружение или удаление после перезагрузки или установки обновления.

6. Исполнение команд (command and control). С помощью соединения, устанавливаемого изнутри ИС атакованной организации, вредоносное ПО реализует взаимодействие с сервером управления, подконтрольным злоумышленнику. Таким образом, атакующий получает управление рабочей станцией или сервером внутри ИС атакуемой организации.

7. Достижение цели (actions on objective). Получив управление, злоумышленник может работать с данными на скомпрометированной рабочей станции, осуществляя несанкционированный доступ. Кроме того, атакующий может попытаться заразить другие рабочие станции в ИС, для увеличения объема доступной информации.
#pentest #bugbounty #practice

Kontra OWASP Top 10 — это коллекция бесплатных интерактивных руководств о наиболее популярных уязвимостях и некоторых инцидентах безопасности.

Разработчики данных тренингов считают, что каждый инженер-программист должен иметь бесплатный доступ к обучению безопасной разработке. Kontra OWASP Top 10 — их первый шаг в этом направлении.

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

Красиво, кликабельно, наглядно: https://proglib.io/w/26094237
positive-research-2020-rus.pdf
42.7 MB
#pentest #redteam #blueteam

Positive Research 2020 — ежегодное исследование Positive Technologies, в котором собрана самая актуальная и интересная информация о трендах и прогрессивных технологиях ИБ, о том, как защититься от киберугроз, чему учиться — и о том, что ждет в будущем.
#redteam #pentest

Повышение привилегий (Privilege escalation)

Одним из самых сложных этапов kill chain для злоумышленника, как правило, является четвертый — эксплуатация. На данном этапе у злоумышленника может возникнуть такая проблема, как недостаточные привилегии в системе или приложении. Для решения данной проблемы злоумышленник будет пользоваться различными техниками повышения привилегий.

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

Выделяют две формы повышения привилегий:
✔️Вертикальное повышение привилегий — злоумышленник имитирует пользователя на высшем уровне привилегий.
✔️Горизонтальное повышение привилегий — злоумышленник имитирует пользователя на том же уровне привилегий.

Самый легкий способ поднять привилегии, которым стоит воспользоваться в первую очередь, — это поискать в системе сохраненные учетные данные админского аккаунта. Самое простое — это файлы, оставшиеся после автоматической установки или файлы менеджеров паролей (например, KeePass Password Safe). Всем известно, что человек — существо ленивое, поэтому системные администраторы будут пытаться автоматизировать установку софта и хранения паролей. Поэтому в системе можно обнаружить файлы:
- C:\unattend.xml
- C:\Windows\Panther\Unattend.xml
- C:\Windows\Panther\Unattend\Unattend.xml
- C:\Windows\system32\sysprep.inf
- C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config
- C:\inetpub\wwwroot\web.config
- *.kdbx

С техниками повышения привилегий в различных ОС можно ознакомиться в следующих источниках: Linux (Хабр / xakep.ru) и Windows (fuzzysecurity.com / xakep.ru).
The-Hacker-Playbook-3.pdf
8.7 MB
#redteam #pentest #bugbounty #book

The Hacker Playbook 3: Practical Guide to Penetration Testing. Red Team Edition (2018)

Автор: Peter Kim

Не побоюсь этого слова, легендарная и обязательная к прочтению книга для ИБ-специалиста. В книге сделан явный уклон на red team, поэтому рассматривается все этапы проникновения: от выбора инструментария и поиска веб-уязвимостей до проникновения в инфраструктуру и распространения по сети.

Основная цель этой книги — ответить на вопросы о том, почему все еще ломается. Например, с учетом различных продуктов безопасности, проверок кода безопасности, требований к эшелонированной защите и тестированию на проникновение, как мы до сих пор наблюдаем массовые нарушения безопасности, происходящие с крупными корпорациями и правительствами? Настоящий вопрос, который мы должны задать себе, заключается в том, работают ли все меры безопасности, которые мы применяем?

В конечном итоге книга поднимет ваши атакующие навыки, мыслительные процессы и способы атаки на новый уровень.
#bugbounty #hacktivity

Одной из самых жарких новостей текущего месяца в ИБ-сообществе стала новость о взломе инфраструктуры Apple, в результате чего исследователями было выявлено 55 уязвимостей, включая 11 критических: некоторые баги позволяли взламывать аккаунты iCloud, получать доступ к закрытым ресурсам Apple и даже локальной сети компании.

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

На русском с результатами исследования можно ознакомиться в блоге компании «Лаборатория Касперского».

Начальный профит от Bug Bounty программы — 237 000💲.
#blueteam #redteam #pentest

MITRE ATT&CK

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

В этом нам может помочь матрица Mitre Att&ck (Adversarial Tactics, Techniques & Common Knowledge — «тактики, техники и общеизвестные факты о злоумышленниках»). Она основана на реальных наблюдениях компании Mitre и содержит описание тактик, приемов и методов, используемых злоумышленниками.

Базу Mitre Att&ck компания Mitre создала в 2013 году. Цель проекта — составление структурированной матрицы используемых злоумышленниками приемов, чтобы упростить задачу реагирования на киберинциденты.

Каждая матрица представляет собой таблицу, в которой заголовки столбцов соответствуют тактикам злоумышленников (основные этапы кибератаки или подготовки к ней), а содержимое ячеек — методикам реализации этих тактик, или техникам. Так, если сбор данных согласно Mitre Att&ck — это тактика атаки, то способы сбора, например автоматический сбор или сбор данных со съемных носителей, — это техники.

Матрицы Mitre Att&ck объединены в следующие группы:
- PRE-ATT&CK — тактики и техники, которые злоумышленники используют на этапе подготовки к кибератаке.
- Enterprise — тактики и техники, которые злоумышленники применяют в ходе атаки на организации.
- Mobile — тактики и техники, которые злоумышленники используют в ходе атаки на мобильные устройства под управлением iOS и Android.
- ATT&CK for ICS — тактики и техники, которые используются в кибератаках на промышленные системы управления.

Стоит отметить, что данная матрица не заменяет kill chain, а всего лишь уточняет, что скрывается за последними тремя этапами. Подробности в прикрепленной картинке.
#writeup #poc #CVE

CVE-2020–25213: wp-file-manager wordpress plugin (<6.9) for unauthenticated arbitrary file upload

Wordpress является одной из самых популярных CMS в мире, поэтому не исключено, что и вы имеете или имели с ней дело.

Недавно выявленная уязвимость в плагине File Manager (wp-file-manager) позволяет неавторизованному пользователю загружать и выполнять произвольный код PHP, что приводит к сами пониманиете к каким последствиям.

Чтобы исправить уязвимость, просто обновите плагин до версии 6.9. А нам, как исследователям безопасности веб-приложений, следует остановиться на данном writeup'е подробнее, ведь его автор создал эксплойт только после анализа описания, доступного в различных блогах (wordfence и seravo) с девизом, позволяющим читателям понять, как создать POC (Proof of Concept), просто проанализировав описание уязвимости.

https://proglib.io/w/103f52aa
Analiticheskij-obzor.-Metadannye_Digital-Security.pdf
1.9 MB
#pentest #recon

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

Зачастую при создании нового документа цифровые следы остаются незамеченными (для рядового пользователя). Так или иначе, метаданные используются не только из добрых побуждений и могут представлять угрозу конфиденциальности.

Так, специалисты из Digital Security подготовили аналитический обзор по проблеме использования метаданных, для того чтобы узнать, как различные интернет-ресурсы относятся к метаданным передаваемых или загружаемых пользователями файлов. Авторы пользовались информацией из открытых источников.
#pentest #bugbounty #tools

Burp Suite — это швейцарский нож для тестирования безопасности веб-приложений. Если посмотреть репорты Bug Bounty программ, то практически везде на скриншотах можно встретить использование этого инструмента. Альтернативой является OWASP ZAP, который тоже не стоит списывать со счетов.

Но вернемся к Burp Suite. Данная интегрированная платформа предназначена для проведения аудита веб-приложения, как в ручном, так и в автоматических режимах, если речь идет о профессиональной (платной) версии. Для начала работы вам будет достаточно бесплатной версии.

Суть работы Burp Suite заключается в проксирующем механизме, который перехватывает и обрабатывает все поступающие от браузера запросы.

Burp Suite содержит следующие ключевые компоненты:
✔️Proxy — перехватывающий прокси-сервер. Находясь между браузером и целевым веб-приложением он позволит вам перехватывать, изучать и изменять запросы.
✔️Spider — паук, позволяющий в автоматическом режиме собирать информацию о об архитектуре веб-приложения, переходить по ссылкам и составлять карту целевого веб-приложения.
✔️Scanner — автоматический сканер уязвимостей (профессиональная версия).
✔️Intruder — утилита, позволяющая в автоматическом режиме производить атаки различного вида, такие как подбор пароля, перебор идентификаторов, фаззинг и так далее.
✔️Repeater — утилита для модифицирования и повторной отправки отдельных HTTP-запросов и анализа ответов целевого веб-приложения.
✔️Sequencer — утилита для анализа генерации случайных данных приложения и выявления алгоритма генерации.
✔️Decoder — утилита для ручного или автоматического преобразования данных целевого веб-приложения.
✔️Comparer — утилита для запросов и ответов.
✔️Extender — расширения в BurpSuite. Можно добавлять как готовые из BApp store, так и собственной разработки.

Ряд деталей было опущено для упрощения, но с ними вы можете ознакомиться в статьях на Хабре (описание возможностей и полезные приемы по использованию Burp Suite более эффективно).

Цикл полезных видеороков по работе с Burp Suite для новичков: https://proglib.io/w/8960652f

Скачать Burp Suite: https://proglib.io/w/123cd3a9
#pentest #bugbounty #tools

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

Итак, вернемся к Burp Suite. Чтобы во вчерашнем посте не нагромождать количество ссылок, несколько особо интересных ссылок и мыслей было оставлено на сегодня.

В следующей серии статей вы увидите набор практических советов по работе с Burp Suite, которые упростят поиск уязвимостей:
- часть 1
- часть 2

Следующая статья того же автора о связке Burp Suite и Aquatone, а именно об использовании данных инструментов для автоматического выполнения скриншотов. На входе список ссылок из Burp Suite — на выходе скриншот каждой ссылки и заголовки ответа веб-сервера.

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

Напоследок оставлю ссылку на канал, в котором можно увидеть множество интересного о Burp Suite: https://t.me/burpsuite