Почему все соединения HTTPS видны другим приложениям на устройстве? HTTP-инструментарий

Я заметил, что с помощью HTTP Toolkit вы можете прослушивать все соединения HTTPS в незашифрованном виде из браузеров в ОС Windows и Android, а также все приложения на Android-устройстве с root-правами или эмуляторе или с помощью обходного пути на ПК. Все поля и данные из заголовков, тел запросов и ответов перехватываются без шифрования.

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

Кроме того, установка некоторых шпионских программ для записи введенных учетных данных на его ПК или общедоступный ПК, так же, как это делает HTTP Toolkit.

Есть ли причина, по которой это может происходить в первую очередь? Есть ли способ предотвратить это?

2 ответа

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

Это возможно, потому что это нельзя предотвратить самым общим способом. Пользователь, который полностью контролирует устройство, может проверять все поведение и трафик на этом устройстве. Вот что значит управлять устройством. Трафик шифруется для защиты пользователя, а не для защиты приложений от пользователя. Если просмотр API существенно повлияет на безопасность системы, система уже небезопасна.

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

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

Вы нашли хорошее дело для изучения. Я рекомендую изучить, как работает HTTP Toolkit. Это даст вам гораздо лучшее понимание того, что TLS делает и чего не предоставляет.

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

То же самое происходит и в Selenium . Selenium широко используется для автоматизированного тестирования и может быть интегрирован с Python, C# и т.д.

Это также открывает собственный браузер с отдельным профилем и связывается с ним из вашего тестового кода.

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

Если вы серьезно относитесь к безопасности, вы не должны просматривать веб-сайты с конфиденциальными данными через браузер, который открывается с помощью HTTP Toolkit или Selenium. Просто используйте свой обычный браузер.

Другие вопросы по тегам