Как сделать сертификат системным

Как сделать сертификат системным

AndroidGuards

Покажу на примере BurpSuite, но эта инструкция применима к любой проксе. Предусловия: вы умеете настраивать прокси на устройстве и у вас установлен Magisk.

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

1. Настроить проксю и зайти на адрес http://burpsuite

2. Там нажать CA Certificate и скачать его на девайс

3. Переименовать cert.der -> cert.cer

4. Settings -> Security -> Encryption & credentials -> Install a certificate -> CA certificate -> Install anyway и выбрать cert.cer

4a(optional). Убедиться, что сертификат появился в /data/misc/user/0/cacerts-added под именем вида 9a5ba575.0

5. Зайти в MagiskManager и поставить модуль Move Certificates (легко найти поиском)

6. Перезагрузиться и убедиться, что сертификат переместился в /system/etc/security/cacerts (удобно смотреть по дате через ls -la например).

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

$ adb shell settings put global http_proxy 192.168.1.250:8080
$ adb shell settings put global http_proxy :0

Подсмотрел эти полезны команды у Алексея Писаренко в докладе на VolgaCTF.

Report Page