APP различные учебные пособия по захвату пакетов
APP различные учебные пособия по захвату пакетов

Предисловие

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

  • 1、Burpsuite
  • 2、Fiddler
  • 3、Burpsuite + Fiddler
  • 4. Маленькая желтая птичка HttpCanary
  • 5、Charles
  • 6、Charles + Burpsuite
  • 7、Postern + Charles + Burpsuite
  • 8、Frida + Xposed + Objection + Burpsuite
  • 9. Фрида пишет код-перехватчик для перехвата пакетов

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

1. Используйте Burpsuite для захвата пакетов из приложения.

среда:

  • Burpsuite Professional v2021.2
  • Pixel3 Android11 ,уже root + Xposed

существовать Burpsuite в Proxy — Options — Proxy Listeners — Add ЗатемсуществоватьSpeciffic addressвыбирать172сегмент сетиизчто IP Адрес (т.е. локальная сеть IP адрес)

существоватьсотовый телефонвсетьнастраивать Также хочунастраивать Ручной режим прокси , вход IP и порт Все связано с Burpsuite Такой же

Затемсуществоватьсотовый доступ к браузеру телефона https://burp Перейдите по этому адресу, чтобы загрузить и установить burp сертификат после соскабливания HTTPS Для трафика требуется сертификат, нажмите CA Certificate Готово к загрузке

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

Затем после установки вы можете захватывать пакеты данных приложения.

2. Используйте Fiddler для захвата пакетов из приложения.

среда:

Скрипач v5.0.20204.45441 Pixel 3, Android 11, root + Xposed

1、существовать Fiddler в Tools — Options

2、существовать options Переключиться на всплывающее окно HTTPS , установите флажки, отмеченные на рисунке 2 варианты и нажмите OK

3. После проверки появится запрос на установку сертификата. Продолжайте нажимать согласно подсказкам. да Установка прошла успешно 4、затемсуществоватьTools — Options — Connections, порт напиши 9999(Можно изменить по желанию),и Проверять Allow remote computers to connect , нажмите OK

5. Перезагрузить Fiddler ( Изменение конфигурации скрипача вступит в силу только после перезапуска. ) 6. Измените настройки сети мобильного телефона.

7. существует браузер для доступа к вышеуказанным настройкам IP Адрес и номер порта, я здесь да 172.20.10.5:9999(Это зависит от реальной ситуации),Затем FiddlerRoot certificate Загрузите сертификат и установите его самостоятельно

Затем после установки вы можете захватывать пакеты данных приложения.

3. Используйте Burpsuite + Fiddler для захвата пакетов приложений.

Конфигурация Burpsuite использоватьизактерское мастерствомониторда 127.0.0.1:8080

существовать Fiddler в Tools — Options — Gateway Конфигурацияизактерское мастерствомониторда 127.0.0.1:8080(здесьиз Конфигурацияи Burpsuite Агент последовательный)

затемсуществовать Tools — Options — Connections , порт напиши 9999(Можно изменить по желанию),и Проверять Allow remote computers to connect , нажмите OK

Изменить настройки мобильной сети

То есть да значит от сотовый телефонизпотокпройти Fiddler руководитьвперед кBurpsuite

4. Используйте маленькую желтую птичку HttpCanary для захвата пакетов APP.

среда:

HttpCanary v3.3.6 Pixel3 Android11, рутированный + Xposed Сначала установите приложение HttpCanary APP.

HttpCanary поддерживать HTTP/HTTPS/HTTP2 Захват и анализ пакетов сетевых данных фактически аналогичен Charles Аналогично, чтобы схватить HTTPS Нужно использовать MITM промежуточная технологическая пара TLS/SSL Пакет данных расшифровывается и выводится в виде обычного текста, поэтому вам необходимо установить самоподписанный пакет. CA Сертификат

Здесь хотелось бы упомянуть о проблеме доверия системы Android сертификатам по умолчанию.

из-за моего Pixel3 сотовый телефондауже root Понятно,И да Android11 система,существовать Андроид 7.0 Перед установкой системы скачайте Сертификат напрямую и загрузите его в и все,Андроид 7.0 И вышеуказанная система верно изменена в политике безопасности Сертификатиз, что означает, что из sdcard Установить уровень пользователя CA Не сможет перехватить приложениепоток. Нам нужно назвать Сертификат, чтобы вычислить суффикс хеш-значения. .0 илипрямойсуществоватьсотовый телефонвиз учетные данные пользователя Вы можете увидеть суффикс .0из Файл сертификата имя,Затемимпортироватьприезжатькорень Сертификат Оглавление:/system/etc/security/cacerts Сделать систему заслуживающей доверия по умолчанию. Поэтому способ установки Сертификата также отличается: по умолчанию там устанавливается существующий польский зователь.

