Логотип

Блог

Экспертные статьи о Форензике

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

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

Геометрия связей и скрытые кластеры

Социальный граф представляет собой математическую модель, где аккаунты выступают вершинами (nodes), а любые взаимодействия – ребрами (edges). Взаимные подписки, репосты, реакции и совместные отметки создают устойчивые кластеры, отражающие реальное социальное окружение человека.

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

Математические метрики сетевого влияния

В форензике и OSINT анализ графов строится на вычислении центральности узлов (centrality metrics), а не на субъективных догадках.

  • Степень узла (Degree Centrality) отражает базовое количество прямых связей и позволяет выявить ключевых координаторов сети.
  • Посредничество (Betweenness Centrality) определяет «мосты» между изолированными сообществами – именно эти узлы чаще всего оказываются связными или дропами.
  • Близость (Closeness Centrality) показывает, насколько быстро информация или команда распространяется от конкретного аккаунта по всей структуре.

Косвенные следы и темные ребра

Аналитики обращают внимание не только на явные подписки, но и на скрытые или косвенные взаимодействия. Совместное нахождение в закрытых чатах, синхронная активность в ночное время и паттерны финансовых переводов в P2P-каналах создают устойчивый поведенческий отпечаток.

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

Практические правила для исследователя

Не стройте гипотезы на основе одного изолированного профиля, пока не выгрузили граф связей второго и третьего порядка, я серьезно. Настоящие улики лежат не на витрине аккаунта, а в узлах, через которые циркулирует трафик.

  • Используйте специализированные инструменты визуализации графов вроде Gephi или Maltego для фильтрации информационного шума.
  • Исключайте из анализа «селебрити-узлы» с миллионным охватом, которые лишь размывают кластеры и искажают метрику расстояния.
  • Сопоставляйте срезы графа во времени (temporal graphs), чтобы отследить момент появления новых контактов накануне инцидента.
Социальный граф как улика: как связи между аккаунтами говорят громче, чем сами посты

Стилометрия: как твоя манера письма выдаёт тебя лучше паспорта

Можно купить чистый ноутбук за наличные, настроить цепочку из трех “сервисов на три буквы”, и сидеть под свежим ником в Tor, но собственный мозг все равно оставит в тексте цифровой отпечаток пальца. Стилометрия превращает синтаксис, пунктуацию и словарный запас в математическую матрицу, способную деанонимизировать автора быстрее, чем утечка IP-адреса.

Цифровой ДНК в каждом предложении

Человек не контролирует построение фраз на сто процентов, потому что речь формируется годами под влиянием привычек, прочитанных книг и региональных диалектов. В криминалистической лингвистике этот уникальный речевой портрет называют идиолектом.

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

Математический аппарат текстового анализа

Современная стилометрия давно ушла от ручного подсчета запятых к многомерным векторным моделям и машинному обучению. Эксперты оцифровывают текст в сотни числовых признаков, формируя координатную точку писателя в пространстве эмбеддингов.

  • Анализ n-грамм символов и слов фиксирует неосознанные орфографические паттерны, опечатки и устойчивые словосочетания.
  • Дельта Берроуза (Burrows’ Delta) математически вычисляет расстояние между частотными профилями неизвестного текста и базы подозреваемых.
  • Метрики синтаксической сложности оценивают среднюю длину предложений, глубину вложенности придаточных конструкций и ритмику абзацев.

Следы в даркнете и коде

Классический пример триумфа стилометрии в расследованиях – идентификация авторов манифестов, кибервымогателей и операторов теневых площадок, включая дело Unabomber и деанонимизацию создателей хакерских форумов. Даже при общении короткими репликами автор выдает себя специфическим типом смайликов, пробелами перед знаками препинания и форматированием списков.

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

Методы маскировки и их слабости

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

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

Стилометрия: как твоя манера письма выдаёт тебя лучше паспорта

Git как машина времени: репозитории, которые помнят всё, что ты пытался стереть

Многие разработчики и безопасники искренне верят в магию команды git commit --amend или принудительного пуша с флагом --force. Реальность куда прозаичнее: Git спроектирован как структура данных на основе направленного ациклического графа (DAG), которая по умолчанию ничего не удаляет, а лишь переставляет указатели веток.

Анатомия каталога .git и висячие объекты

Когда файл случайно попадает в коммит, а затем разработчик пытается «замести следы» быстрым откатом ветки, содержимое файла никуда не исчезает. Оно остается в виде сжатого blob-объекта внутри внутренней базы данных под каталогом .git/objects.

Такие объекты переходят в категорию dangling (висячих) объектов, на которые больше не ссылается ни одна вершина графа. Внутренний сборщик мусора git gc не трогает их неделями, давая форензик-специалисту огромное окно возможностей для извлечения чувствительных данных.

Извлечение улик из скрытого журнала

Если коммит перезаписали или затерли локально, первым делом исследуют журнал ссылок git reflog. Он ведет строгий учет каждого перемещения указателя HEAD, сохраняя историю всех переключений, слияний и правок.

  • Команда git fsck --lost-found моментально находит все потерянные коммиты и распаковывает их содержимое в отдельную папку.
  • Утилита git cat-file -p <HASH> позволяет восстановить исходный текст любого найденного blob-объекта напрямую по его хешу.
  • Анализ git log -g раскрывает полную хронологию локальных действий пользователя до момента принудительной перезаписи истории.

Удаленные репозитории и публичные зеркала

Попытка переписать публичную ветку на GitHub или GitLab через git push --force создает лишь иллюзию безопасности. Платформы кэшируют старые коммиты во внутренних хранилищах, и они остаются доступными по прямому хешу через API событий или Pull Requests.

Любой приватный ключ, токен API или пароль от базы данных, попавший в публичный доступ хотя бы на пять секунд, уже спарсен ботами поисковых систем и зеркал. Использование инструментов вроде BFG Repo-Cleaner или git-filter-repo зачищает граф, но не отзывает скомпрометированные секреты у внешних систем.

Практические правила для расследователя

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

  • Всегда клонируйте репозиторий вместе с полным набором скрытых веток и служебных ссылок через флаг --mirror.
  • Используйте сканеры вроде TruffleHog или Gitleaks для автоматического поиска энтропии и паттернов секретов по всей глубине графа.
  • Не пытайтесь тестировать утилиты очистки на рабочем репозитории без создания изолированного бэкапа, я серьезно.

Git как машина времени: репозитории, которые помнят всё, что ты пытался стереть

Форензика контейнеров Docker: улики в эфемерной инфраструктуре

Если девопсы и хакеры свято верят, что после команды уничтожения контейнер растворяется в цифровом небытии без следа, то у меня для них плохие новости. Эфемерность Docker обманчива: хост помнит практически всё, если специалист понимает архитектуру ядра Linux и структуру демона.

Анатомия слоев и OverlayFS

Главный миф микросервисов – иллюзия полной бесследности запущенных приложений. На самом деле контейнер представляет собой изолированный процесс на хосте, пишущий временные данные в выделенный рабочий слой файловой системы.

Каталог /var/lib/docker/overlay2 хранит все разрозненные слои образов и контейнеров. Пока сущность не вычищена с диска принудительно через docker system prune, рабочий каталог diff содержит абсолютно каждый измененный или созданный файл, включая загруженные бэкдоры.

Снятие дампа оперативной памяти

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

Вытащить оперативную память можно напрямую из каталога /proc/<PID>/mem или с помощью gcore на хосте, определив родительский PID контейнера. Для глубокого исследования инъекций и анализа скрытых сокетов применяют профилированный модуль LiME в связке с фреймворком Volatility.

Тактика сбора цифровых доказательств

Первое правило реагирования на инцидент – забыть про спонтанный перезапуск служб. Обычная остановка контейнера может запустить скрипты самоуничтожения малвари или обнулить ценные точки монтирования в памяти tmpfs.

  • Примените команду заморозки docker pause, чтобы зафиксировать состояние всех регистров и процессов.
  • Создайте снимок текущего состояния файловой системы в новый образ с помощью команды docker commit.
  • Сохраните контейнер в архив через docker save или docker export для изолированного препарирования на стенде.
  • Рассчитайте и зафиксируйте контрольные хеш-суммы SHA-256 каждого полученного слепка в протоколе расследования.

Логирование и сетевой контекст

Попытка зачистить историю shell внутри окружения – классический ход, который не спасает от внешнего аудита. Если на хосте развернуты auditd или eBPF-зонды, каждый системный вызов внутри cgroups уже сохранен в централизованном журнале.

Файл конфигурации /var/log/docker.log и метаданные команды docker inspect содержат точную хронологию запуска, смонтированные тома и скрытые переменные окружения. Таблица трансляции conntrack и цепочки iptables хоста сохраняют адреса удаленных серверов управления, с которыми контактировал скомпрометированный узел.

Главные правила работы эксперта

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

  • Всегда анализируйте параметры bind mounts на предмет несанкционированного побега злоумышленника в корневую систему хоста.
  • Изучайте переменные окружения контейнера, где беспечные инженеры регулярно забывают боевые токены и приватные ключи.
  • Проверяйте историю сборки базового образа через docker history, чтобы отделить артефакты компрометации от заводских уязвимостей.
Форензика контейнеров Docker: улики в эфемерной инфраструктуре

Артефакты браузерных расширений: маленькие плагины с большой памятью

История браузера врёт охотнее, чем расширение. Пользователь жмёт «очистить всё», чистит cookies, включает инкогнито – и искренне верит, что стёр следы. Расширение в это время спокойно пишет LevelDB, IndexedDB и свой локальный склад. «Очистить историю» его, как правило, не трогает.

Это не магия. Это архитектура: плагин – отдельное приложение внутри профиля, со своим storage API и своими файлами. Для форензики это золото. Для тех, кто «просто почистил Chrome» – неприятный сюрприз.

Не повторяйте это дома, я серьезно: ниже – разбор своих профилей, лабораторных образов и кейсов с законным основанием. Чужой диск без мандата – уже не OSINT, а статья УК.

Почему плагин помнит больше браузера

Chromium и Firefox дают расширениям chrome.storage.local, chrome.storage.sync, IndexedDB, Cache Storage и (у старых) WebSQL. Браузер не считает это «историей». Поэтому:

  • adblocker хранит списки доменов и счётчики блокировок;
  • менеджер паролей держит метаданные сейфа и иногда зашифрованный vault;
  • криптокошелёк пишет ключи/сид в LevelDB (infostealer’ы это знают лучше половины SOC);
  • AI-сайдбары (Monica, Sider и компания) складывают переписки в Local Extension Settings.

Исследование 2026 года по conversational AI-расширениям прямо указывает: основные артефакты лежат в Local Extension Settings, формат – LevelDB. Не в History. Не в cookies.

Отдельный бонус: состояние расширений переживает Clear All History. Password managers, ad blockers, «продуктивность» и даже тупые темы часто оставляют навигационный контекст.

Карта диска: Chromium-семья

Chrome, Edge, Brave, Opera, Vivaldi, Яндекс – одна кухня, разные адреса профиля.

Windows (пример Chrome):

%LOCALAPPDATA%\Google\Chrome\User Data\<Profile>\

Что смотретьПуть относительно профиляЗачем
Код и манифестExtensions\<extension_id>\<version>\ID, версия, permissions, update URL, подозрительный CWS vs self-hosted
Настройки браузераPreferences, Secure Preferencesсписок установленных, enabled/disabled, install time, pin to toolbar
Локальный storageLocal Extension Settings\<extension_id>\LevelDB: *.ldb, *.log, CURRENT, MANIFEST-*
СинкSync Extension Settings\<extension_id>\то, что уехало в аккаунт Google/Microsoft
СостояниеExtension State\LevelDB, runtime-флаги
IndexedDBIndexedDB\chrome-extension_<id>_0.indexeddb.leveldbкрупные объекты: кошельки, заметки, чаты
Cache Storage / Service WorkerService Worker\, CacheStorage\кэш UI и иногда токены

Edge: ...\Microsoft\Edge\User Data\Default\Extensions\...
Opera: чаще %APPDATA%\Opera Software\Opera Stable\Extensions\

extension_id – 32 символа латиницы (nkbihfbeogaeaoehlefnkodbefgpgknn = MetaMask, и да, это уже мем в инцидентах). Не гадай: сверяй с manifest.json и Preferences.

Linux: ~/.config/google-chrome/<profile>/
macOS: ~/Library/Application Support/Google/Chrome/<profile>/

Что внутри LevelDB

Это не SQLite. Открывать «как таблицу» бесполезно. На диске – SST/LDB плюс WAL-подобный *.log. Значения часто JSON или protobuf. Строки ключей иногда читаются strings, но для суда нужен парсер (Hindsight, leveldbdump, кастом на Python plyvel – только с копии, не с живого профиля).

Типичный улов:

  • списки URL / last visited / pinned tabs у session-менеджеров;
  • email, workspace id, last prompt у AI-плагинов;
  • address book и tx history у кошельков;
  • правила фильтрации – косвенно показывают, какие домены пользователь видел.

Infostealer’ы (Vidar 2.0 и наследники) целенаправленно грабят Local Extension Settings, Sync Extension Settings и IndexedDB\chrome-extension_*. Если в IR видишь, что малварь ходила именно туда – это не «ещё один путь», это приоритет: там деньги и сессии.

Firefox: другая религия, та же жадность

Профиль: %APPDATA%\Mozilla\Firefox\Profiles\<random>.default-release\

  • extensions.json – каталог аддонов, состояние, даты.
  • extensions\ – XPI/распакованные.
  • addonStartup.json.lz4 – что реально поднималось при старте.
  • storage\default\moz-extension+++<uuid>\ – IndexedDB/local storage в SQLite (idb, ls).
  • browser-extension-data\<id>\ – storage.local в JSON у части аддонов.
  • prefs.js – флаги, в том числе отключённые плагины.

UUID в storage\default не равен addon id с AMO. Связка: extensions.jsonpath / idstorage. Пропустишь маппинг – получишь красивый дамп ни о чём.

Что именно доказывать

Расширение само по себе не преступление. Цепочка обычно такая:

  1. Inventory. Что стояло, когда поставили, откуда (update_url в манифесте: Chrome Web Store vs левый CDN – уже сюжет).
  2. Permissions. <all_urls> + webRequest + debugger у «ускорителя PDF» – красный флаг, не диагноз.
  3. Runtime state. Enabled в момент инцидента или «случайно» выключили за час до изъятия.
  4. User data. Содержимое storage: переписки, адреса, seed-фразы, списки сайтов.
  5. Корреляция. Сопоставить install time с загрузками в History/places.sqlite, с Secure Preferences и с prefetch браузера.

Пример из практики (лаборатория, не «взлом соседа»): пользователь чистит историю после спорной сессии. В History пусто. В storage адблока – счётчики хитов по доменам за тот же день. В AI-сайдбаре – промпт с реквизитами. Timeline собирается без единого URL из visits.

Ещё один классический слой: Clear All History режет таблицы urls/visits, но WAL/History-wal и freelist SQLite ещё часы живут. Плюс Top Sites, Network Action Predictor, Service Worker. Расширения – четвёртый слой, который вообще не входил в «очистить».

Инструменты без театра

  • Копия профиля, браузер закрыт. Живой Chrome держит локи на LevelDB – сломаешь и себе, и цепочке.
  • Hindsight (RyanDFIR) – Chromium-артефакты, включая куски extension-related.
  • DB Browser for SQLite – Firefox storage\default, не LevelDB.
  • WebX / triage-сканеры – инвентаризация расширений пачкой с KAPE/образа.
  • Elcomsoft Quick Triage и аналоги – полевой съём Preferences, IndexedDB, Yandex-специфики (Ya Passman Data и т.п.).
  • Свой парсер LevelDB – когда вендорный софт молчит. Пиши на копии. Хеши до и после.

Не тащи «Inspect background page» на боевой машине подозреваемого, если задача – изъятие. Это изменение состояния. Для своего лаба – пожалуйста: DevTools → Application → Extension storage. Для суда – файл с диска.

Грязные зоны (и почему я не дам рецепт)

Криптокошельки в расширениях, менеджеры паролей, сессионные токены SaaS – это не «интересно посмотреть JSON». Это доступ к чужим деньгам и аккаунтам. Разбор формата vault’а, обход мастер-пароля, эксплуатация уязвимого плагина – за скобками. Если на образе лежит nkbihfbeogaeaoehlefnkodbefgpgknn и жирный LevelDB, фиксируешь факт, хеши, версию, permissions. Дальше – уполномоченные и политика кейса.

То же про вредоносные расширения из supply chain: анализируй манифест, сетевые IOC, persistence. Не пиши и не запускай эксплойт «чтобы проверить».

Короткий чеклист на изъятие

  1. Зафиксировать запущен ли браузер; по возможности live-triage только если нужен App-Bound Encryption / сессия. Иначе – выключить чисто.
  2. Снять весь User Data / Firefox profile, не только Extensions.
  3. Не забыть Local Extension Settings, Sync Extension Settings, IndexedDB, Extension State.
  4. Рядом положить Preferences, Secure Preferences, Local State, extensions.json.
  5. Посчитать SHA-256. Парсить только копии.
  6. Смапить ID → имя → версия → store/sideload.
  7. Отдельно пометить кошельки, password managers, AI-чаты, корпоративные SSO-плагины.

Маленький плагин с большой памятью – это не поэзия. Это каталог на диске, который пользователь не считает уликой. Ты – считаешь. И да, сначала свой профиль: открой Local Extension Settings и посмотри, сколько о тебе помнит «просто блокировщик рекламы». Спойлер: больше, чем тебе комфортно.

Артефакты браузерных расширений: маленькие плагины с большой памятью

Форензика QR-кодов: как маленький квадратик превращается в цифровую ловушку

Ты сканируешь QR-код на парковочном автомате, в меню кафе, в письме от “банка” – и за долю секунды доверяешь непонятной последовательности черных пикселей больше, чем незнакомцу на улице. Именно на этой иррациональной доверчивости построена целая индустрия атак, которую индустрия скромно назвала “quishing” (QR + phishing). Разберём, как это работает под капотом и как это ловить форензику.

Почему квадратик обманывает даже опытных

QR-код – это не “ссылка”, это контейнер произвольных данных: URL, deep-link в приложение, vCard, Wi-Fi конфиг или просто текст. Человеческий глаз не может декодировать матрицу, поэтому мы вынуждены слепо доверять сканеру. Это же свойство обожают злоумышленники: вредоносный URL существует только как закодированные пиксели изображения – он невидим для текстовых антифишинговых сканеров, которые ищут паттерны в теле письма.

Масштаб проблемы за последние два-три года вырос кратно:

  • Image-based фишинг-атаки выросли на 400% к 2025 году, и сейчас 12–12.4% всех фишинговых инцидентов используют QR как канал доставки.
  • Только в почтовых вложениях за период октябрь 2024 – март 2025 зафиксировано более 1.7 млн уникальных вредоносных QR-кодов, при этом в среднем 2.7 млн писем с QR-кодами обрабатывалось ежедневно.
  • Palo Alto Networks фиксирует свыше 11 000 детектов вредоносных QR-кодов каждый день, а среди QR-кодов, найденных офлайн-краулерами на веб-страницах, 15% ведут на зловредные ссылки.
  • Microsoft Digital Defense Report зафиксировал более 15 000 фишинговых писем с QR-кодом ежедневно только в атаках на сектор образования.
  • 56% детектированных quishing-писем маскируются под уведомление о сбросе двухфакторной аутентификации Microsoft – классика социальной инженерии “срочно подтвердите вход”.

Арсенал атакующего: не только “ссылка на фишинг”

Классический quishing

Самый примитивный вариант: QR ведёт на клон страницы логина (банк, почта, корпоративный SSO). Жертва сканирует телефоном, попадает на страницу вне защищённого корпоративного браузера – и вот тут кроется главная подлость: сканирование происходит на личном мобильном устройстве, где нет ни EDR, ни корпоративного веб-фильтра. Атака физически “выходит” за периметр защиты компании.

Обход браузерной изоляции (Mandiant)

Исследователи Mandiant показали PoC, где атакующий сервер зашивает команды прямо в QR-код. Пользователь сканирует его с мобильного – и устройство инициирует связь с C2-сервером атакующего, полностью минуя изолированный браузер на рабочей станции. Изоляция браузера защищает десктоп, но не защищает от того, что происходит после сканирования телефоном.

Split и nested QR-коды

В 2025 году Barracuda зафиксировала кампании, где вредоносная нагрузка фрагментируется между несколькими QR-кодами или “накладывается” одна матрица на другую (nested), чтобы обмануть автоматические сканеры безопасности, которые ждут один цельный, легко читаемый паттерн.

QR как вектор SQL-инъекции в offline-системах

Это уже не про фишинг, а про физическую безопасность. Kaspersky обнаружил уязвимости (CVE-2023-3938, CVE-2023-3942) в китайских биометрических системах контроля доступа: злоумышленник кодирует в QR произвольные данные, а терминал вставляет их в SQL-запрос без санитайзинга. Итог – либо несанкционированный доступ (система “думает”, что это последний авторизованный пользователь), либо утечка данных из базы через инъекцию, либо перезагрузка устройства при переполнении payload’а.

Обход детекторов через кодировку

Интересный трюк: 67.6% вредоносных QR в письмах доставляются как обычные изображения, но 32.4% собираются из unicode-символов, имитирующих визуальный паттерн QR – это ломает многие сигнатурные анализаторы, которые ищут именно растровое изображение.

Методология форензик-разбора: как ловить квадратик за руку

Когда к тебе на стол попадает подозрительный QR (из письма, ПДФ, скрина, физической наклейки) – вот пошаговый чек-лист, а не “просканируй телефоном и молись”.

Изоляция и извлечение. Никогда не сканируй подозрительный QR личным телефоном с активным Wi-Fi/мобильными данными. Извлекай изображение программно: pdfimages для PDF-вложений, zbarimg для быстрого декода, CyberChef для более глубокого разбора кодировки данных.

Декодирование без выполнения. Получи raw-содержимое (обычно URL) без захода по ссылке. На этом этапе смотри тип payload: обычный HTTPS URL, deep-link в приложение, JSON или plaintext – это сразу сужает вектор атаки.

Анализ через сэндбокс. Инструменты типа ANY.RUN или Joe Sandbox автоматически детектируют QR внутри файлов, извлекают URL и открывают его в изолированной виртуалке, эмулируя реальный клик – так ты видишь редиректы, фингерпринтинг устройства и итоговый лендинг без риска для боевой машины.

Разбор цепочки редиректов. Атакующие обожают URL-шортенеры и множественные редиректы, чтобы спрятать финальный домен и обойти репутационные фильтры. Трассируй каждый прыжок отдельно, фиксируй все промежуточные домены – это твои будущие индикаторы компрометации (IOC).

Оценка “возраста” инфраструктуры. Quishing-кампании часто разворачиваются на свежезарегистрированной инфраструктуре, из-за чего до 80% таких атак не детектируются классическими антифишинговыми движками при первом контакте, по данным Cyble – даже явно вредоносный PDF с QR может дать ноль детектов на VirusTotal [web:5]. Проверяй WHOIS, дату регистрации домена и SSL-сертификата – молодой домен под “банк с 100-летней историей” – это уже железный маркер.

