Как настроить SSL-сертификаты с помощью Charles Web Proxy и последнего эмулятора Android в Windows?
Я хотел бы использовать веб-прокси Charles, чтобы работать с эмулятором Android в Windows. Я успешно настроил charles и запустил эмулятор с командной строкой:
emulator -http-proxy 127.0.0.1:8888 @NexusOne
Я вижу трафик, исходящий от эмулятора Android в Чарльзе, но проблема в том, что я разрабатываю API-интерфейс Live, который использует SSL, и я не уверен, как настроить Чарльза, чтобы я мог играть с данными, которые отправляется и принимается. Я знаю о двух областях, где SSL настроен в Charles (Proxy → Настройки прокси → SSL и Proxy → SSL SSL-сертификаты), но я не могу найти достойную документацию, которая позволила мне делать то, что я хочу сделать, Имеет ли кто-либо опыт с Чарльзом или сертификатами в целом, кто может объяснить, как этого добиться. Возможно, праймер на сертификатах тоже будет хорош, поскольку мне кажется, что мне не хватает знаний о том, почему это так сложно.
Ответы
Ответ 1
В Charles, перейдите в Proxy → Настройки прокси и выберите вкладку SSL. Добавьте свой хост в список местоположений.
Например, если ваш безопасный вызов будет https://secure.example.com, вы можете ввести secure.example.com или *.example. ком.
Как только это будет сделано, вам может потребоваться щелкнуть правой кнопкой мыши по вызову в главном окне Charles и выбрать опцию SSL Proxying.
Надеюсь, что это поможет.
Ответ 2
Для удаленного захвата трафика http или https с помощью charles вам необходимо сделать следующее:
ХОСТ - Машина с Чарльзом и прокси-сервером. КЛИЕНТ - Пользовательский компьютер, генерирующий трафик, который вы захватите.
Хост машина
- Установить полностью лицензионную версию Charles
- Прокси → Настройки прокси → установите флажок "Включить Прозрачный HTTP Прокси"
- Прокси → Настройки прокси SSL → установите флажок "Включить Прокси SSL"
- Прокси → Настройки прокси SSL → нажмите кнопку Добавить и введите * в оба поля
- Прокси → Настройки контроля доступа → Добавьте свою локальную подсеть (например: 192.168.2.0/24), чтобы разрешить всем машинам в локальной сети использовать прокси с другого компьютера.
- Может быть целесообразно настроить "инструмент автосохранения" в charles, это позволит автоматически сохранять и вращать журналы charles.
Клиентская машина:
- Установите и постоянно принимайте/доверяйте SSL-сертификату charles
http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/ - Настройте IE, Firefox и Chrome для использования сокета, на котором размещен прокси-сервер (например: 192.168.1.100:8888)
Когда я проверил это, я взял две строки чата HTTPS на Facebook (одна была для кого-то, а другая для).
Вы также можете захватывать трафик эмулятора Android таким образом, если вы запустите эмулятор с:
emulator -avd <avd name> -http-proxy http://local_ip:8888/
Где LOCAL_IP - это IP-адрес вашего компьютера, а не 127.0.0.1, так как это IP-адрес эмулируемого телефона.
Источник: http://brakertech.com/capture-https-traffic-remotely-with-charles/
Ответ 3
Для этого стоит пошаговые инструкции для этого в Android-устройстве. Должно быть одинаковым для iOS:
- Открыть Чарльз
- Перейти к прокси > Настройки прокси > SSL
- Установите флажок "Включить SSL-проксирование"
- Выберите "Добавить местоположение" и введите имя хоста и порт (если необходимо)
- Нажмите "ОК" и убедитесь, что опция отмечена.
- Загрузить сертификат Charles здесь: Charles cert >
- Отправьте этот файл себе по электронной почте.
- Откройте электронное письмо на своем устройстве и выберите сертификат
- В поле "Имя сертификата" введите все, что хотите.
- Нажмите "ОК" и вы получите сообщение о том, что сертификат был установлен
Затем вы должны увидеть файлы SSL в Чарльзе. Если вы хотите перехватить и изменить значения, вы можете использовать инструмент "Map Local", который действительно потрясающий:
- В Charles пойдите в Инструменты > Карта Локальный
- Выберите "Добавить запись"
- Введите значения для файла, который вы хотите заменить
- В "Локальном пути" выберите файл, который вы хотите, чтобы приложение загружалось.
- Нажмите "ОК"
- Убедитесь, что запись выбрана и нажмите OK
- Запустите приложение
- В "Заметках" вы должны увидеть, что ваш файл загружается вместо живого.
Ответ 4
Вещи немного изменились в том, как Чарльз обеспечивает проксирование HTTPS.
Сначала параметры установки сертификатов были перемещены в меню справки.
Help -> SSL Proxying -> Install Charles Root Certificate
Help -> SSL Proxying -> Install Charles Root Certificate in iOS Simulators
![Charles SSL Proxying]()
Во-вторых, начиная с iOS 9 вы должны предоставить опцию NSAppTransportSecurity
в Info.plist
, и если вы хотите, чтобы Чарльз работал правильно как человек посередине, вы должны добавить:
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
как часть ваших доменов, см. полный пример:
<key>NSExceptionDomains</key>
<dict>
<key>yourdomain.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
Причиной является (я думаю), что Чарльз в какой-то момент общается в явном http после того, как выступает в роли человека на среднем сервере https.
Последний шаг - активировать SSL-проксирование для этого домена в Чарльзе (щелкните правой кнопкой мыши по домену и выберите Включить SSL-проксирование)
![включить HTTP-проксирование]()
Ответ 5
Что сработало для меня - действительно нужно перенести на iPhone:
Чарльз
- Включить прозрачное проксирование HTTP
- Включить прокси SSL.
- Щелкните правой кнопкой мыши на входящем запросе и выберите SSL-проксирование
Mac
iPhone
- Включить HTTP-прокси для Charles на порту 8888
- Выберите и установите вложение электронной почты, да доверьтесь ему!
Voila, теперь вы можете просматривать зашифрованный трафик из домена, добавленного в прокси SSL.
Ответ 6
Также вы можете нажать "Установить сертификаты CA CA SSL" из меню "Справка Чарльза". Более подробные инструкции см. В http://blog.noodlewerk.com/general/tutorial-using-charles-proxy-to-debug-https-communication-between-server-and-ios-apps/
Ответ 7
Эти вещи помогли мне
- Перейти к прокси → Настройки прокси-сервера SSL → Добавить
- Добавьте название своего сайта и укажите номер порта как 8888
![введите описание изображения здесь]()
- Щелкните правой кнопкой мыши имя вашего сайта на левой панели и выберите "Включить
SSL Proxying "
![введите описание изображения здесь]()
Надеюсь, что это поможет кому-то там.
Ответ 8
Когда люди загружают программное обеспечение, такое как эмулятор андроида Bluestacks, на свои ПК, они всегда спрашивают это question- Безопасна ли Bluestacks для моего ПК? Bluestacks Player был первым и одним из лучших эмуляторов Android, доступных для Windows и macOS, которые позволили его пользователям запускать приложения Android на своих настольных системах.