Сначала установите Сертификат в порядке, показанном на рисунках ниже.

Сначала экспортируйте HttpCanaryкорень Сертификатдокумент .pem

Нажмите на него и Вот и все завершится установка Сертификат

Итак, вот он, где он живет, но дапотому что я из оборудования уже сделал root Понятно,взять это Сертификат Установитьсуществовать система Там ты можешь ползти HTTPS поток

Затем вам нужно переместить файл Сертификатиз в каталог системы проживания, откуда вы сможете экспортировать выборы. System Trusted(.0)

Затем переместите Сертификатруководить в каталог «Система Сертификат проживания». /etc/security/cacerts/

существовать Android 10 И вышеуказанный Сертификатприезжения установки /system/etc/security/cacerts/появится system Невозможно написать, чтобы использовать mount Об ошибке сообщается следующим образом:

Язык кода:javascript
копировать
'/system' not in /proc/mounts
'/dev/block/dm-4' is read-only

потому что Android 10 использовать Понятно Некоторые политики безопасности, разбить систему /systeminstallt доступен только для чтения,Даже если ты root Понятно, что это бесполезно. HTTPCanary Когда такое программное обеспечение захватывает и анализирует пакеты, многие app Только признатьсистема Сертификат,Отрицатьпользователь Сертификат Есть два пути решения подобной ситуации: 1、существовать Magisk в Установка Модуль «Переместить сертификаты»,Плагин умеет автоматически конвертировать все пользовательские Сертификаты в системные Сертификаты в один клик.

https://github.com/Magisk-Modules-Repo/movecert

использоватьметод:все Сертификат Установитьдляпользователь Сертификатназад,Установите этот плагин,и перезапустите.

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

