Maryam: Полное руководство по OSINT-фреймворку для профессиональной разведки | Cshield - Форум социальной инженерии

kingnoype

МИРОЛЮБИВЫЙ/НЕТ
Maryam: Полное руководство по OSINT-фреймворку для профессиональной разведки
От базового использования до продвинутых техник деанонимизации

Оглавление
1. Введение в Maryam
2. Установка и первоначальная настройка
3. Архитектура фреймворка
4. Детальный обзор модулей
5. Практические сценарии использования
6. Интеграция с другими инструментами
7. Создание собственных модулей
8. Безопасность и анонимность
9. Пример полного расследования
10. Советы и лучшие практики

1. Введение в Maryam

Maryam - это мощный open-source фреймворк для OSINT (Open Source Intelligence), написанный на Python. В отличие от многих других инструментов, Maryam предлагает комплексный подход к сбору информации из открытых источников.

Ключевые особенности:
• Поддержка 70+ источников данных
• Модульная архитектура с простым расширением
• Русскоязычный интерфейс и документация
• Интеграция с популярными OSINT-инструментами
• Поддержка работы через Tor и прокси
• Автоматизация сложных сценариев разведки

Сравнение с аналогами:
ФреймворкКол-во источниковПоддержка RUСложность
Maryam70+✅ ПолнаяСредняя
Recon-ng50+❌ ОграниченнаяВысокая
theHarvester30+Низкая
SpiderFoot100+⚠️ ЧастичнаяВысокая

2. Установка и первоначальная настройка

Требования к системе:
• Python 3.6+
• 2 ГБ оперативной памяти
• 5 ГБ свободного места
• Доступ к интернету

Пошаговая установка:

Код:
# Клонирование репозитория
git clone https://github.com/saeeddhqan/Maryam.git
cd Maryam

# Установка зависимостей
pip3 install -r requirements.txt

# Настройка переменных окружения
export MARYAM_CONFIG_PATH="/path/to/config"
export MARYAM_DATA_PATH="/path/to/data"

# Первый запуск
python3 maryam.py

# Проверка установки
show modules
show options

Настройка API ключей:

Код:
# Файл конфигурации: ~/.maryam/config.json
{
  "shodan_api": "YOUR_SHODAN_API_KEY",
  "google_api": "YOUR_GOOGLE_API_KEY",
  "google_cx": "YOUR_CUSTOM_SEARCH_ENGINE",
  "twitter_api": "YOUR_TWITTER_API_KEY",
  "github_api": "YOUR_GITHUB_API_KEY",
  "virustotal_api": "YOUR_VIRUSTOTAL_API_KEY"
}

Проверка работоспособности:

Код:
# В интерфейсе Maryam
use search/google_search
set query "test site:github.com"
run
show results

3. Архитектура фреймворка

Maryam построена по модульной архитектуре, где каждый модуль отвечает за определенный тип разведки:

Основные категории модулей:

search/ - Поисковые системы и агрегаторы
social_nets/ - Социальные сети и платформы
docs_files/ - Анализ документов и файлов
dark_webs/ - Поиск в даркнете
exploit/ - Поиск уязвимостей
api/ - Работа с внешними API
dev/ - Инструменты разработки

Структура данных:

Код:
Maryam/
├── data/           # Базы данных и кеш
├── modules/        # Модули фреймворка
├── core/           # Ядро фреймворка
├── lib/            # Вспомогательные библиотеки
├── output/         # Результаты поиска
└── web/            # Веб-интерфейс

4. Детальный обзор модулей

4.1 Поисковые модули (search/):

Код:
# Поиск в Google с кастомизацией
use search/google_search
set query "компания сайт:linkedin.com"
set page_count 5
set delay 2
run

# Мультипоиск через несколько систем
use search/multiple_search
set query "target@email.com"
set engines google,bing,duckduckgo
run

# Поиск по доменной инфраструктуре
use search/domain_search
set domain target-company.com
set sources all
run

4.2 Социальные сети (social_nets/):

Код:
# Комплексный поиск профилей
use social_nets/profile_search
set username "ivanov1985"
set deep_search true
set sources vk,facebook,instagram,telegram
run

# Поиск по геолокации
use social_nets/geo_search
set lat "55.7558"
set lon "37.6173"
set radius "5km"
run

