How to configure SSL certificates using Charles Web Proxy and the latest Android emulator on Windows?

I would like to use Charles web proxy to work with Android emulator on Windows. I successfully configured charles and ran the emulator with the command line:

emulator -http-proxy 127.0.0.1:8888 @NexusOne 

I see traffic coming from the Android emulator in Charles, but the problem is that I am developing a Live API that uses SSL, and I'm not sure how to configure Charles so that I can play with the data that is sent and received. I know about two areas where SSL is configured in Charles (Proxy β†’ Proxy Settings β†’ SSL and Proxy β†’ SSL SSL Certificates), but I can’t find decent documentation that allowed me to do what I want to do, Does anyone have or experience with Charles or certificates in general, who can explain how to achieve this. Perhaps the primer on the certificates will also be good, because it seems to me that I do not have enough knowledge about why it is so difficult.

+59
android ssl ssl-certificate charles charles-proxy
Oct. 20 '10 at 10:11
source share
8 answers

In Charles, go to Proxy -> Proxy Settings and select the SSL tab. Add your host to the list of locations.

For example, if your secure call is https://secure.example.com , you can enter secure.example.com or * .example. com

Once this is done, you may need to right-click on the call in the Charles main window and select the SSL Proxying option.

Hope this helps.

+48
Nov 12 2018-10-11T00:
source share

To remotely capture http or https traffic using charles, you need to do the following:

HOST - A machine with Charles and a proxy server. CLIENT - A user computer that generates traffic that you capture.

Host machine

  1. Install a fully licensed version of Charles
  2. Proxies β†’ Proxy Settings β†’ check the box "Enable Transparent HTTP Proxies"
  3. Proxies β†’ SSL Proxy Settings β†’ check the box "Enable SSL Proxies"
  4. Proxies β†’ SSL proxy settings β†’ click Add and enter * in both fields
  5. Proxies β†’ Access control settings β†’ Add your local subnet (for example: 192.168.2.0/24) to allow all machines on the local network to use proxies from another computer.
  6. It may be advisable to set up an "autosave tool" in charles, this will automatically save and rotate charles logs.

Client machine:

  1. Install and permanently accept / trust charles SSL certificate
    http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/
  2. Configure IE, Firefox, and Chrome to use the socket that hosts the proxy server (for example: 192.168.1.100:8888)

When I checked this, I took two lines of HTTPS chat on Facebook (one for someone and one for).

You can also capture Android emulator traffic this way if you run the emulator with:

 emulator -avd <avd name> -http-proxy http://local_ip:8888/ 

Where LOCAL_IP is the IP address of your computer, not 127.0.0.1, since this is the IP address of the emulated phone.

Source: http://brakertech.com/capture-https-traffic-remotely-with-charles/

+69
Mar 30 2018-12-12T00:
source share

For this, step-by-step instructions for this are needed in the Android device. Must be the same for iOS:

  • Open Charles
  • Go to proxy> Proxy Settings> SSL
  • Check the box next to "Enable SSL proxy."
  • Select "Add Location" and enter the host name and port (if necessary)
  • Click OK and make sure the option is checked.
  • Download Charles certificate here: Charles cert>
  • Email this file to yourself.
  • Open the email on your device and select a certificate
  • In the "Certificate Name" field, enter whatever you want.
  • Click "OK" and you will receive a message that the certificate has been installed

Then you should see the SSL files in Charles. If you want to intercept and change values, you can use the Map Local tool, which is really awesome:

  • In Charles, go to Tools> Local Map.
  • Select "Add Entry"
  • Enter the values ​​for the file you want to replace
  • In the "Local path" select the file you want the application to load.
  • Click OK
  • Make sure the entry is selected and click OK.
  • Run the application
  • In the "Notes" you should see that your file is loading instead of live.
+25
Mar 07 '14 at 21:45
source share

Things have changed a bit in how Charles provides proxy HTTPS.

Initially, certificate installation options were moved to the help menu.

 Help -> SSL Proxying -> Install Charles Root Certificate Help -> SSL Proxying -> Install Charles Root Certificate in iOS Simulators 

Charles SSL Proxying

Secondly, starting with iOS 9, you must provide the NSAppTransportSecurity option in Info.plist , and if you want Charles to work correctly as the man in the middle, you must add:

 <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <true/> 

as part of your domains, see the full example:

 <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> 

The reason is (I think) that Charles at some point communicates in explicit http after acting as a person on an average https server.

The last step is to activate SSL proxying for this domain in Charles (right-click on the domain and select Enable SSL proxying)

enable HTTP proxying

+23
Feb 04 '16 at 12:16
source share

What worked for me - really need to be transferred to the iPhone:

Charles

  • Enable transparent HTTP proxying
  • Enable SSL proxy.
  • Right-click on the incoming request and select SSL proxy

Mac

iPhone

  • Enable HTTP proxies for Charles on port 8888
  • Select and install an email attachment, yes trust it!

Voila, now you can view encrypted traffic from the domain added to the SSL proxy.

+7
Oct. 15 '13 at 16:32
source share

You can also click Install CA CA SSL Certificates from the Charles Help menu. For more detailed instructions, see http://blog.noodlewerk.com/general/tutorial-using-charles-proxy-to-debug-https-communication-between-server-and-ios-apps/

+6
Dec 03 2018-11-12T00:
source share

These things helped me.

  • Go to proxy β†’ SSL proxy settings β†’ Add
  • Add the name of your site and specify the port number as 8888

enter image description here enter image description here

  1. Right-click your site name in the left pane and select "Enable SSL Proxying" enter image description here

Hope this helps someone out there.

0
Nov 13 '17 at 12:05
source share

When people download software, such as the Bluestacks android emulator, to their PCs, they always ask this question- Is Bluestacks safe for my PC? Bluestacks Player was the first and one of the best Android emulators available for Windows and macOS, which allowed its users to run Android applications on their desktop systems.

0
Jul 03 '19 at 10:26
source share



All Articles