手機抓包charles使用

使用的是charles-window。之前使過fiddler但是感覺並沒有charles好用以及一目瞭然。

鏈接: https://pan.baidu.com/s/1NMNXa8M4niLObQKIsCNL3A 提取碼: 2wsa 

安裝包可以通過連接下載,官網的下載速度簡直慢到......下載完正常安裝就可以。

操作流程

1:配置charles

    設置不代理計算機的請求

     proxy ->取消勾選 windows proxy (勾選則抓取計算機的請求)

     

 

  設置代理https並添加證書

    https的請求需要添加證書,無論是charles還是手機端都需要安裝證書。

     1.設置charles

    proxy -> SSL Proxy Settings 彈出一個 ssl代理設置界面 

    

    勾選Enable SSL Proxying,點擊Add添加需要抓包的host,添加默認端口號443。

   還是當前彈窗,選中Client Certificates,添加域名的證書,操作一樣。

  •  關心域名的重點顯示,在抓包的時候域名會背景黃色重點顯示

    View -> Foucused Hosts 用於設置重點關心域名,在列表中會獨立顯示

添加域名和之前操作一樣。

  • 安裝charles證書

     Help -> ssl proxy -> Install Charles Root Certificate

      

點擊“安裝證書”

 

之後就點下一步完成就可以了。以上pc端的證書配置完成,接下來配置手機端。

查看手機端所需配置

Help -> ssl proxy -> Install Charles Root Certificate on a Moblie Device or Remote Browser

1,可以看到一個彈窗給出了手機端需要配置的域名和端口,域名就是172.xxx.xx.117,端口號就是8888。接下來配置手機中的wifi設置,需要電腦和手機連接同一個wifi,在手機端中修改當前wifi設置,將代理選擇手動,服務器主機名填入域名,服務器端口輸入8888。手機域名配置完成

2,打開瀏覽器輸入“chls.pro/ssl”回車會進入charles證書下載,加載之後是一個.pem文件,需要重命名更成成.crt後綴,這是手機端的證書安裝包,直接打開安裝即可,證書的名稱可以自己命名。注:.pem文件保留下來,後面需要用到。

 

****正常來說步驟到現在一般的抓包就完成了,但是如果你的手機是安卓7以後的版本,就會失敗 一直是“unknow”。應用程序不再信任用戶或管理員添加的CA用於安全連接。

 

解決辦法:

配置文件中添加:

  <application
       ...
        android:networkSecurityConfig="@xml/network_security_config"
      >

在res/xml中添加“network_security_config.xml”文件。

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
    <domain-config>
        <domain includeSubdomains="true">api.xj.mydeertrip.com</domain>//需要抓包的域名
        <trust-anchors>
            <certificates src="@raw/charles"/>//手機中下載的.pem格式證書文件 名稱 
        </trust-anchors>
    </domain-config>
</network-security-config>

其中charles是.pem文件名,就是手機中下載的.pem證書文件放入工程的res/raw文件夾中即可。

此時在安裝app即可發現charles有報文了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章