TGViewer
Channel Public Channel
.NET Kings

.NET Kings

@netskings

Практическая кибербезопасность: сети, AppSec, OSINT и цифровая приватность

Поддержать проект:@v_meshke
По рекламе: @Molzka

Весь материал публикуется в познавательных целях и имеет образовательный характер. Автор не несет ответсвенность за чужие десйтвия
Subscribers
7.37K
Photos
635
Videos
0
Links
503
Recent Posts 18 shown
Post #719 492
🔎По одному имени, почте или номеру можно собрать на человека целое досье — легально, из открытых источников.

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

«OSINT: технология боевой разведки» от Академии Codeby — базовый курс, который ведёт практикующий осинтер.

Чему вы научитесь:
- Собирать информацию о физических и юридических лицах
- Работать с поисковыми системами, парсерами, API и тяжёлыми базами данных
- Применять GEOINT и физический OSINT
- Строить план расследования и оформлять готовый отчёт
- Применять OSINT в профайлинге, рекрутинге, комплаенсе и судебной практике
- Защищать себя — отдельный модуль по контр-OSINT и защите от слежки

Подойдёт специалистам по ИБ, безопасности бизнеса, HR и комплаенсу, аналитикам и журналистам — OSINT усиливает любую из этих ролей.

Курс стартует 26 октября

➡️️Программа и регистрация
🪧 По вопросам — @CodebyAcademyBot
  • ❤ 4
  • 🔥 3
  • 👍 2
  • 💩 1
Post #718 539
👁‍🗨Hello world~

GEOINT: Пожары, землетрясения и другие катастрофы на карте

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

NASA FIRMS показывает термальные аномалии и вероятные очаги пожаров по спутниковым данным. Это не буквальная граница огня, отдельные точки могут быть промышленными источниками тепла.

USGS Latest Earthquakesофициальная карта последних землетрясений с магнитудой, глубиной, временем и координатами события.

GDACS объединяет данные по землетрясениям, наводнениям, циклонам, пожарам, вулканам и засухам. Особенно удобно для быстрого обзора крупных событий и связанных отчетов.

Smithsonian Global Volcanism Program ведет базу текущих и исторических извержений. Для самой свежей информации лучше смотреть Weekly Volcanic Activity Report, сайт отдельно предупреждает, что его обзорная карта пока не отображает активность в реальном времени.

PowerOutage собирает данные об отключениях электричества. Лучше всего покрыты США, Канада и Великобритания, по другим регионам информация может быть ограничена.

• У каждого источника свои задержки и критерии, сопоставляйте событие с местными службами, спутниковыми снимками и временем публикации. Удачи!

#GEOINT

• Поддержать автора монеткой:
@v_meshke
  • 👍 9
  • ❤ 3
  • 🦄 1
Post #717 663
👁‍🗨Hello world~

Runit против systemd: Где минимализм начинает мешать

Я уже рассказывал, почему мне нравится минимализм runit, но было бы неправильно говорить только о его преимуществах, потому что небольшое количество компонентов не всегда делает систему удобнее.

У runit нет полноценного декларативного управления зависимостями. В systemd можно отдельно указать, какой сервис необходим и в каком порядке их нужно запускать, а в runit подобная логика обычно переносится в shell-скрипты.

В runit также нет встроенного аналога systemd.timer, поэтому для выполнения команд по расписанию понадобится cron или другой отдельный инструмент.

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

Логирование в runit остаётся простым и понятным, однако оно не предоставляет всех возможностей journald, например поиска по структурированным полям, конкретной загрузке системы, пользователю или cgroup.

chpst позволяет запускать программу от другого пользователя и устанавливать базовые ограничения, но у runit нет такой же тесной интеграции с cgroups и параметрами изоляции сервисов, как у systemd.

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

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

• Systemd удобнее там, где нужны сложные зависимости, таймеры, socket activation, централизованные журналы, управление ресурсами и тесная интеграция с остальными компонентами дистрибутива.

Выбор системы инициализации это не выбор между добром и злом, а выбор между небольшим набором простых инструментов и большой интегрированной системой. Используйте то, что подходит именно под ваши задачи, и не превращайте init в религию. Удачи!

Поддержать автора монеткой: @v_meshke
  • ❤ 12
  • 👍 2
  • 🔥 1
  • 🦄 1
Post #716 1.06K
👁‍🗨Hello world~

Изучаем сеть: Как компьютер определяет маршрут пакета

Представим, что компьютер с адресом 192.168.1.10/24 хочет отправить пакет другому устройству. Сначала ОС должна определить, находится ли получатель в локальной сети или за маршрутизатором.