Контекстный, а не только технический анализ. Современные защитные системы (например, подход Inception Cyber NACE) уже не гоняются за ссылкой внутри QR, а анализируют семантику и тон самого письма-носителя – тему, срочность формулировок, паттерны социальной инженерии – потому что домен назначения легко подменить, а психологический триггер “срочно подтвердите” остаётся неизменным маркером атаки.

Что забирать с собой

QR-код – это не угроза сам по себе, а идеальный слепой угол существующих защитных механизмов: он невидим для текстовых фильтров, выводит атаку на неконтролируемое мобильное устройство и легко маскируется фрагментацией или юникод-имитацией. Форензику здесь нужно смотреть не только на “куда ведёт ссылка”, а на весь контекст доставки – файл-носитель, инфраструктуру домена и социальную инженерию вокруг сканирования.

Практический вывод для тебя как для практика: если работаешь с входящими QR (в рамках инцидент-респонса или пентеста), всегда декодируй программно, никогда – личным устройством с боевой сим-картой. И да, если ты решишь потренироваться генерировать “тестовые” вредоносные QR для клиентской пентест-программы – делай это только в рамках подписанного договора и scope. Не повторяйте это дома, я серьезно.

Форензика QR-кодов: как маленький квадратик превращается в цифровую ловушку

OSINT через фотографии еды: как ресторанный нельзяграм выдаёт маршруты, связи и распорядок дня

Привет, бро. Фотки еды – это не про еду, а про поведенческую телеметрию, завернутую в красивую тарелку. Один ресторанный нельзяграм легко сдает, где человек бывает, с кем ужинает, в какие часы живет и какие места считает “своими”.

Почему это работает

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

Что выдает ресторанный Нельзяgram

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

Маршруты и распорядок

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

Связи и контекст

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

Где тонко

Самые частые утечки – это геотеги, метаданные, постинг “здесь и сейчас” и публичные настройки видимости, из-за которых публикация начинает работать как маяк. Короче, тарелка пасты в ленте – это иногда не гастрономия, а бесплатный трекер с базиликом сверху.

OSINT через фотографии еды: как ресторанный нельзяграм выдаёт маршруты, связи и распорядок дня

OSINT в академической среде: как диссертации и научные публикации выдают секреты компаний

Привет, бро. Академическая среда – это огромная дыра в корпоративной безопасности, через которую ежедневно утекают миллионы долларов интеллектуальной собственности. За время работы в форензике я насмотрелся, как компании тратят бюджеты на сложнейшие DLP-системы, а потом их ноу-хау сливается через безобидный реферат стажера. Лови разбор того, как ученые степени становятся лучшими друзьями корпоративного шпиона.

Научный тщеславный слив

Главная уязвимость академии – потребность в публикациях. Аспиранты и научные сотрудники, работающие над совместными проектами с корпорациями, обязаны публиковать статьи в ВАК или Scopus, а также защищать диссертации. В погоне за уникальностью исследования они часто «забывают» обезличить данные и публикуют куски проприетарного кода, реальные бизнес-процессы, схемы неопубликованных патентов или результаты закрытых тестирований. OSINT-специалисты просто парсят базы вроде eLibrary, CyberLeninka или западные репозитории по ключевым словам и названиям компаний-спонсоров.

Гранты как открытая бухгалтерия

Университетские гранты и госзакупки научно-исследовательских работ (НИОКР) – это легальный способ залезть в планы корпораций. Если компания заказывает у вуза исследование новых полимеров, данные об этом тендере, включая техническое задание и списки привлеченных экспертов, оседают в открытых реестрах и университетских отчетах. Проанализировав такие закупки с помощью базовых OSINT-инструментов, можно с точностью до месяца предсказать, в какую сторону движется разработка конкурента и какие технологии он планирует внедрить.

Метаданные: цифровые следы в PDF

Диссертации и авторефераты обычно выкладываются в формате PDF, который является золотой жилой для форензика. Авторы редко чистят метаданные перед публикацией, оставляя внутри файлов имена реальных авторов (иногда корпоративных кураторов), пути к папкам на внутренних серверах (например, C:\Users\Ivanov\Corp_Secret_Project), версии софта и скрытые комментарии. Извлечение таких данных через инструменты типа ExifTool позволяет не только выявить связь академика с конкретной компанией, но и получить векторы для потенциального фишинга сотрудников.

OSINT в академической среде: как диссертации и научные публикации выдают секреты компаний

OSINT через некрологи и архивы ЗАГСа: мёртвые данные, которые живут вечно

Привет, бро. Анализ некрологов и баз ЗАГСа – это мощнейший OSINT-вектор, позволяющий через умерших родственников собирать критические данные о живых людях. За свои годы в форензике я усвоил одно: мертвецы не умеют хранить секреты, поэтому лови жесткий мастер-класс по «некро-разведке» без лишней воды.

Архивы ЗАГСа: Бюрократическая машина времени

ЗАГС – это клондайк данных, где фиксируются факты рождения, смерти, браков и разводов, хранящий за собой адреса проживания, места работы и имена ближайших родственников. По закону эти записи не являются общедоступными, поэтому легальный доступ возможен только при подтверждении родства, а вот старые книги (старше 100 лет) передаются в публичные государственные архивы. Я готов в деталях объяснить, как некоторые выуживают свежие справки через фишинг сотрудников или покупают логи в даркнете, но не повторяйте это дома, я серьезно.

Некрологи: Открытый граф связей

Если официальные бумаги скрыты бюрократией, то некрологи в открытом доступе сами добровольно выдают готовые социальные связи. Безутешные родственники публикуют в газетах и соцсетях тексты, где перечисляют весь круг близких лиц, а специализированные платформы вроде Find A Grave агрегируют данные о реальных захоронениях. Грамотное использование операторов поиска (Google Dorking) позволяет вытаскивать такие некрологи и мгновенно выстраивать семейное древо нашего таргета.

Цифровое наследие брошенных аккаунтов

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

OSINT через некрологи и архивы ЗАГСа: мёртвые данные, которые живут вечно

Форензика зарядных станций EV: электромобиль – самый дорогой датчик местоположения

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

Электромобиль как геометка

Современный EV сам по себе напичкан телеметрией, но именно процесс длительной зарядки становится железной геопространственной привязкой. Пока ты пьешь кофе в ожидании заветных киловатт, станция фиксирует время, точное местоположение и идентификаторы. Каждая такая розетка собирает данные, которые расскажут о твоем регулярном маршруте гораздо больше, чем твоя собственная память.

Уязвимости протокола OCPP

Инфраструктура зарядок – это рай для форензика, потому что многие сети до сих пор используют древний протокол OCPP на базе не зашифрованного HTTP. Это позволяет банально перехватывать номера RFID-карт, идентификаторы сессий и перенаправлять запросы. Для понимающего человека вытащить эти данные из трафика не составит труда, но не повторяйте это дома, я серьезно.

OSINT зарядных сетей

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

Извлечение цифровых артефактов

При анализе серверной части станции или смартфона объекта мы ищем вполне конкретные «иголки в стоге сена». Ключевыми уликами становятся токены авторизации, платежные логи и время сеанса, которое на быстрых станциях занимает от 20 минут до часа. Если оператор станции соблюдает правила и использует многофакторную аутентификацию, это дает следователю еще больше привязок к личности.

Сравнение профилирования транспорта

Параметр слежкиОбычный автомобиль (ДВС)Электромобиль (EV)
Точки фиксацииАЗС, дорожные камерыЗарядные станции, приложения, встроенное ПО
Время стоянки5-10 минутОт 20 минут до 8 часов
Оставляемый следКассовые чеки, видеозаписиЛоги протокола OCPP, метки RFID-карт
ДеанонимизацияПо номеру авто или банковской картеПо VIN, токену сессии, данным приложения

Форензика зарядных станций EV: электромобиль - самый дорогой датчик местоположения

Цифровые следы в медицинских гаджетах: кардиостимуляторы, глюкометры и прочие шпионы в твоём теле

Слушай, братан, твой кардиостимулятор знает о тебе больше, чем твой психотерапевт, а глюкометр может рассказать следователю, во сколько ты последний раз ел сладкое перед тем, как «внезапно» упасть с лестницы. Медицинские гаджеты давно перестали быть просто железками для поддержания жизни – это полноценные цифровые свидетели, которые пишут журнал событий похлеще чем видеорегистратор в такси.

Имплантаты как немые свидетели

Кардиостимуляторы и дефибрилляторы фиксируют ритм сердца, время последнего сокращения и даже причину остановки – это буквально прибор, который может дать точное время смерти, когда патологоанатом разводит руками. При аутопсии судмедэксперты сейчас обязаны искать серийные номера имплантов и «допрашивать» устройство через представителя производителя или кардиоклинику, чтобы вытащить данные о финальном ритме сердца. Если девайс реально был причастен к смерти – это прямо прописывается в заключении о причине смерти, так что твой кардиостимулятор буквально может дать показания против тебя (или за тебя).

Глюкометры, инсулиновые помпы и другие болтуны

Инсулиновые помпы Medtronic – это отдельный цирк с конями: в 2019 году нашли уязвимость CVE-2019-10964, позволяющую перехватывать, модифицировать и подделывать RF-сигналы, а заодно менять настройки дозирования инсулина удалённо. Ещё раньше, в 2011-м, исследователь безопасности показал, что может захватить помпу в радиусе 100 метров, получить её серийный номер и заставить вколоть все 300 единиц инсулина – для диабетика первого типа это потенциально смертельная доза, и отключить RF-модуль физически невозможно, он слушает эфир всегда. После этого скандала Medtronic пришлось предлагать замену устройств для 4000 пациентов с уязвимыми моделями.

Что можно вытащить из носимых устройств криминалисту

Смартфонные приложения для медгаджетов (Kardia, iHealth MyVitals, Health Mate и подобные) хранят не только медицинские метрики, но и метаданные пользователя, причём иногда в незашифрованном виде – прямо находка для форензика. Вот что реально можно найти при экспертизе:

  • Медицинские показатели: давление, температура, ЧСС, уровень кислорода в крови
  • Метаданные аккаунта: имена, email регистрации, список подключённых устройств, а иногда и пароли
  • Данные об активности и геолокации, синхронизированные со смартфоном
  • Временные метки событий – незаменимо для восстановления хронологии инцидента

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

Почему это касается не только детективов

Носимая электроника типа смарт-часов сейчас снимает ЭКГ, SpO2, частоту дыхания, температуру и фазы сна практически в реальном времени, а это значит, что твой девайс на запястье – постоянный источник цифровых доказательств твоей физиологии, хочешь ты этого или нет. IoT-устройства в целом формируют «цифровой след», который помогает триангулировать личность и действия человека даже без прямого доступа к смартфону.

Табличка для быстрого понимания рисков

УстройствоЧто записываетФорензическая ценностьРиск взлома
Кардиостимулятор/дефибрилляторРитм сердца, время события Время и причина смерти при неясной аутопсииНизкий, но данные извлекаются только производителем
Инсулиновая помпаДозы, RF-командыРеконструкция событий перед инцидентомВысокий – удалённая инъекция летальной дозы
Глюкометр/фитнес-трекерУровень сахара, активность, локацияХронология действий, здоровье на момент события Средний – незашифрованные метаданные в приложениях

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

Цифровые следы в медицинских гаджетах: кардиостимуляторы, глюкометры и прочие шпионы в твоём теле

Форензика умных счётчиков: как ваш электросчётчик знает, когда вы дома

Анатомия цифрового стукача

Обычный старый счётчик просто крутил диск и раз в месяц выдавал цифру. Современный «умный» счётчик – это полноценный IoT-девайс, оснащённый радиомодулем, который по защищённым беспроводным каналам (через сотовую связь, Wi-Fi или LoRaWAN) гонит данные на серверы ресурсной компании. Он фиксирует энергопотребление с маниакальной детализацией: не раз в месяц, а с временными интервалами в полчаса, а иногда и поминутно. И вот тут начинается магия цифровой форензики, потому что сырые логи потребления – это открытая книга о реальном поведении жильцов.

NILM: Разбираем жизнь на ватты

Как из общего графика потребления на квартиру понять, что именно ты делаешь? В дело вступает технология NILM (Non-Intrusive Load Monitoring – неинтрузивный мониторинг нагрузки). Смысл в том, что у каждого электроприбора есть уникальная энергетическая «сигнатура» или профиль нагрузки.

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

  • Холодильник дает предсказуемые цикличные пики каждый час.
  • Электрочайник или микроволновка – это резкий и мощный скачок мощности на 2–3 минуты.
  • Стиральная машина имеет сложный профиль: сначала долгий нагрев воды (ровный высокий пик), потом вращение барабана (пилы на графике).

Что данные говорят о вас?

Как OSINT-специалист или форензик-аналитик может использовать эти данные? Поверь, нам даже не нужно смотреть в окна или ломать твой роутер:

  • График сна и работы: Мы точно видим, во сколько включается первая лампочка и кофеварка утром, и во сколько гаснет телевизор ночью.
  • Эффект присутствия: Данные покажут, уехал ли ты в отпуск (на графике останется только фоновый шум холодильника) или сидишь дома на удалёнке.
  • Детекция аномалий: Если в квартире круглые сутки потребляется ровная колоссальная мощность – там либо ферма для майнинга, либо нелегальная гидропоника для выращивания запрещенных растений. Это классический триггер для правоохранителей.

Можно ли спрятаться?

Скрыться от этого почти невозможно. Умные счетчики – это обязательная инфраструктура; например, по закону их ставят по умолчанию во всех новых многоквартирных домах, введенных в эксплуатацию после 1 января 2021 года, а также при плановой замене старых счетчиков.

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

Так что просто прими этот факт: твой дом – больше не твоя слепая зона, это просто еще один узел генерации логов.

Форензика умных счётчиков: как ваш электросчётчик знает, когда вы дома
Оставьте заявку