Язык кода:javascript
копировать
# Создайте временный каталог для сохранения текущего Сертификата.
mkdir /sdcard/tmp/
# копироватьсуществующий Сертификатприезжатьвременный каталог
cp /system/etc/security/cacerts/* /sdcard/tmp/
# Создать монтирование памяти
mount -t tmpfs tmpfs /system/etc/security/cacerts
# Вернуть существующий Сертификаткопировать tmpfs устанавливать
mv /sdcard/tmp/* /system/etc/security/cacerts/
# возобновлять perms и selinux
chown root:root /system/etc/security/cacerts/*
chmod 644 /system/etc/security/cacerts/*
chcon u:object_r:system_file:s0 /system/etc/security/cacerts/*

Вперед, продолжать Приходить Посмотри на это Сертификатиз Интерфейсуже После прочтенияприезжатьуже Цзинпа пользователь из Сертификат Установитьсуществовать система Вот оно

Хотя HttpCanary да Очень хороший инструмент перехвата пакетов, но его нельзя связать с другими инструментами перехвата пакетов для пересылки и захвата пакетов, например, с тестером на проникновение. ествоватьиспользовать Оно руководить После захвата пакета вы можете напрямую существоватьсотовый телефонначальстворуководить Изменить пакет данныхруководитьтест,нодавозможныйсуществоватьсотовый Эффективность работы на телефоне не такая высокая, поэтому я выложил тестовый пакет данных копировать приезжать. Burpsuite Изменение параллельных пакетов также отнимет много времени.

подда HttpCanary принцип работы

HttpCanary использует VPN для пересылки сетевых пакетов на локальный прокси-сервер. Локальный прокси-сервер пересылает пакеты данных на виртуальный шлюз. Виртуальный шлюз перехватывает и анализирует протоколы с использованием различных стратегий и, наконец, отправляет данные на терминал.

Самый важный уровень — виртуальный шлюз. Virtual Gateway , верно требует, чтобы протокол руководил идентификацией, анализировал ожидание ожидания, включая перехват пакетов и внедрение, чтобы обеспечить обработку этого уровня, например HTTPS «Человек посередине» (MITM) анализирует пакеты открытого текста и т. д.

Итак, обратите внимание на рисунок выше. Принцип работуруководить После анализа поищу другой способ перехвата пакетов (он тоже работает и HttpCanary несколько похоже ) можно заменить на HttpCanary —— Postern + Charles + Burpsuiteкомбинация,Что касается того, как работать,Можетсуществоватьстатьяпод 7. Используйте Постерн + Charles + Burpsuite перехватывает пакеты из приложения Читать далее

5. Используйте Charles для захвата пакетов приложений.

среда:

Charles v4.6.2 Pixel3 Android11 ,уже root + Xposed charles да Отличный инструмент для перехвата пакетов, все платформы существуют, существуют. mac,windows,linux Его можно использовать как на web Вы также можете забрать посылку, которую носите. app упаковка charles К основным функциям относятся следующие: перехватывать Http и Https Сетевые пакеты. Поддержка повторно отправляет сетевые запросы для облегчения внутренней отладки. Поддержка Изменение параметров сетевого запроса. поддерживаются сетевые запросы, которые перехватываются и изменяются динамически. поддержка имитирует медленную сеть.

актерское мастерствосерверпринцип работы Как показано ниже:

Клиент инициирует запрос, запрос пересылается на сервер через charles, сервер возвращает ответ, а ответ пересылается клиенту через charles.

charles Он играет роль посланника, передающего информацию от A перешел к B, и отправьте ответ от B перешел к A,толькопотому Он работает связным и прекрасно знает содержание сообщения (неважно, исходное письмо или ответ), оно корректное. что Итак, Чарльз Также возможно подделать информацию и контент, то есть подделать запрос и ответ.

Адрес загрузки Чарльза:

https://www.charlesproxy.com/download/

Затем после установки самостоятельно его необходимо активировать

Адрес генерации регистрационного кода:

https://www.zzzmode.com/mytools/charles/

активация Charles существовать Help->Registered входить key игенерироватьизактивациякод Вот и все

настраиватьактерское мастерство,существовать Proxy — Proxy Settings ( ПРИМЕЧАНИЕ. На данный момент моя Windows Проксида удалить верный крючок, потому что чтоздесьядадуматьсуществоватьPCконец Понятьсотовый телефонная упаковка, так Нет необходимости открывать компьютер из местного актерского мастерство )

Заполняем порт прокси 8888(или Настроить,но Нетспособныйисистемаужезаниматьконецустный конфликт),и И крючокначальство Support HTTP/2 и Enable transparent HTTP proxying ,нажмитенижний правый угол OK Вот и все

Затемсоответственносуществовать PC конецисотовый телефонконец Установить Сертификат выбирать Help — SSL Proxying — Install Charles Root Certificate Вы можете скачать и установить его PC Подается

Сертификатхранилищевыбирать Доверенный орган, выдающий сертификат isroot

Возьми это Приходить Дай еще разсотовый Чтобы установить Сертификат на телефонный терминал, выполните следующие действия: выбирать Help — SSL Proxying — Install Charles Root Certificate on a Mobile Device or Remote Browser

После нажатия появится окно с предложением способа настройки. Следуйте подсказкам существующего. телефонконец Воляактерское мастерствонастраиватьдля компьютераиз ip:8888( Вот я да192.168.1.251:8888 ),Здесь надо в первую очередь убедиться, что сотовый телефоныи Компьютер подключен к той же беспроводной сети 。Затемсуществоватьсотовый телефониз браузер открывается http://chls.pro/ssl , следуйте инструкциям по загрузке Сертификат Вот и все。

если Charles Появится всплывающее окно, обязательно нажмите на него. Allow

Сначала установите Сертификат в порядке, показанном на рисунках ниже.

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

это такжеда Установитьсуществовать пользователь Есть, но дапотому что я из оборудования уже сделал root Понятно,взять это Сертификат Установитьсуществовать система Там ты можешь ползти HTTPS поток

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

Файл b905ae73.0 , в данный момент он находится в каталоге дасуществоватьпользователь /data/misc/user/0/cacerts-added/

затем скопируйте его в /etc/security/cacerts/ каталог системы

HTTPS-парсинг

Затемсуществовать Proxy — SSL Proxying Settings руководить SSL Proxying Settings настраивать Проверять enable SSL Proxying Флажок означает включение SSL Proxying актерское мастерство,исуществовать include Добавьте в столбец имя домена и номер порта. включать Элементы списка представляют Charles возможность отображать эти доменные имена SSL Запрос и ответ и открытый текст.

И описание также напоминает нам Charles Чтобы использовать SSL Proxying актерское мастерство,нуждатьсяруководить SSL Certificates,Прямо сейчас Сертификатзнак。Это мысуществоватьначальстволапшаужезавершенный Понятно。

Stop SSL Proxying Кнопки могут управлять SSL актерское мастерствоизвыключатель。(SSL-прокси должно быть включено)

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

6. Используйте Charles + Burpsuite для захвата пакетов APP.

выбирать Проверять Proxy — External Proxy Settings Просто да будет Charles Будучи агентом по мобильному телефону, Charles Отправьте посылку в Берпсьют, так что для Charles Например, бурпсьют стал одним External Proxy Server —— внешний прокси-сервер

Проверять HTTP и HTTPS Агент, здесь HTTP и HTTPS изактерское адрес мастерствасервера все да 127.0.0.1:8080(здесьиз Конфигурацияи Burpsuite Агент последовательный)

ужечерезнастраивать Понятновнешнийактерское мастерство Понятно, вы должны открыть отрыжка (конечно Понятно главное да открыть burp средняя пара 127.0.0.1:8080 мониторинг), иначе появится Больше не могу подключиться к Интернету из Феномен。существовать burp в строке меню Proxy в опциях Options Открыть через 127.0.0.1:8080 изактерское мастерство прослушивания (да должно быть включено по умолчанию из), существование Intercept Отключите перехват запросов в .

После выполнения вышеуказанных действий начните с сотового Откройте браузер для поиска контента на телефоне, он должен существовать Charles Найдите пакет, который хотите захватить, в списке в левой части окна, также вы сможете увидеть пакет данных из Charles вперед к Burpsuite Понятно

7. Используйте Postern + Charles + Burpsuite для захвата пакетов APP.

существоватьдействительный Понятьсотовый телефон App В сфере упаковки существует множество решений, классическое — да. FiddlerBurpsuite ,нода FiddlerBurpsuite Вы столкнетесь с проблемой, если App Для того, чтобы посредник не поймал посылку, мы специально настраиваем Понятно, не идите на актерское мастерство это вариант, то используйте его самостоятельно FiddlerBurpsuite Эти инструменты перехвата пакетов не могут перехватывать пакеты, поэтому невозможно думать, что цель безопасна только потому, что она не может перехватывать пакеты, не так ли? Загрузите полный пакет «Доехать» для «Понятно», который был получен из да Postern + Charles Эта комбинация, дапотому что Charles Не контролируется напрямую App,Charles дамониторприезжать Понятно Postern начальство,Postern СразудаодинVPN ,так App настраивать Не уходяактерское мастерство тоже бесполезно, оно проходит VPN все будет идтивперед к Charles из socks Агент, откройте еще раз Charles из External Proxy Server — (внешний прокси-сервер)вперед к Burpsuite для реализации захвата пакетов по принципу «человек посередине»

среда:

Postern 3.1.3 Charles v4.6.2 Burpsuite Professional v2021.2 Pixel3 Android11 ,уже root + Xposed

Первый Конфигурация Charles

существовать Proxy — Proxy Settings ,Проверять Enable SOCKS proxy руководитьнастраивать SOCKS актерское мастерство (Следуйте рисунку ниже), номер порта здесь настройки 16666(или Настроить,но Нетспособныйисистемаужезаниматьконецустный конфликт)

Конфигурацияактерское мастерство

Добавить прокси-сервер

Нажмите «Сохранить»

Правило конфигурации

Добавить правило

Следуйте рисунку нижеруководитьдействоватьи Нажмите «Сохранить»

Включить/выключить постер

Тогда, пока вышеизложенное Используйте Чарльза + Burpsuite перехватывает пакеты из приложения После завершения настройки откройте цель, которую хотите захватить. APP Вы можете видеть, что пакет данных о прибытии был загружен. к Burpsuite Понятно

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

Сравнение Чарльза и Скрипача

Fiddler Хотя также можно достроить вересотовый телефониз сумку, но да если App настраивать Понятно Не уходяактерское мастерство,Что Fiddler Просто потерпите неудачу. Fiddler Каждый раз нужно вручную вносить изменения в сеть. мастерство,нода Charles и Postern Благодаря сотрудничеству по связям нет необходимости вручную изменять настройки сети, достаточно просто Конфигурация. Postern и Charles изConnect может Понятно, и может быть самым верным из App руководить Понять Сумка,Нетиспользоватьактерское мастерство, закрыть напрямую Postern Вот и все

На данный момент, Скрипач и Charles да очень популярен, но да не так популярен, как верно. Postern + Charles Сфера применения шире.

8. Используйте Frida + Xposed + Objection + Burpsuite для захвата пакетов APP.

Привязка SSL-сертификата

Что делает привязка да Сертификата? На самом деле в Интернете много имен по имени из, Привязка. SSL-сертификат, английское название: SSL Pinning Или Сертификат проверки. Короче говоря, как бы вы это ни называли, вам нужно проверить, заслуживает ли Сертификат доверия. мы знаем из HTTP приезжать HTTPS Уровень понимания добавляется во время передачи данных. SSL/TLS позволяет шифровать наши данные и больше не видеть их в виде обычного текста. В это время будет Понятно CA Сертификат。

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

(1)Проверка отдельного товара-клиентконец Служба проверкиконециз Сертификат。 (2) Двусторонняя аутентификация - клиенту необходимо не только подтвердить личность сервера, но и существовать. app Поместите один внутрь Сертификат;Служитьконец Также проверюклиентконецвнутрииз Сертификат。

Односторонняя проверка

Android Сертификат проверки уже доступен в системе. API, нам просто нужно реализовать checkClientTrustedcheckServerTrustedverify ждатьметод Вот и все。

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

Преодолейте SSL-закрепление с помощью Xpose + JustTruestMe

Xposed да Фреймворк, который может изменить поведение программы, не затрагивая никаких АПК. Он имеет множество модулей, и каждый модуль можно использовать для выполнения различных функций. JustTrustMe даone используется для отключения и обхода SSL Проверка сертификата на основе Xposed модуль. Просто доверься мне да Воля APK Все в используются для проверки SSL Сертификатиз API Всеруководить Понятно Крюк, тем самым минуя проверку Сертификата.

среда:

Pixel3 Android11 ,уже root + Xposed SSLUnpinning 2.0 плагин JustMePlush плагин Frida-server-15.1.27-android-arm64 PC конециз Frida v15.1.27 Objection v1.11.0

Загрузите сначала Xposed рамкаплагин SSLUnpinning + JustTrustMe , SSLUnpinning плагин Можетпрямойсуществовать Xposed Храните загрузки, в то время как JustTrustMe плагиннуждатьсяприезжатьподиз GitHub Ссылка для скачивания самостоятельно

Я буду использовать это здесь SSLUnpinning 2.0 плагини JustMePlush плагин, эффект После установки жеиз, подключите, не забудьте запустить плагин, а затем Перезагрузить телефон Оно вступит в силу только после подключения

а затем использовать Objection руководитьобойти

Objection даа модель на основе frida из hook рамка,потому что frida Нам нужно написать скрипт самим, что хлопотнее в использовании, объект Внутринабор Понятносуществовать Андроиди IOS Некоторые из них обычно используются в реверс-инжиниринге hook Скриптом мы можем руководить через простую командную строку hook Динамическое вмешательство, очень удобно

потому что Objection да на основе Frida из Так что сначала вам нужно установить его Frida Затем вы можете установить Objection

pip3 install objection

Развернуть согласно вышеописанной операции руководить Frida После настройки среды запустите серверная программа Фрида

Затем используйте Objection Inject приезжать к цели APP в приложении

возражение -g имя пакета изучить

если я не знаю APP имя пакета, вы можете использовать следующую команду для просмотра, но да все равно требует запуска Понятно серверная программа Фрида

frida-ps -Ua

Затемвходитьзакрытие APP из SSL Команда проверки

android sslpinning disable

исуществоватьсотовый телефонвсетьнастраивать Также хочунастраивать Ручной режим прокси, вход IP ипорт Все связано с Burpsuite Такой же

Вот и все Полный обход SSL Pinning руководить Понять Сумка

если появится и да всё равно не обойти SSL Pinning из ситуации вы можете обратиться к следующим двум статьям

Двусторонняя проверка

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

(1) Пусть клиент подумает burp дасервер , этот шаг на самом деле касается взлома SSL закрепление, метод точно такой же, как описанный выше процесс. (2) Пусть сервер подумает burp да клиент , для этого шага необходимо импортировать клиент из Сертификатприезжать burp, сертификат клиента обязательно будет храниться в существующем локальном коде, а также может быть пароль. В этом случае вам необходимо перевернуть клиент. app, найдите пароль «Сертификат проживания» и преобразуйте его в pkcs12 Импорт формата приезжать burp。User options -> SSL -> Client SSL Certificate

Язык кода:javascript
копировать
Двусторонняя проверкаизapp Случай:
https://www.wandoujia.com/apps/8280413

Обычно приложение размещает Сертификат в каталоге существующих ресурсов. app/assetВниз,назадукрашенный名для p12pfxиздокумент。Конечновозможныйзамаскируется под что-то другоедокумент,Например, файл изображения ждать.

Как узнать пароль для посещения Сертификат? Как правило, вы можете либо использовать обратный анализ, чтобы найти пароль проживания, либо использовать перехват API java.security.KeyStore, чтобы найти пароль.

(1)Jadx Найдите название сертификата или цепочку сертификатов. x509certificate Проанализируйте и определите Кусочекприезжатьключ Кусочекнабор。

(2)серверверноклиентконецруководить В процессе проверки,клиентконец Воля Сертификат Открытый ключ отправлен насервер,и изсерверполучать session èДля процесса расшифровки закрытого ключа требуется API руководитьдействовать,API житьсуществовать В java в рамках структуры слоев, так hook Код платформы java.security.KeyStore,Сделайте так, чтобы пароль выплеснулся. Вот картинка из футляра APK Распакуйте егоназадсуществовать assets В каталоге есть такой client.p12 из Сертификат, но не знает его пароля и поэтому хочет использовать Frida цель APP руководить перехватите и позвольте ему выдать пароль.

❗️❗️❗️ Уведомление:.p12назадукрашенныйиз Сертификатдокументда Зависит от .crtСертификати key документобъединитьистановиться.p12Сертификатдокумент,иисуществоватьобъединитьигенерировать .p12 Файл необходимо зашифровать (то есть добавить пароль Сертификата) без добавления пароля. Burpsuite дане могу импортироватьиз

Язык кода:javascript
копировать
function hook_KeyStore_load() {
    Java.perform(function () {
        var StringClass = Java.use("java.lang.String");
        var KeyStore = Java.use("java.security.KeyStore");
        KeyStore.load.overload('java.security.KeyStore$LoadStoreParameter').implementation = function (arg0) {
            console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new()));
            console.log("KeyStore.load1:", arg0);
            this.load(arg0);
        };
        KeyStore.load.overload('java.io.InputStream', '[C').implementation = function (arg0, arg1) {
            console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new()));
            console.log("KeyStore.load2:", arg0, arg1 ? StringClass.$new(arg1) : null);
            this.load(arg0, arg1);
        };

        console.log("hook_KeyStore_load...");
    });
}

setImmediate(hook_KeyStore_load)

```ini

Сценарий можно найти в блоге старшего брата здесь скопировать и назвать `ssl.js` (настраиваемый) [Сертификат клиента проверки сервера захвата пакетов](https://blog.csdn.net/qq409732112/article/details/120061517 «Сертификат клиента проверки сервера захвата пакетов»)

Выполните следующую команду

> frida -U -f APP имя пакета -l ssl.js --no-pause

![png](https://xrsec.s3.bitiful.net/IMG/2022110311342902598.png?w=1280&fmt=png)

Можно обнаружить, что мы проходим hook Код платформыпридетсяприезжать Понятно `client.p12`Пароль сертификата: `111111`,Затемсуществовать Burpsuite ввыбирать `User options — TLS — Client TLS Certificates — Add` руководитьимпортировать Сертификат,`Destination host`Писать`*`руководитьсоответствоватьвсеадрес,Сертификаттипвыбирать`File(PKCS#12)`,Затемвыбирать`Next`

![png](https://xrsec.s3.bitiful.net/IMG/2022110311343370109.png?w=1280&fmt=png)

нагрузка `assets` Каталог из `client.p12` Сертификатдокумент,ивходитьначальстволапша hook Пароль `111111`

![png](https://xrsec.s3.bitiful.net/IMG/2022110311343863192.png?w=1280&fmt=png)

![png](https://xrsec.s3.bitiful.net/IMG/2022110311355115995.png?w=1280&fmt=png)

После импорта Сертификата вы можете нормально захватить пакет. Вы можете видеть изображение ниже и изображение ниже. `403` Если да не импортировал Сертификатиз, он не позволит вам перехватывать пакеты и получать к нему доступ, как показано выше. `200` да После того, как я импортировал Сертификат, я могу нормально перехватывать пакеты Понятно

![png](https://xrsec.s3.bitiful.net/IMG/2022110311354754465.png?w=1280&fmt=png)

В «Дасуществовать» также есть несколько особенных сцен. `веб-страница` или `APP` нуждатьсясуществовать PC Только установив Сертификат на компьютер, вы сможете получить доступ к перехвату пакетов, далее действовать необходимо в соответствии с реальной ситуацией.

![png](https://img.soogif.com/ILDhgI8rL1ViSfiKV2qpVb6NFbCHsgya.gif?scope=mdnice)

### 9、использовать Frida Писать Hook поколениекод Приходитьруководитьверно APP Имитировать захват пакетов

среда:

> Симулятор Ночного Бога 32 Кусочек Android7.1.2 уже root
>
> Frida-server-15.1.27-android-x86
>
> PC конециз Frida v15.1.27
>
> Objection v1.11.0

использовать Charles Что мне делать, если я не могу поймать сумку, которая у нас есть? `Фрида`, можно пройти frida Приходить hook жить APP структурасетьпроситьи Где получить данныеизпоколениекод,Затемраспечатать Приходитьпроситьи Возврат данных,так APP Сделайте сетевой запрос к серверу, который управляет, и сразу получите все данные.

в целомсетьпроситьиполучать данныеизпоколениекод Всевстреча Писатьсуществоватьодинв классе,нас Просто ищитеприезжатьодинточка Приходить Следуй и найдиприезжать Этот класс Сразу Может Понятно。

существовать Боссиз Github Проект по поиску жилья [Фрида Осуществить перехват okhttp изScript](https://github.com/siyujie/OkHttpLogger-Frida "Frida Осуществить перехватokhttpиз Скрипт")

этопринцип работы Сразуда:

> потому чтовсеиспользоватьиз okhttp Кадр из App Все запросы, сделанные да, выдаются через `RealCall.java`, тогда мы можем hook Эта категория называется приезжать. Request и Response, также Может缓жить Вниз Приходить Каждыйодинпроситьиз call вернослон,руководитьсновапросить,таквыбирать Понятноздесьруководить hook。 find Добавлено ранее проверить, найти даNouseПонятно на основе класса объектов okhttp3 Библиотека, если у нее нет класса объектов, это означает, что ее нельзя использовать. okhttp; Найти класс пространственных объектов, описаниеиспользовать Понятно okhttp из библиотеки и распечатайте, запутан ли да.
> ❗️❗️❗️ здесьяиспользовать Понятно Реальная машинаруководитьтест,При появлении сообщения об ошибке сообщается ниже:,Для тестирования реальной машины должны быть какие-то экологические причины.,因此я Сразуиспользовать Понятно`Симулятор Ночного Бога`руководитьподиздействовать

![png](https://xrsec.s3.bitiful.net/IMG/2022110311354253240.png?w=1280&fmt=png)

Сначала поставь `okhttpfind.dex` копироватьприезжать `/data/local/tmp/` каталог и предоставить разрешения

> adb push okhttpfind.dex /data/local/tmp/
>
> chmod 777 okhttpfind.dex

![png](https://xrsec.s3.bitiful.net/IMG/2022110311353794667.png?w=1280&fmt=png)
Затем запустите `серверную программа Фрида`

![png](https://xrsec.s3.bitiful.net/IMG/2022110311353292775.png?w=1280&fmt=png)
Затем выполните команду для запуска hook Скрипт

> frida -U -l okhttp_poker.js -f APP имя пакета --no-pause
>
> если При необходимости можно добавить дополнительные параметры -o [output filepath] Сохранить файл проживания

[okHttp из app Дело](http://m.bandao.cn/android/news/bandao_news.apk "okHttpизapp Случай")

![png](https://xrsec.s3.bitiful.net/IMG/2022110311352688055.png?w=1280&fmt=png)

![png](https://xrsec.s3.bitiful.net/IMG/2022110311352137849.png?w=1280&fmt=png)

Затемкопироватьбыть сбитым с толкуназадиз Имя класса(начальство Рисунок красная рамкажитьизсодержание),Вставитьприезжать okhttp_poker.js файл (как показано ниже) и руководить`save`, Фрида Автоматически распознает в режиме реального временивозобновлятьназадиз Скриптсодержание Связанные с исполнениемдействовать

![png](https://xrsec.s3.bitiful.net/IMG/2022110311351684875.png?w=1280&fmt=png)

тогда беги `hold()` Команда открытия hook Перехватите, а затем действуйте App После этого содержимое перехвата будет выглядеть следующим образом:

![png](https://xrsec.s3.bitiful.net/IMG/2022110311350019386.png?w=1280&fmt=png)

еслидуматьверно okHTTP Для более глубокого исследования темы «руководить» вы можете прочитать эту замечательную статью «руководить». [[Оригинал] Как достичь Https перехватыватьруководить нетрадиционный“Понять Сумка”(20.9.13-поколениекодвозобновлять)](https://bbs.pediy.com/thread-252100.htm "[Оригинал] Как достичь Httpsперехватыватьруководить нетрадиционный“Понять Сумка”(20.9.13-поколениекодвозобновлять)")

## Подвести итог

Организация вышеперечисленных девяти различных способов захвата пакетов фактически может использоваться всеми основными из существующих в настоящее время на рынке. APP В сценарии захвата сумок, конечно, есть больше, чем эти девять способов захвата сумок, например, есть еще [Boss Shredded Boss] `r0ysue` из Андроидприложениеслой Понять Сумка Убить всех Скрипт](https://github.com/r0ysue/r0capture "Босс Босс `r0ysue` из Андроидприложениеслой Понять Сумка Убить всех Скрипт"),Если вам интересно, вы можете попробовать. Фактически, вы можете узнать больше о навыках захвата пакетов.,возможно, в состояниисуществоватьтестиз Откройте для себя больше смысла в этом процесседумать Нетприезжатьизновая технология。

![png](https://img.soogif.com/SjjHiDzcBATGK9OtibFzC68dtp9mWOXZ.gif?scope=mdnice)

Ссылки

- [fiddler Установка пособие, считаем это рекордом~](https://blog.csdn.net/yeyue0922/article/details/88718363 "fiddlerУстановка пособие, засчитаем это как рекорд да~")
- [какиспользовать Burp suite ползти Fiddler Форвард изпоток пакета](https://blog.csdn.net/weixin_48691035/article/details/106781583 "какиспользоватьBurp пакет пакет форвардизпоток SuiteползтиFiddler")
- [Android Захват пакетов — HttpCanary](https://www.modb.pro/db/432723 «Захват пакетов Android — HttpCanary»)
- [Android10 импортироватьсистема Сертификатизметод。](https://blog.csdn.net/fjh1997/article/details/106756012 «Система импорта Android10Метод сертификации».)
- [После изучения этой статьи Charles Захватите посылку Учебное пособие, я сразу fiddler удалить Понятно](https://www.bilibili.com/read/cv15803460 «После изучения этого Чарльза Захватите посылку Учебное пособие, я сразуfiddlerудалить Понятно")
- [Charles+Postern Захват пакетов](https://blog.csdn.net/tiaNY19/article/details/121254560 «Пакет захвата Чарльза+Постерна»)
- [Как пройти Charles+BurpSuite из Сотрудничатьсуществовать PC конец Понятьприезжатьсотовый телефон Сумка](https://blog.csdn.net/qq_38798840/article/details/125221320 «Как захватить приезжатьсотовый через Charles+BurpSuiteиз с существующих ПК телефон Сумка")
- [Charles Искаженные символы SSL актерское мастерство решения проблемы](https://blog.csdn.net/liuqinhou/article/details/127035359 "CharlesИскаженные символыSSL актерское мастерство решения проблем")
- [Into Mobile Security (3) — расширенный захват пакетов] (https://mp.weixin.qq.com/s/0iCDSK_uSfbJdKA_9fzVnA)
- [Двусторонняя аутентификация APP Сертификат захвата пароля и пакета] (https://mp.weixin.qq.com/s/Xon6SIXpb2oPyh5fFZ1Pvg)
- [[Оригинал]Андроид APP Перехват пакетов и прорыв в двусторонней аутентификации](https://bbs.pediy.com/thread-265404.htm "[Оригинал]АндроидAPPПонять Сумка Прорыв в двусторонней аутентификации")
- [Frida Понимать Android конец App Гаджет захвата пакетов [okhttp_poker]](https://blog.csdn.net/siyujiework/article/details/108297912 "FridaПониматьAndroidконецAppПонять Сумка Гаджет[okhttp_poker]")

> XRSec has the right to modify and interpret this article. If you want to reprint or disseminate this article, you must ensure the integrity of this article, including all contents such as copyright notice. Without the permission of the author, the content of this article shall not be modified or increased or decreased arbitrarily, and it shall not be used for commercial purposes in any way
boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose