Проблемы и использованием Charles
В целом же, это только основные и наиболее часто используемые функции плагина. Нередко можно заметить, что в некоторых случаях могут возникнуть и проблемы. Так, например, очень частыми являются ситуации, когда в списке, содержащем папки шлюзов (Gateway), могут не отображаться те или иные серверы и их адреса.
По всей видимости, пользователь мог их просто случайно внести в так называемый «игнор-лист». Восстановить настройки можно войдя в соответствующее меню (через Proxy/Recording Settings), где выбирается раздел «Ignore Hosts» (иногда может называться как Black List, в зависимости от версии программы). Отсюда сервер нужно просто удалить, после чего он будет показан в основном списке.
Серийный номер в текстовом файле
Для подтверждения прав на программу иногда требуется серийный номер. Имея его, вы сможете установить программу бесплатно.
Серийный номер может потребоваться либо при установке программы, либо при первом запуске уже после установки. Пропустить этот шаг вы не сможете, дальше программа не пойдет, пока вы не введете серийный номер (рис.1).
Пример серийного номера: ADE-R119-F196-k9BA-17CD
В папке с программой (в той же папке что и установочный файл) может находиться файл с серийным номером. Чаще всего он называется «Серийный номер», «Serial number», «Ключ», «key», «crack». Открываем этот файл, копируем серийный номер и вставляем его в нужное место.
- Последовательность действий:
- Начать установку программы, пока не потребует серийный номер
- Открыть текстовый файл, скопировать серийный номер (Cntr+C)
- Вставить его в то место, где требуется (Cntr+V)
- Все
Причины зависания программ и их решение
Частые проблемы, которые вызывают зависания программ:
- Неудовлетворенные потребности программы — вам следует ознакомиться с системными требованиями утилиты, чаще всего их можно найти на официальном сайте.
- Устаревшая версия ПО – вам следует проверить наличие обновлений, возможно они и помогут решить проблему.
- Устаревшие или несовместимые драйвера – возникает довольно часто, чтобы решить проблему вам следует установить соответствующий набор драйверов.
- Последствия зараженности системы вирусами – для этого существует большое множество антивирусного программного обеспечения, которое сможет вам помочь, иногда может понадобиться перебрать несколько таких утилит, так как функционал и метод проверки разный. Стоит начать с наиболее известных и зарекомендовавших себя временем, а далее опытным путём перебирать программы до решения проблемы.
- Проблема в устаревшем .Net Framework – программы, которые разработаны на более новой версии, не будут работать на старой, за редкими исключениями. Этот framework является платформой для корректной работы вашей системы с различными языками программирования.
- Неполадки самой программы – такое тоже далеко не редкость, а скорее правило, обычно в таких случаях вам также следует проверить обновление, в случае если у вас установлена последняя версия и с драйверами всё в порядке, проверьте версию .Net Framework, DirectX, Visual C++ и другие необходимые для работы программы платформы.
- Проблемы с оборудованием – такие проблемы встречаются реже всего, поэтому стоит проверить иные варианты прежде чем впадать в крайность. Обычно за этим может стоять несколько компонентов: недостаточный объём оперативной памяти, маленькая мощность процессора или видеоадаптера, проблемы с жестким диском и блоком питания.
Основные причины мы рассмотрели, теперь давайте перейдём к решению ситуации, когда программа не отвечает, но прежде всего вам нужно убедиться, что дело именно в программном обеспечении, а не завис компьютер. Для этого воспользуйтесь любым элементом вашей системы, лучше всего требующим мало ресурсов или нажатием Caps Lock, Num Lock, если всё работает как нужно, переходите к решению.
Что собой представляет плагин Charles?
Как уже, наверное, понятно, Charles представляет собой специализированное дополнение, предназначенное для записи входящего и исходящего трафика в режиме реального времени, выполненное в виде программного веб-прокси-сервера.
Изначально этот плагин рассчитан на работу в среде интернет-браузера Mozilla Firefox, однако на сегодняшний день имеются версии, которые с легкостью можно использовать и в не менее популярных браузерах типа Google Chrome или Opera. Основные настройки будут приведены ниже.
В рассмотрении вопроса о том, как пользоваться Charles, стоит отметить, что такая дополнительная утилита подойдет не только рядовым пользователям, а и администраторам компьютерных систем, отдельных терминалов и локальных сетей. При правильной пользовательской настройке абсолютно все параметры можно и контролировать, и изменять.
Модифицирование запросов и ответов
Итак, запросы к нужному серверу для нас теперь абсолютно прозрачны, но Charles интересен не только возможностью мониторинга запросов, но и возможностью их модификации. Например, можно изменить какой-либо параметр в заголовке или в теле запроса и посмотреть что вернёт нам сервер, или же наоборот, отправить правильный запрос, но модифицировать ответ, чтобы проверить ситуации, когда сервер может возвращать некорректные данные или когда нужно показать лишь часть данных. Сейчас нас интересует инструмент Rewrite:
Этот инструмент как раз и позволяет вносить нужные нам изменения в запросы. По-умолчанию, там ничего нет, следовательно, нам нужно добавить первую опцию, например, на изменение запроса.
Название можно дать любое, для себя я обозначил данную опцию как Request, чтобы в ней хранить все нужные мне модификации для запросов.
Далее нужно понять что именно мы хотим изменить в конкретном запросе. Например, нужно проверить, как поведёт себя серверная часть приложения в том случае, если клиент пришлёт некорректный запрос (будет отсутствовать одно поле или в поле будет неверный тип данных). Сообщит ли нам сервер об ошибке? Лучше, конечно, проверять, реакцию клиента на некорректный ответ сервера, потому что такая ситуация наиболее вероятна. Набор действий в любом случае идентичен. Под полем Location нужно кликнуть Add, а затем можно поставить значение * (в этом случае перезапись будет работать для всех запросов), либо указать конкретный URL и конкретный path.
После того как был задан адрес, по которому нужно произвести замену, нужно указать что конкретно следует изменить. В нашем случае это тело запроса.
После сохранения и клика по кнопке Apply, Charles начнёт изменять все запросы по указанной связке URL+path в соответствии с заданным правилом. В данном случае в запросе будет передаваться JSON {“field”:”value”}. Подобным образом можно менять тело ответа, приходящего с сервера. Также можно изменять URL, заголовки, параметры запроса, код состояния HTTP.
Как пользоваться Charles: основные аспекты
Вы настроили Charles, как пользоваться им, сразу понятно из меню программы:
- Чтобы данные не просто отслеживались, но и записывались, нажмите вверху плашку Start / Stop Recording – она крупная, вы её точно не пропустите. Это делается на случай возникновения каких-либо проблем с подключением к определённому сайту. Имея подробный отчёт о процессе соединения, вы сможете обратиться к системному администратору, и он быстро обнаружит причину ошибки.
- Если какой-то сайт кажется вам подозрительным и вы хотите вначале понять, какие данные он отправляет/получает, а затем уже допускать или не допускать их перемещение, то можно сделать так, чтобы по запросу в браузере информация передавалась сразу в Charles. Для этого выделите папку с его названием ресурса, кликните по ней ПКМ и нажмите Breakpoints — Enable/Disable Breakpoints.
- Управлять содержимым папок со сведениями можно через клик дополнительной кнопкой манипулятора и команду Edit. После внесения коррективов в заголовки и прочие элементы, нажмите Execute, чтобы подтвердить новую форму обращения. На нее вы будете получать ответы от сервера – их можно просматривать и сохранять себе. Это ещё один плюс на случай неполадок, столкновения с мошенническими и фишинговыми ресурсами и т. п.
Теперь вы разобрались, как работать с программой Charles. Даже если вы не понимаете, как использовать данные, то хранить их полезно, чтобы своевременно получить помощь от провайдера или системного администратора.
Файлы, для установки программы бесплатно, отсутствуют
Может быть и такое, что программу вы скачали без пиратского «лекарства». То есть, без готовых серийных номеров, кейгенов или патчей. Тогда задача усложняется. Лучше конечно скачивать программы с готовыми «лекарствами». Но что если все-таки такая проблема встала?
- Последовательность действий:
- Устанавливаем программу
- Узнаем полную версию программы. (Например, Daemon Tools Lite 4.35.6) Чаще всего в названии установочного файла присутствует полное название. Если программа уже установлена, то в пункте меню «Справка» есть строка «О программе». Там можно тоже узнать полную версию программы. Если не получилось найти полное название, вводите в поиск неполное.
- Если при установке или после требует серийный номер, то в поиске, например yandex.ru, вводим: серийный номер для «полное название программы» Если требуются другие виды регистрации, то в строке поиска, например yandex.ru, вводим: crack для «полное название программы»
- Перебираем всевозможные ссылки до тех пор, пока не скачаем подходящее лекарство или серийный номер
Особенности
Что вы узнаете из статьи:
Charles — многофункциональная программа, которую можно назвать дебаггером, снифером, прокси-сервисом. При этом все это — буквально в одной упаковке.
По сути утилита Чарльз устанавливается как прокси-сервер, однако она позволяет мониторить все получаемые и отправляемые пакеты между вашим интернет-приложением и серверами. Данная функция необходима разработчикам софтов, а также админам различных серверов, так как утилита имеет все инструменты, которые позволяют наладить работу своего творения. Причем роль посредника Charles выполняет не только в http соединениях, но и в зашифрованных каналах SSL. При желании все запросы можно посмотреть в виде простого текста, что актуально для дальнейшей работы и отлаживания возможностей HTTPS сессии.
Вам достаточно скачать Charles (Чарльз) для Windows, чтобы протестировать, например, свой сайт и узнать, как он будет работать у людей с низкоскоростным интернетом. В этом случае утилита способна сузить канал и тем самым создать имитацию низкой пропускной способности.
Программа подходит для работы с AJAX и XMLHTTP. Здесь можно наглядно увидеть, каким образом доходят данные от сервера к клиенту и в обратную сторону.
Софт поддерживает JSON-RPC and SOAP, JSON.
Если вы установите прокси-сервер, то программа автоматически изменяет настройки во многих браузерах на платформах Mac OS X или Windows.
Другие полезные функции
Инструмент Block Cookies – предотвращает получение клиентом запросов на установку cookie с сервера.
Инструмент No Caching предотвращает кэширование через заголовки.
MacOS Proxy или Windows Proxy разрешает или запрещает проксирование трафика из браузера, установленного на том же компьютере, что и Charles.
Инструмент Port Forwarding (проброс портов) позволяет пересылать запросы с одного порта на другой.
DNS Spoofing – перенаправляет запрос с доменного имени на указанный IP-адрес.
Mirror – автоматически сохраняет в указанную папку все ответы, возвращаемые в Charles. Затем их можно использовать как моки.
Как вручную отредактировать запрос
Задача: перехватить запрос (ответ) и перед отправкой (приемом) его отредактировать. Отличие от предыдущей задачи заключается в том, что в ней данные менялись на лету по заранее заданному шаблону, здесь же редактирование осуществляется вручную.
Запросы можно редактировать используя инструмент Compose. Прежде нужно, чтобы запрос выполнился хотя бы один раз. Найдите его среди остальных запросов. В контекстном меню выберите Compose.
В открывшемся окне можно изменить тело запроса, метод, протокол, url, параметры, заголовки и куки. Затем нужно нажать кнопку Execute и запрос будет отправлен с новыми данными.
Инструмент Repeat в контекстном меню запроса отправит его на сервер еще раз.
Repeat Advanced – похож на Repeat, однако позволяет указать количество отправляемых запросов и задержку между ними. Данный функционал может быть полезен при проверке сервера на флуд.
С помощью инструмента Breakpoints (точки остановка) можно перехватывать и изменять не только запросы, но так же и ответы от сервера, прежде чем они попадут на клиент.
Для начала нужно включить возможность использования Breakpoints (Proxy – Breakpoint Settings – Enable Breakpoints).
Далее нужно указать URL запроса, который в случае выполнения должен быть перехвачен. Это можно сделать в том же окне Breakpoint Settings, либо повесить Breakpoint через контекстное меню, выбрав ранее выполненный запрос.
Перед выполнением запроса он будет остановлен и вы сможете отредактировать его тело, метод, протокол, url, параметры, заголовки и куки.
Когда запрос будет отправлен, ответ так же будет перехвачен, его аналогичным способом можно отредактировать.
Установка и предварительная настройка
Установка и запуск
Скачайте и установите .
При первом запуске Charles скорее всего попросит разрешения внести изменения в сетевые настройки вашего компьютера, согласитесь.
Настройка прокси
Далее перейдите в Proxy – Access Control Setting, нажмите кнопку Add и добавьте IP-адрес 0.0.0.0/0.
Затем перейдите в Proxy – SSL Proxying Settings, установите галочку в Enable SSL Proxying, нажмите кнопку Add и добавьте локацию, в Host укажите «.», а в Port «*». Такая настройка позволит получать запросы и ответы со всех хостов. Или вы можете добавить только интересующие.
Установите сертификаты на компьютер: Help – SSL Proxying – Install Charles Root Certificate.
Укажите порт: Proxy – Proxy Settings – вкладка Proxies – Port: 8888.
Проксирование трафика веб-браузера
Если не хотите видеть запросы с ПК, перейдите на вкладку MacOS (Windows) и снимите чекбоксы. Но если целью является изучение трафика из браузера, наоборот, удостоверьтесь, что чекбоксы установлены.
Когда закончите с настройками прокси, перезапустите Charles.
Настройка прокси на устройстве
Если целью является изучение трафика с устройства, например со смартфона, нужно выполнить на нем дополнительные настройки.
Компьютер с Charles и устройство должны находиться в одной сети.
На устройстве, в настройках сети или Wi-Fi, укажите прокси-сервер: IP-адрес компьютера с запущенным Charles и порт 8888, или другой, который был указан при настройке прокси.
Быстро узнать IP-адрес компьютера с запущенным Charles можно через пункт меню Help – Local IP Address.
Для iPhone откройте Настройки (Settings), перейдите в настройки Wi-Fi, выберите активную Wi-Fi сеть, пролистайте экран вниз и выберите пункт Настройка прокси (Configure Proxy). Метод определения выберите Вручную (Manual) и укажите IP-адрес и порт.
Далее нужно установить сертификат прокси-сервера.
В браузере на устройстве перейдите по адресу или Разрешите загрузку профиля и скачайте сертификат.
Установите скачанный сертификат Charles. Процесс установки зависит от используемого устройства и может различаться.
Например, чтобы установить сертификат на iPhone откройте Настройки (Settings), перейдите в Основные (General), пролистайте вниз и выберите пункт Профили и управление устройством (Profiles & Device Management). В открывшемся меню найдите загруженный профиль сертификата, откройте его, а затем установите.
Дополнительно может потребоваться установить доверие сертификату. Откройте Настройки (Settings) – Основные – Об этом устройстве (About), пролистайте вниз до конца, выберите пункт Доверие сертификатов (Certificate Trust Settings). В открывшемся окне отметьте переключателем сертификат, которому хотите дать доверие.
Для Android действия будут похожими, за исключением того, что дополнительно не потребуется указывать доверие сертификату, его достаточно будет лишь установить.
Подробнее про установку сертификатов можно прочитать в Charles.
Теперь можно проксировать и изучать трафик.
Как пользоваться patch
Иногда для бесплатной установки программы нельзя просто сгенерировать серийный номер. В таких случаях используют специальные программы, которые изменяют файлы так, чтобы программа не требовала денег. В папке с установщиком программы должен находиться файл «Patch» (он может называться — patch, keygen, crack, . ). Это и есть программа, которую еще называют патч.
Первое, что мы должны сделать, это установить программу (ту, которую мы хотим сделать бесплатной). После установки открывать программу не надо.
Дальше, надо переписать patch (или другой файл-патч) в папку, в которую мы установили программу. Скорее всего это диск С, папка Program files, папка с название программы (C:/Program files/«название программы»).
Дальше открываем файл patch (или другой файл-патч)
Вот пример файла patch.exe (рис.10):
Чаще всего в этом файле только одна кнопка. В данном случае это кнопка Apply patch. В некоторых случаях она может называться Crack. Нажимаем на эту кнопку и программой можно пользоваться бесплатно.
- Последовательность действий:
- Установить программу
- Скопировать Patch.exe в папку, куда установили программу
- Открыть Patch.exe
- Нажать единственную кнопку в программе «Patch»
- Запустить программу
- Все
Основные возможности Charles
Программа Чарльз объединяет в себе функции прокси-сервера, снифера и дебатера. С ее помощью можно отслеживать сообщения и пакеты, которыми обмениваются через протокол HTTP сервера и интернет-приложения, такие как веб-браузеры, клиенты обмена мгновенными сообщениями, игры и многое другое.
Charles — настройки программы
В при разработке и отладке веб-приложений осуществляющих передачу данных через интернет, вы не сможете без специальных инструментов увидеть, что было отправлено и получено между вашим веб-браузером и клиентом или сервером. Без возможности увидеть отправленные и принятые пакеты, порой очень трудно найти ошибку, и к тому же это занимает много времени, для того чтобы точно определить, где неисправность или уязвимость. Чарльз делает эту задачу гораздо более легкой, так что вы можете быстро диагностировать и устранять проблемы или отслеживать переданные и полученные данные через интернет соединение.
Перечислим основные функции программы:
- SSL проксирование — просмотр SSL-запросов и ответов в виде обычного текста
- Регулировка полосы пропускания для имитации более медленных подключений к Интернету, включая задержки передачи
- Отладки AJAX — просмотр XML и JSON запросов и ответов в виде дерева или в виде текста
- AMF — просмотр содержимого сообщений Flash Remoting / Flex Remoting в виде дерева
- Редактирование запросов для тестирования различных входов
- Контрольные точки для перехвата и редактирования запросов или ответов
- Повтор запросов для тестирования изменений бэк-энда
- Проверка записей HTML, CSS и RSS/Atom, используя валидатор W3C
Обращаем Ваше внимание, что для браузера Firefox требуется установка дополнительной надстройки (add-on) позволяющей использовать возможности автоконфигурирования настройки прокси-сервера. Программа Чарльз автоматически предложит Вам установить надстройку при запуске
Если надстройка не устанавливается автоматически, Вы можете активировать Mozilla Firefox Proxy вручную в меню Proxy. В качестве альтернативы Вы можете загрузить и установить надстройку самостоятельно.
Заключение
В принципе, вот и все по вопросу о том, как пользоваться Charles. Как видим, ничего суперсложного здесь нет. Плагин выполнен таким образом, чтобы любой, даже начинающий юзер смог разобраться с его использованием без проблем.
Другое дело, что его зачастую используют некоторые нечистые на руку юзеры, пытающиеся взломать браузерные игры. Это их проблема. На самом же деле большинство пользователей предпочитают работать с эти плагином по его прямому назначению. И надо сказать, что именно он является одним из самых простых и востребованных в своей области.
В целом же, если отталкиваться от возможостей самого дополнения, стоит задуматься о целесообразности его использования, ведь при современных методах сетевых или интернет-подключений это особо-то и не нужно.
Песочница
Наташа
Charles – Инструкция для чайников
Тестирование мобильных приложений
Гайд о том, как с помощью Charles отслеживать пакеты и эмулировать медленную скорость Интернет-соединения на реальном Android -устройстве.
Скачать Charles можно на официальном сайте: www.charlesproxy.com
Продукт условно бесплатный (trial на 30 дней), но нам этого будет вполне достаточно.
Для проведения тестов Вам понадобится:
1) LAN-кабель с вселенным в него интернетом.
2) Ноутбук с возможностью подключения в него того самого LAN-кабеля и wi-fi передатчиком.
3) Реальное Android-устройство с установленным на него мобильным приложением, которое нужно тестировать.
Итак, отключаем ноутбук от всех возможных Wi-fi сетей и подсоединяем к нему LAN-кабель со священным Интернетом. Далее нам необходимо раздать wi-fi с помощью самого ноутбука.
Для этого нужно вызвать командную строку (обязательно — запуск от имени Администратора) и ввести следующие две команды:
Netsh wlan set hostednetwork mode=allow ssid=WIFI key=12345678 keyUsage=persistent
netsh wlan start hostednetwork
(или просто скопировать данный текст в Блокнот, сохранить как *.bat-файл и каждый раз запускать его от имени Администратора).
Wi-fi точка доступа создана. подключаемся к ней своим Android-устройством, имя сети (как Вы догадались, наверное) «WIFI», а пароль – 12345678.
Возможен вариант, что у вас не будет доступа к Интернету на самом устройстве. В таком случае необходимо открыть общий доступ к сети. Как это сделать можно без проблем найти и самому, но раз уж я пишу эту статью, то оставлю полезную ссылку прямо здесь с инструкцией по устранению данной проблемы:
После этого, как показала практика, Интернет на устройстве все-таки появился.
1) Ваш IP-адрес
2) Номер порта, который использует Charles для прокси.
Первую узнаем здесь же, в командной строке, набрав команду ipconfig.
Из всей чепухи которую Вам выдаст cmd.exe нас интересует только cвойства «Ethernet adapter Подключение по локальной сети», а именно IPv4-адрес.
Запоминаем (записываем) его и идем далее.
Номер порта, который использует Charles можно узнать внутри самой программы. Для этого в главном окне программы выберите пункт меню Proxy, в выпадающем списке – Proxy settings. Перед Вами откроется нечто подобное:
Как вы поняли эти заветные 8888 и есть наше второе число. Теперь необходимо задать ограничение скорости соединения. Для этого пройдем в пункт меню Proxy → Throttle Settings.
Ставим галочку Enable Throttling. Only for selected hosts – можно убрать (если не тестируете зависимость работы приложения от какого-либо конкретного домена).
Самый главный параметр – Bandwidth – пропускная способность нашего соединения – устанавливаем на необходимый Вам уровень (я тестировал очень медленное соединение, поэтому поставил 3kb/s). Также, включите запись (Start/Stop Recording) нажав на панели главного окна на соответвующую кнопку для начала записи.
Осталось только настроить наше устройство. Для этого зайдите в настройки, раздел Wi-fi. Заходим в свойства сети, которую раздаем с ноутбука (и к которой уже подключено устройство) выбираем «Настройка прокси» и вводим два волшебных числа в соответствующие поля.
Все готово! Возвращаемся обратно в Charles и во вкладке Sequence видим дивную картину:
Это и есть все запросы, которое делает наше приложение (для образца взял мобильную версию ВК), с подробной информацией по каждому запросу.
P.S: На написание данной статьи меня подтолкнуло несколько вещей:
— отсутствие полного и доступного описания в русскоязычной части интернета.
— англоязычное население YouTube во всех роликах предлагало тестировать Charles на эмуляторах, а для моего старенького ноутбука это смерти подобно.
Надеюсь, данная статья будет полезной. Удачи всем в тестировании и поменьше багов!
Теги:
qa, testing tools, charles, charlesproxy
Заключение
Возможно совмещение нескольких способов регистрации. Например, в папке с установочным файлом может быть серийный номер в текстовом документе, а также Patch. В таком случае при установке вводите серийный номер, а после установки используете Patch. Но для этого надо знать как пользоваться keygen, crack, patch, серийным номером по отдельности.
Предупреждаю, что материал этой статьи является ознакомительным. Использование программ без лицензии влечет за собой уголовную ответственность.
Если вы нашли ошибку в тексте, то выделите текст и нажмите Cntr+Enter.
Ни для кого не секрет, что в нашей стране 90% установленных программ на компьютерах не являются лицензионными. Программы уже взломаны, но чтобы их установить требуются некоторые навыки. В статье рассмотрены самые распространенные способы установки пиратских программ. Как пользоваться keygen? Как пользоваться crack? Что такое request code? Как пользоваться patch?