# Анализ социальных связей
use social_nets/relationship_analysis
set target_user "target_profile"
set depth 2
run

4.3 Анализ документов (docs_files/):

Код:
# Извлечение метаданных
use docs_files/metadata_extraction
set file document.pdf
set extract_all true
run

# Поиск в документах Google
use docs_files/google_docs
set query "конфиденциально filetype:pdf"
set max_results 100
run

# Анализ изображений
use docs_files/image_analysis
set image photo.jpg
set extract_exif true
set reverse_search true
run

4.4 Даркнет модули (dark_webs/):

Код:
# Поиск в даркнете (требует Tor)
use dark_webs/onion_search
set query "услуги хакера"
set engines ahmia,onionland
run

# Мониторинг форумов
use dark_webs/forum_monitor
set forum_url "http://forum.onion"
set keywords "target,company,leak"
run

5. Практические сценарии использования

Сценарий 1: Полная разведка компании

Код:
# Этап 1: Сбор базовой информации
use search/company_search
set company "ООО Рога и Копыта"
set country "Russia"
run

# Этап 2: Поиск сотрудников
use social_nets/employee_search
set company_domain "rogakopita.ru"
set positions "директор,менеджер,бухгалтер"
run

# Этап 3: Анализ инфраструктуры
use search/domain_search
set domain "rogakopita.ru"
set sources dns,whois,shodan
run

# Этап 4: Поиск утечек
use search/leak_search
set domain "rogakopita.ru"
set check_breaches true
run

Сценарий 2: Расследование инцидента безопасности

Код:
# Поиск компрометирующей информации
use search/incident_response
set incident_type "data_breach"
set timeframe "2024-01-01:2024-03-01"
set keywords "утечка,взлом,данные"
run

# Мониторинг упоминаний в соцсетях
use social_nets/mention_monitor
set brand "Рога и Копыта"
set platforms "vk,twitter,telegram"
set sentiment_analysis true
run

Сценарий 3: Due Diligence проверка

Код:
# Проверка физического лица
use social_nets/person_search
set full_name "Иванов Иван Иванович"
set birth_year "1985"
set locations "Москва,Санкт-Петербург"
run

# Поиск судебных дел
use search/legal_search
set person "Иванов И.И."
set courts "арбитражный,мировой"
run

# Анализ цифрового следа
use search/digital_footprint
set email "ivanov@domain.com"
set phone "+79161234567"
run

6. Интеграция с другими инструментами

Экспорт данных:

Код:
# Экспорт в Maltego
use dev/maltego_export
set results all
set format maltego_csv
export results.mtz

# Экспорт в JSON для дальнейшей обработки
use dev/json_export
set results all
export investigation.json

# Интеграция с SpiderFoot
use dev/spiderfoot_integration
set target "company.com"
set modules all
run

Работа с базами данных:

Код:
# Сохранение результатов в БД
use dev/database
set action save
set results all
set db_type sqlite
run

# Загрузка предыдущих результатов
use dev/database
set action load
set case_id "case_2024_001"
run

7. Создание собственных модулей

Структура модуля:

Код:
from maryam.core.base_module import BaseModule

class CustomModule(BaseModule):
    
    def __init__(self):
        super().__init__()
        self.name = "Custom Search Module"
        self.description = "Описание модуля"
        self.author = "Ваше имя"
        self.version = "1.0"
        
        # Определение параметров
        self.options = {
            'query': {
                'value': None,
                'required': True,
                'description': 'Поисковый запрос'
            },
            'max_results': {
                'value': 10,
                'required': False,
                'description': 'Максимум результатов'
            }
        }
    
    def module_run(self):
        query = self.options['query']['value']
        max_results = self.options['max_results']['value']
        
        # Логика модуля
        results = self._custom_search(query, max_results)
        
        # Сохранение результатов
        for result in results:
            self.add_result(result)
    
    def _custom_search(self, query, max_results):
        # Реализация поисковой логики
        pass

Пример работающего модуля для поиска в VK:

Код:
import requests
import json

class VKSearch(BaseModule):
    
    def __init__(self):
        super().__init__()
        self.name = "VK Search"
        self.description = "Поиск в социальной сети ВКонтакте"
        
        self.options = {
            'query': {
                'value': None,
                'required': True,
                'description': 'Поисковый запрос'
            },
            'count': {
                'value': 100,
                'required': False,
                'description': 'Количество результатов'
            }
        }
    
    def module_run(self):
        query = self.options['query']['value']
        count = self.options['count']['value']
        
        # Используем неофициальный API VK
        url = f"https://vk.com/wall?q={query}&count={count}"
        
        try:
            response = requests.get(url, headers={
                'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
            })
            
            # Парсинг результатов (упрощенный пример)
            results = self._parse_vk_response(response.text)
            
            for result in results:
                self.add_result({
                    'type': 'vk_post',
                    'content': result['text'],
                    'url': result['link'],
                    'date': result['date']
                })
                
        except Exception as e:
            self.error(f"Ошибка поиска: {str(e)}")
    
    def _parse_vk_response(self, html):
        # Реализация парсинга HTML VK
        # В реальном модуле требуется сложная логика парсинга
        return []

8. Безопасность и анонимность

Настройка прокси и Tor:

Код:
# Настройка Tor прокси
use dev/proxy_config
set proxy_type socks5
set proxy_host 127.0.0.1
set proxy_port 9050
set enable_tor true
apply

# Проверка анонимности
use dev/anonymity_check
set check_ip true
set check_dns true
run

# Ротация пользовательских агентов
use dev/user_agent_rotation
set enable true
set pool_size 10
apply

Настройка задержек и лимитов:

Код:
# Избегание блокировок
use dev/rate_limiting
set requests_per_minute 30
set random_delay true
set min_delay 2
set max_delay 10
apply

# Работа с капчей
use dev/captcha_solver
set service "2captcha"
set api_key "YOUR_API_KEY"
set auto_solve true
apply

9. Пример полного расследования

Расследование: Поиск цифрового следа целевого лица

Код:
# Шаг 1: Инициализация сессии
set case_id "investigation_001"
set description "Поиск цифрового следа Иванов И.И."
save_session

# Шаг 2: Базовый поиск
use search/multiple_search
set query "Иванов Иван Игоревич 1985"
set engines google,yandex,bing
run
save_results

# Шаг 3: Поиск в социальных сетях
use social_nets/profile_search
set username "ivanov1985"
set deep_search true
set sources vk,odnoklassniki,instagram
run
save_results

# Шаг 4: Поиск по email и телефону
use search/contact_search
set email "ivanov@mail.ru"
set phone "+79161234567"
run
save_results

# Шаг 5: Анализ результатов
use dev/result_analyzer
set correlation true
set timeline_analysis true
run

# Шаг 6: Генерация отчета
use dev/report_generator
set format pdf
set template professional
set include_visualizations true
generate_report

10. Советы и лучшие практики

Оптимизация производительности:
• Используйте кеширование результатов
• Настраивайте разумные задержки между запросами
• Распределяйте нагрузку между разными API ключами
• Используйте параллельные запросы где это возможно

Юридические аспекты:
• Всегда проверяйте легальность сбора данных
• Получайте необходимые разрешения для расследований
• Соблюдайте законодательство о защите персональных данных
• Храните собранные данные в зашифрованном виде

Технические рекомендации:
• Регулярно обновляйте фреймворк и зависимости
• Используйте виртуальные окружения для изоляции
• Настраивайте мониторинг использования API
• Создавайте резервные копии важных расследований

Расширение функциональности:
• Участвуйте в разработке открытых модулей
• Создавайте собственные базы данных источников
• Интегрируйте с системами машинного обучения
• Разрабатывайте специализированные отчеты

Код:
# Скрипт автоматического обновления
#!/bin/bash
cd /path/to/maryam
git pull origin master
pip3 install -r requirements.txt --upgrade
echo "Maryam успешно обновлена"

Заключение

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

Ресурсы для дальнейшего изучения:
• Официальная документация: OWASP Maryam — Maryam latest documentation
• Сообщество разработчиков: GitHub Discussions
• База знаний: Maryam Wiki
• Канал обновлений: @maryam_osint

Важно: Используйте Maryam только в законных целях и в рамках действующего законодательства.

Статья актуальна для версии Maryam 2.5.X (2025)
 
Сверху