- Когда закончите — удалите все, что не нужно
- Шаг 2. откройте charles proxy для начала сессии
- Установка и запуск
- Активировать
- Настройка мобильного устройства
- Конфигурация
- Последние штрихи настройки
- Модифицирование запросов и ответов
- Некоторые общие проблемы
- Charles proxy — как увидеть исходящие и входящие данные мобильных приложений
- Дисконтная карта – киносеть *чарли* – подарочная карта 500 рублей
- Для android версии под android7
- Для android7
- Не удается заставить некоторые приложения работать на вашем телефоне?
- Шаг 3. найдите ip-адрес и номер порта вашего компьютера
- Шаг 4. настройте ваш телефон для использования charles proxy
- Шаг 5. разрешите соединения к чарльзу
- Шаг 6. установите на ваш телефон корневой сертификат
- Шаг 7. включите проксирование ssl для всех хостов
- Шаг 9. проанализируйте результаты
Когда закончите — удалите все, что не нужно
После того как вы закончите анализ трафика мобильных приложений на вашем смартфоне, вы должны удалить установленный сертификат. Не стоит оставлять на вашем устройстве дольше, чем вам нужно, сертификат, который использовался для реализации атаки «Человек-по-Середине». Также стоит удалить настройки прокси.
На iPhone, чтобы удалить сертификат, перейдите в «General» в «Settings», затем в самом низу выберите «Profile». Затем нажмите профиль конфигурации «Charles Proxy CA» и нажмите «Remove Profile». Нажмите «Remove» для подтверждения. Чтобы остановить прокси-сервер, выберите «Wi-Fi» в «Settings», нажмите «Wi-Fi network», выберите «Configure Proxy», затем переключите слайдер в «Off», а затем нажмите «Save».
Шаг 2. откройте charles proxy для начала сессии
После установки Charles откройте его. Если вы используете macOS (ранее Mac OS X), то для правильной работы этого приложения вам необходимо предоставить ему разрешение изменения системных сетевых настроек. Вы можете сделать это позже, но в момент установки сделать это проще — просто нажмите на кнопку «Предоставить привилегии». Вам нужно будет ввести для этого пароль.
В системе Windows вам необходимо «Разрешить доступ» в появившемся предупреждении системы безопасности Windows. Просто следуйте инструкциям, показанным ниже (оставьте опцию «Private» выбранной, а «Public» соответственно нет). Вам может потребоваться ввести пароль администратора для сохранения ваших настроек.
Установка и запуск
Скачиваем Charles Proxy с официального сайта, устанавливаем, запускаем (помним, что бесплатно можно пользоваться 30 дней). После запуска Charles предложит сам настроить сетевые подключения для работы:
Соглашаемся. Далее откроется интерфейс инструмента:
Слева (Structure/Sequence) будут отображаться соединения, внутри которых можно будет увидеть запросы. В правой части будут отображаться параметры запроса.
Активировать
Вот учетная запись активации, найденная в Интернете, просто заполните
Настройка мобильного устройства
Чтобы Charles мог мониторить весь входящий и исходящий трафик на устройстве, в настройках Wi-Fi подключения на устройстве нужно прописать IP-адрес хоста с запущенным Charles и указать порт 8888 (по умолчанию). В самом Сharles в настройках прокси нужно удостовериться что стоит порт 8888 (при необходимости можно изменить). Итак, проверка настроек Charles:
И настройка Wi-Fi подключения на смартфоне (в данном примере использовался iPhone):
Конфигурация
3.1 Установка сертификата
Help->ssl proxying
image
В очереди
Charles Root Certificate
Charles Root Certificate in iOS Simulators
Изменить, чтобы всегда доверять связке ключей

image-20210802145256153
установка сертификата iphone
Откройте корневой сертификат Charles на мобильном устройстве или в удаленном браузере, он будет выглядеть, как показано