Для этого IP-адрес сопоставляется с маской подсети. В нашем примере сеть имеет адрес: 192.168.1.0/24

• Если получатель имеет адрес 192.168.1.50, он находится в той же сети, поэтому компьютер узнаёт его MAC-адрес и отправляет Ethernet-кадр напрямую.

• Если же получатель имеет адрес 8.8.8.8, он не относится к сети 192.168.1.0/24, поэтому кадр отправляется на шлюз по умолчанию, например 192.168.1.1.

• Здесь есть важный момент: в IP-заголовке адресом назначения останется 8.8.8.8, однако MAC-адресом назначения будет адрес локального маршрутизатора. Маршрутизатор извлечёт IP-пакет из кадра, проверит свою таблицу маршрутизации и отправит его дальше в новом кадре.

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

• Если подходящего маршрута нет, применяется маршрут по умолчанию, а если отсутствует и он, система сообщает, что сеть недоступна.

IP определяет конечного получателя, а MAC следующее устройство, которому нужно передать кадр на текущем участке пути. В следующем посте разберём, как компьютер узнаёт этот MAC-адрес. Удачи!

#ИзучаемСеть

Поддержать автора монеткой: @v_meshke
  • 🥰 15
  • ❤ 5
  • 👍 3
  • 🦄 2
Post #715 1.1K
👁‍🗨Hello world~

OSINT во ВКонтакте: История профиля и проверка старых данных

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

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

История страницы помогает находить:

• предыдущие имена и фамилии;
• старые фотографии профиля;
• изменённые короткие адреса;
• прошлые города, места работы и учёбы;
• старые описания и связанные сайты;
• страницы, с которыми профиль был связан раньше.

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

• Некоторые другие инструменты я уже освещал на своем канале, например: VK Paranoid Tools, 220VK, infoapp, и список ботов для работы с ВК (часть уже перестала работать).

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

• Поиск по точной фразе
• Обратный поиск изображения
• Старые репосты и комментарии
• Публикации сообществ
• Веб-архивы
• Страницы знакомых и организаций


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

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

Инструменты со временем исчезают, а правильная методика остаётся: найти данные, сохранить источник, проверить их независимо и только после этого делать выводы. Удачи!

#OSINT

Поддержать автора монеткой: @v_meshke
  • 🔥 8
  • ❤ 3
  • 🦄 2
Post #714 1.08K
👁‍🗨Hello world~

Как работает антивирус: API Hooking и системные вызовы

• Мы уже упоминали API Hooking, теперь разберемся, что именно перехватывает EDR и зачем ему это нужно.

Обычная программа на Windows взаимодействует с операционной системой через Win32 API. Например, для получения доступа к процессу она может вызвать OpenProcess из kernel32.dll.

• Упрощенная цепочка выглядит так:

OpenProcess -> NtOpenProcess -> syscall -> ядро Windows

Высокоуровневая функция проверяет и преобразует аргументы, после чего управление может перейти к функции Native API из ntdll.dll. Та формирует системный вызов, который передает выполнение в ядро.

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

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

Особенно интересны операции с памятью, процессами и потоками: по отдельности они могут быть легитимными, но их определенная последовательность характерна для инъекции кода или выполнения нагрузки в памяти.

Важно понимать, что API Hookingне единственный источник данных. EDR также может использовать драйверы, системные callbacks, файловые фильтры, анализ памяти и ETW.

• Поэтому обход user-mode hook не означает обход всей защиты. Программа может миновать одну точку наблюдения, но оставить события на другом уровне.

API Hooking позволяет увидеть не только какую функцию вызвали, но и кто, откуда и с какими аргументами это сделал. Удачи!

#AV

Поддержать автора монеткой: @v_meshke
  • ❤ 10
  • 👍 3
  • 🦄 3
Post #713 950
👁‍🗨Hello world~

Изучаем сеть: HTTP/1.1, HTTP/2 и HTTP/3

Представьте страницу, которой нужны HTML, CSS, JavaScript и два изображения. Браузер отправит пять HTTP-запросов. Их смысл почти не зависит от версии протокола, методы, коды ответа и назначение полей сохраняются. Меняется то, как запросы и ответы представлены и передаются по сети.

HTTP/1.1 использует текстоподобный формат сообщений поверх TCP. Соединение можно сохранять для следующих запросов, чтобы не устанавливать его заново. Пайплайн позволяет отправить несколько запросов подряд, но ответы должны возвращаться по порядку. Независимых параллельных потоков у версии нет, поэтому браузеры обычно открывают несколько TCP-соединений.

HTTP/2 кодирует сообщения в бинарные кадры, сжимает поля заголовков и ведёт несколько потоков внутри одного TCP-соединения. CSS, скрипт и изображения можно получать параллельно, не создавая для каждого ресурса отдельное соединение. Так уменьшается задержка из-за ожидания предыдущих ответов на уровне HTTP.

Но HTTP/2 не устранил все блокировки, TCP передаёт данные как один упорядоченный поток байтов. Если пакет потерялся, следующие данные не попадут к приложению, пока потеря не восстановлена. Поэтому временно задержаться могут все HTTP/2-потоки этого соединения, даже если потеря относится к одному из них.

HTTP/3 переносит ту же семантику HTTP на QUIC. Он работает поверх UDP, но сам обеспечивает надёжную доставку и контроль перегрузки, а TLS 1.3 встроен в установление соединения. Запросы идут в независимых QUIC-потоках. Потеря данных в одном потоке не блокирует доставку данных остальных потоков из-за общего порядка, хотя контроль перегрузки может замедлить всё соединение.

Обычно клиент узнаёт о поддержке HTTP/3 и согласует протокол с сервером, если UDP недоступен, он может вернуться к HTTP поверх TCP. HTTP/3 не всегда быстрее, результат зависит от задержки, потерь, повторного подключения, реализации и доступности UDP.

• HTTP/1.1 передаёт сообщения по TCP без собственного мультиплексирования. HTTP/2 мультиплексирует HTTP-потоки поверх одного TCP-соединения. HTTP/3 переносит их на независимые потоки QUIC. Удачи!

#ИзучаемСеть

• Поддержать автора монеткой: @v_meshke
  • ❤ 14
  • 👍 5
  • 🦄 4
Post #712 979
👁‍🗨Hello world~

GEOINT: Как проверить время и место по погоде и теням

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

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

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

Windy показывает ветер, облачность, осадки, температуру, волны и множество других слоев. Есть возможность сравнивать разные погодные модели.

Zoom Earth удобен для просмотра спутниковой облачности, штормов, дыма и погодной обстановки почти в реальном времени.

LightningMaps отображает грозовые разряды по данным сообщества Blitzortung. Если на видео видна гроза, карта поможет проверить регион и примерное время.

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

#GEOINT

• Поддержать автора монеткой: @v_meshke
  • 👍 11
  • ❤ 6
  • 👎 1
  • 🦄 1
Post #711 1K
👁‍🗨Hello world~

Runit: Возможности каталога сервиса

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

Файл down запрещает автоматический запуск сервиса. runsv продолжит следить за каталогом, но будет ждать команды от пользователя.
Создать его можно командой:

touch /etc/sv/example/down


После этого сервис можно однократно запустить вручную:

sv once example


• В отличие от sv up, команда sv once не станет перезапускать программу после её завершения, что удобно для проверки нового сервиса.

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

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

#!/bin/sh
exec nc -z 127.0.0.1 8080


• Если check завершается с кодом 0, сервис считается готовым. Такая проверка используется командами sv start, sv restart и sv check.

• Для запуска программы от имени отдельного пользователя применяется chpst:

#!/bin/sh
exec chpst -u serviceuser:servicegroup \
/usr/bin/example --foreground


• Кроме смены пользователя, chpst умеет изменять переменные окружения, лимиты ресурсов, корневой каталог процесса и некоторые другие параметры.

• Через sv также можно отправлять процессу сигналы:

sv hup example
sv term example
sv kill example


Полноценного декларативного графа зависимостей, как в systemd, у runit нет. При необходимости один сервис можно дождаться из run скрипта:

sv start database || exit 1
exec /usr/bin/example --foreground


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

Каталог сервиса в runit это не просто место для одного скрипта, а небольшой интерфейс управления его запуском, остановкой, проверкой и восстановлением. Работа down, finish и управляющих сигналов описана в документации runsv и sv. Удачи!

Поддержать автора монеткой: @v_meshke
  • ❤ 10
  • 🔥 2
  • ☃ 1
  • 🥰 1
Post #710 1.02K
👁‍🗨Hello world~

GEOINT: Нашёл похожее место. Как проверить, что это оно?

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

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

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

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

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

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

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

• Сохраните координаты, ссылку на панораму, даты и происхождение опорных изображений, а также скриншоты сравнений. Итог должен отвечать на два вопроса: "Где это?" и "Почему мы уверены, что это именно оно?" Удачи!


#GEOINT

• Поддержать автора монеткой: @v_meshke
  • ❤ 12
  • 🕊 4
  • ☃ 1
  • 🥰 1
  • 🐳 1
Post #709 1.11K
👁‍🗨Hello world~