image
Сначала настройте прокси, прыгайте3.2/3.3Настроить прокси, посетить после конфигурации
Chls.pro/ssl
Всплывающее окно спросит, нужно ли устанавливать, просто согласитесь на установку.
Не радовайтесь слишком рано, установка должна быть завершена на телефоне
Настройки-> Общие-> Об этой машине-> Настройки доверия сертификатов-> charles Proxy CA, Отметьте переключатель, сертификат вступит в силу.
3.2 Настройки прокси
Последние штрихи настройки
Далее, возвращаемся к настройке самого Charles. Во-первых, если нас интересует конкретный адрес, а весь остальной трафик является шумом, то нужно кликнуть по интересующему нас адресу и выбрать пункт “Focus”. Это позволит скрыть все лишние адреса во вкладке “Other Hosts” (см. картинку ниже).
Для того, чтобы Charles мог увидеть параметры запроса, нужно прописать адрес сервера в SSl Proxy Settings. Это можно сделать следующим образом:
Теперь если отправить запрос на соответствующий сервер, то можно увидеть параметры запросов:
Модифицирование запросов и ответов
Итак, запросы к нужному серверу для нас теперь абсолютно прозрачны, но Charles интересен не только возможностью мониторинга запросов, но и возможностью их модификации. Например, можно изменить какой-либо параметр в заголовке или в теле запроса и посмотреть что вернёт нам сервер, или же наоборот, отправить правильный запрос, но модифицировать ответ, чтобы проверить ситуации, когда сервер может возвращать некорректные данные или когда нужно показать лишь часть данных. Сейчас нас интересует инструмент Rewrite:
Этот инструмент как раз и позволяет вносить нужные нам изменения в запросы. По-умолчанию, там ничего нет, следовательно, нам нужно добавить первую опцию, например, на изменение запроса.
Далее нужно понять что именно мы хотим изменить в конкретном запросе. Например, нужно проверить, как поведёт себя серверная часть приложения в том случае, если клиент пришлёт некорректный запрос (будет отсутствовать одно поле или в поле будет неверный тип данных).
Сообщит ли нам сервер об ошибке? Лучше, конечно, проверять, реакцию клиента на некорректный ответ сервера, потому что такая ситуация наиболее вероятна. Набор действий в любом случае идентичен. Под полем Location нужно кликнуть Add, а затем можно поставить значение * (в этом случае перезапись будет работать для всех запросов), либо указать конкретный URL и конкретный path.
После того как был задан адрес, по которому нужно произвести замену, нужно указать что конкретно следует изменить. В нашем случае это тело запроса.
Некоторые общие проблемы
4.1 Реальное устройство зависает при проверке приложения?
Как разработчику Apple, вам часто нужно запускать небольшую демонстрацию, которую вы создали на своем телефоне с помощью Xcode, и вы используете бесплатный личный сертификат. Вам необходимо доверять сертификату на телефоне и проверять приложение. Если вы настроили захват пакетов, ssl не может быть проверен.
Решение:
При использовании ssl захватывать только указанный URL, а не устанавливать полный захват* . панель инструментов charles -> Прокси -> Настройки прокси SSL, захватите только адрес серверной части проекта.
image
Charles proxy — как увидеть исходящие и входящие данные мобильных приложений
Если вы используете мобильное устройство, то ставим 100 баксов, что ваши приложения пересылают довольно много разной информации на их сервера и обратно. Чтобы убедиться в отсутствии ненадлежащего сбора данных, стоит настроить веб-прокси для отслеживания всего трафика, чтобы совершенно точно знать, какие приложения «звонят домой» и когда.
Дисконтная карта – киносеть *чарли* – подарочная карта 500 рублей
Все разделы Авто, Мото, Запчасти Антиквариат и Искусство Бытовая техника Видео, Фильмы Винтаж Воздухоплавание Детское Для бизнеса Домашний очаг, Сад, Дача Драгоценности и украшения Книги, журналы, газеты Коллекционное Компьютерная техника Красота и здоровье Музыка Недвижимость Одежда, Обувь и Аксессуары Плавсредства Сделано своими руками Спорт-снаряжение Строительство и Ремонт Телефоны Удалены Услуги Флора и Фауна Часы Электроника и Оптика Разное
– руб.
Доставка
Для android версии под android7
С вашего компьютера запустите Charles:
Для android7
Обратитесь к: Как получить работу прокси-сервера charles с nougat Android 7?
Не удается заставить некоторые приложения работать на вашем телефоне?
Многие приложения реализуют привязку сертификата SSL, что означает, что они специально проверяют корневой сертификат и не будут восприимчивы к атакам типа «Человек-по-Середине». В нашем случае сертификаты проверяет настоящий API Strava, но третьи лица, получающие нашу информацию — нет.
Если вы попробуете использовать приложение на вашем телефоне и оно не будет загружаться или работать должным образом, то, вероятно, оно реализует привязку SSL-сертификата, поэтому вы и не можете увидеть предназначенный для него веб-трафик. Многие приложения от Apple и Google используют этот уровень безопасности, поэтому сторонние приложения — это всегда кандидаты номер один на проверку такого рода, поскольку именно они, скорее всего, будут делать всякие теневые штуки с вашими данными.
Шаг 3. найдите ip-адрес и номер порта вашего компьютера
Определенные шаги по настройке вашего браузера и операционной системы для маршрутизации трафика через Charles будут отличаться в зависимости от того, что именно вы используете. Если вы хотите использовать Charles для проверки веб-трафика из вашего браузера, то мы рекомендуем посетить страницу документации Charles по этой теме.
Для наших целей мы хотим проверить трафик, поступающий со смартфона, поэтому мы начнем с настройки iPhone, чтобы он использовал наш компьютер с запущенным Charles Proxy, как прокси-сервер.
Сначала на компьютере, на котором работает Charles, выберите «Справка» в меню, затем меню «SSL Proxying» и выберите «Install Charles Root Certificate on a Mobile Device or Remote Browser».
Вы увидите диалоговое окно, подобное указанному на скриншоте, которое предоставляет IP-адрес и порт для машины, на которой работает Charles:
Шаг 4. настройте ваш телефон для использования charles proxy
На iPhone перейдите к меню «Wi-Fi» в приложении «Settings», затем убедитесь, что он находится в той же сети, что и Charles. Нажмите значок информации рядом с подключенной сетью, а затем прокрутитесь вниз и выберите «Configure Proxy». Выберите строку «Manual» и введите номера сервера и порта из последнего диалогового окна, которое выдал вам Charles. Нажмите «Сохранить», чтобы закончить.
Для телефонов на Android процесс немного отличается в зависимости от версии OEM и программного обеспечения. Как правило, вы открываете настройки Wi-Fi, нажимаете и держите меню общей сети. Затем нужно выбрать что-то вроде «Управление сетевыми настройками» или «Изменить сеть» или значок карандаша.

Шаг 5. разрешите соединения к чарльзу
Когда ваш смартфон будет подключен к Charles, то вы на вашем компьютере увидите диалоговое окно, предупреждающее вас о том, что Charles получил входящее соединение. Выберите «Разрешить». Если вы вдруг случайно запретите входящее соединение, то для того, чтобы еще раз получить это приглашение, вам придется перезапустить Charles.
Шаг 6. установите на ваш телефон корневой сертификат
С помощью веб-браузера на вашем смартфоне перейдите на chls.pro/ssl.
На iPhone вы сразу же получите запрос с просьбой разрешить сайту показывать вам профиль конфигурации. Нажмите «Разрешить». После этого вы попадете на экран Install Profile для Charles Proxy CA. Нажмите «Установить», вас перенаправят на страницу предупреждения. Нажмите «Установить» еще раз, и еще раз на всплывающем окне. Наконец, нажмите «Готово», чтобы закончить.
Если вы находитесь на iOS 10 или выше, то вам также придется посетить «Общие» в приложении «Settings». Выберите меню «About», а затем «Certificate Trust Settings» ниже. В разделе «Enable Full Trust for Root Certificates» нажмите на слайдер, расположенный рядом с CA Charles.

Шаг 7. включите проксирование ssl для всех хостов
Мы пока не закончили. Еще один шаг перед просмотром всех данных, поступающих из приложений. Вам нужно включить в Charles SSL-проксирование для всех хостов. Перейдите в меню «Proxy», затем выберите «SSL Proxying Settings».
Когда параметры появятся, нажмите кнопку «Add» на вкладке «SSL Proxying». Когда появится окно «Edit Location», просто нажмите «ОК» или вручную введите * (одну звездочку) в поле «Host» и нажмите «ОК». Это подстановочный знак, который означает, что настройки применяются ко всем хостам. Если оставить поле Host пустым, то поле само создаст подстановочный знак.
Для сохранения изменений в окне настроек SSL Proxying обязательно нажмите «ОК». И теперь, когда вы все настроили, откройте приложение на вашем смартфоне и посмотрите, какие данные он отправляет!
Шаг 9. проанализируйте результаты
Мы решили проверить это на том, чем пользуемся очень часто. Решили выбрать Strava — это мобильный фитнес-трекер, который позволяет пользователям записывать и загружать данные для тренировок. Когда мы открываем Strava на нашем смартфоне, мы видим несколько хостов, т.е. доменов, отображенных в левой панели в Charles.
Раскрыв любой из них, можно просмотреть его содержание в панели «Contents» справа. Там вы можете точно узнать, какую информацию эти приложения отправляют производителям и третьим лицам. Мы распознали в одной из записей Strava широко используемую платформу аналитики и решил проверить ее.
Мы не станем здесь публиковать всю полезную нагрузку, но там была действительно подробная информация, включая имя, местоположение, носитель беспроводной связи, адрес электронной почты и даже некоторые рекламные категории, которые нам демонстрировались.
Следите за запросами к известным приложениям от аналитических компаний. Некоторые из наиболее популярных — это Segment, Fabric, Flurry и Firebase. Провайдеры рекламы также получают довольно большой объем отслеживаемых данных и это тоже повод посмотреть на содержание этих данных. Определить их можно по имени хоста.