SOCMINT: Что о человеке рассказывают социальные сети

SOCMINT (Social Media Intelligence) — направление разведки, связанное со сбором и анализом информации из социальных платформ. Его часто считают частью OSINT, но источниками здесь выступают именно соцсети, мессенджеры, форумы и видеоплатформы.

• Аналитика интересует не только содержание отдельных публикаций. Изучаются:

• Имена, никнеймы и описания профилей
• Фотографии, видео и геометки
• Время публикаций и история активности
• Подписки, упоминания и связи между аккаунтами
• Повторное использование никнеймов и аватаров
• Реакции сообщества на события


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

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

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

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

Поддержать автора монеткой: @v_meshke
  • ❤ 17
  • 🔥 4
Post #708 1.21K
👁‍🗨Hello world~

Изучаем сеть: IPv4, маска подсети и CIDR

IPv4 адрес состоит из 32 бит, которые для удобства записываются в виде четырёх десятичных чисел от 0 до 255, например: 192.168.1.10.

Однако одного IP адреса недостаточно, потому что устройству нужно понимать, какая часть адреса обозначает сеть, а какая конкретный узел внутри неё. Для этого используется маска подсети.

• Например, адрес: 192.168.1.10/24. Запись /24 означает, что первые 24 бита относятся к адресу сети, а оставшиеся 8 бит используются для адресов устройств. Такая запись называется CIDR префиксом, а соответствующая маска выглядит так: 255.255.255.0

• Для этого примера получаем:

Адрес сети: 192.168.1.0
Диапазон адресов узлов: 192.168.1.1–192.168.1.254
Широковещательный адрес: 192.168.1.255

Всего подсеть /24 содержит 256 адресов, но в обычной IPv4-подсети первый адрес обозначает саму сеть, а последний используется для широковещательной рассылки, поэтому устройствам остаётся 254 адреса.

Чем больше число после /, тем меньше получается подсеть. Например, /16 содержит значительно больше адресов, чем /24, а /30 часто применяется для небольших соединений между сетевыми устройствами.

CIDR позволяет гибко делить адресное пространство на сети нужного размера, не ограничиваясь старыми классами A, B и C.

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

#ИзучаемСеть

Поддержать автора монеткой: @v_meshke
  • ❤ 19
  • 🔥 5
  • 😱 2
Post #705 1.48K

Forwarded from STEIN: ИБ, OSINT

🔥 Двадцать лет конспирации — и один кадр Google Maps

Сицилийский мафиози Джоаккино Гаммино получил пожизненный срок за убийство, но в 2002 году сумел сбежать из римской тюрьмы Ребиббия во время съёмок фильма на её территории. Следующие двадцать лет он провёл в Испании под именем Мануэль, держал овощную лавку и подрабатывал поваром в собственном ресторанчике.

Прокуратура Палермо годами вела традиционное расследование и подозревала, что беглец осел где-то в Испании. Точку в поисках поставил случайный кадр — автомобиль Google Street View, объезжавший испанский городок Галапагар под Мадридом ещё в 2018 году, заснял двух мужчин, беседующих у входа в овощную лавку. Один из них показался следователям похожим на состарившегося Гаммино.


— Снимок стал не единственной, но решающей зацепкой, подтвердившей многолетнюю оперативную работу. 17 декабря 2021 года Гаммино арестовали.

Его первые слова полиции: «Как вы меня нашли? Я даже родным не звонил десять лет» 😬

#GEOINT | 😈 @secur_researcher
  • ❤ 22
  • 👍 4
  • 👻 4
  • 👀 1
Post #703 1.34K
👁‍🗨Hello world~

.NET Kings: Навигация по каналу

• Авторский канал про информационную безопасность, компьютерные сети, OSINT/GEOINT и устройство технологий. Здесь мы разбираемся, как и почему всё работает, а не просто копируем команды из чужих гайдов.

• Если ты здесь впервые, начни с этих материалов:

SunCalc: Как проверить время съёмки по тени
VLAN Segmentation или Почему "плоская" сеть мечта хакера
Same-Origin Policy: Как браузер изолирует сайты
Пейджинг, свопинг и трешинг: Как Linux работает с памятью

• Полные циклы в правильном порядке:

Изучаем сеть: все посты
Интернет не анонимен…?: все посты
Социальная инженерия: все посты

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

• Этот пост будет обновляться вместе с каналом. Приятного чтения!
  • ❤ 18
  • 🔥 9
  • 🦄 5
  • 🍓 2
  • 👍 1
Post #702 1.29K
👁‍🗨Hello world~

deepdarkCTI: Каталог источников киберугроз

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

deepdarkCTI — это репозиторий со ссылками на ресурсы из Deep и Dark Web, социальных сетей и обычного интернета.

Это не сканер даркнета и не готовая CTI платформа, а большой каталог источников, среди которых:

• Сайты ransomware группировок
• Форумы и площадки с утечками
• ТГ каналы Threat Actors
• Ресурсы о фишинге и инфостилерах
• Базы эксплойтов и вредоносного ПО

• Например там можно найти сайты групп вымогателей и их зеркала или связанные с киберугрозами телеграм ресурсы.

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

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

deepdarkCTI не предоставляет готовую разведку, но помогает найти места, с которых можно начать её сбор. Удачи!

#CTI #OSINT #GitHub

Поддержать автора монеткой: @v_meshke
  • 🙈 7
  • ❤ 5
  • 🔥 5
  • 🦄 2
Post #701 1.19K
👁‍🗨Hello world~

OSINT во ВКонтакте: Анализ публикаций, фотографий и связей

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

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

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

Отдельно изучаются фотографии. На них полезны не только лица, но и:

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


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

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

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

• То же относится к группам и подпискам. Вступление в сообщество может говорить об интересах, месте проживания, профессии или участии в мероприятии, но человек также мог вступить туда случайно или много лет назад. Важнее не само наличие подписки, а активность внутри сообщества.

• Полезно разделять найденную информацию на три категории:

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

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

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

#OSINT

Поддержать автора монеткой: @v_meshke
  • ❤ 12
  • 🦄 9
  • 🔥 4
  • 👍 1
Post #700 1.19K
👁‍🗨Hello world~

Как работает антивирус: Import Address Table и API Hashing

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

Список импортируемых библиотек и функций хранится в структуре PE-файла, которая называется Import Address Table (сокращенно IAT).

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

• Посмотреть импортируемые функции можно с помощью Visual Studio:

dumpbin /imports .\binary.exe


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

• Но даже в таком случае внутри файла могут остаться строки вроде VirtualAlloc, WriteProcessMemory или CreateRemoteThread. Поэтому применяется API Hashing.

• При API Hashing программа хранит не название функции, а вычисленный из него хеш. Во время запуска она перебирает экспортируемые функции нужной DLL, вычисляет их хеши и ищет совпадение.

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

• Средства защиты могут обратить внимание на:

• Почти пустую или искусственно заполненную IAT
• Перебор Export Address Table
• Скрытые названия DLL и функций
• Последовательность реально выполненных системных операций

• Более того, API Hashing широко встречается во вредоносном ПО и сам может использоваться как эвристический признак. MITRE относит этот подход к Dynamic API Resolution.

IAT показывает намерения программы до запуска, а API Hashing пытается эти намерения скрыть. Но после вызова функции защита снова видит действие. Удачи!

#AV

Поддержать автора монеткой: @v_meshke
  • ❤ 12
  • 🦄 4
  • 🥰 3
  • 👏 1
Post #699 1.29K
👁‍🗨Hello world~

GEOINT: Как посмотреть, что было в этом месте раньше

Обычная карта показывает текущее состояние местности, но в расследовании часто важнее понять, когда появился объект, куда исчезла дорога или как менялась территория.

World Imagery Wayback хранит прошлые версии спутниковой подложки Esri. Можно сравнивать разные даты и искать изменения зданий, дорог и ландшафта.

Copernicus Browserактуальная замена старому публичному EO Browser. Дает доступ к данным Sentinel, фильтрам по датам и облачности, визуализациям и сравнению снимков.

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

OldMapsOnline собирает исторические карты библиотек и архивов. Выбираем место и временной период, после чего смотрим, какие карты сохранились для этой территории.

Historic Aerials позволяет сравнивать аэрофотоснимки и топографические карты разных лет. Покрытие в основном американское, а часть загрузок платная, но сам просмотр и сравнение слоев работают.

OpenTopography пригодится, когда изображения недостаточно: тут есть DEM, LiDAR, рельеф и другие высотные данные.

Разрешение, облачность и дата съемки всегда важнее красивой картинки. Сначала проверяйте метаданные, и только потом делайте выводы. Удачи!

#GEOINT

• Поддержать автора монеткой: @v_meshke
  • ❤ 16
  • 🦄 3
  • 👍 1
Older posts →

About this channel

How can I read @netskings without a Telegram account?
TGViewer shows the public web preview Telegram publishes for .NET Kings: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does .NET Kings have?
.NET Kings (@netskings) has 7.37K subscribers on Telegram, refreshed roughly every 30 minutes.
Does .NET Kings know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →