安利一個Mac下好用的抓包工具-Charles


Charles:讓天底下沒有難抓的包。

前言

今天給大家推薦一個我所使用過的抓包工具中最好用的抓包工具-Charles(音譯:查爾斯),它可以抓各端發起的網絡請求,我主要用來抓移動設備上的請求,上次小明就通過這種方式找到了一款付費App課程的漏洞,咳咳,不展開說了,畢竟web端的瀏覽器網絡請求,打開開發者工具就能看到(滑稽)。

下載安裝

  • 方式一:官網下載

鏈接:https://www.charlesproxy.com/download/

期限:試用30天

  • 方式二:百度網盤(推薦)

鏈接: https://pan.baidu.com/s/1p7GJKKfFL4NHgy47Hm_5ng

期限: 沒有使用限制,附帶安裝說明文檔(你懂的),推薦使用正版軟件。

密碼: 關注微信公衆號“程序員小明”,回覆“查爾斯”即可獲取。

配置及使用

第一次啓動的時候會提示自動配置,點擊同意即可,當然也可以自定義配置。主要配置全部在Proxy這裏,端口號默認8888,也可以自己調整。

接下來,給大家分別介紹一下使用Charles抓取瀏覽器和移動端網絡請求的方法。

瀏覽器

拿Mac舉例(如題),需要將當前你連接的網絡配置網頁代理(http)、網頁安全代理(https),默認Charles會自動配置好,如下所示

當然,如果你看到的不是這樣,也可以手動配置,其中127.0.0.1表示本地地址,端口號根據自己的配置指定。確認好以上配置以後,這時我們打開百度,卻提示:您的連接不是私密連接!

此時一定要沉着冷靜,這是表示當前https代理證書不被信任,解決方法如下:

  • 打開Charles,選擇Help -> SSL Proxy -> Install Charles Root Certificate

  • 在彈出的證書窗口中,可以看到該證書已成功添加,但是此時該證書圖標有叉號,表示仍然不被信任

  • 雙擊此證書,在彈出的Charles Proxy CA窗口中,點擊“信任“按鈕 -> 使用此證書 -> 選擇”始終信任“後關閉窗口,使用賬號和密碼授權後,即可看到此證書叉號消失,表示已經被信任。

  • 再次打開百度,我們就可以正常訪問
    如果此時Charles彈出彈窗提示是否allow,選擇allow即可。當然,我們也可以設置全部https網絡請求都允許抓取
    選擇Proxy -> SSL Proxying Settings,增加一個Location
Host: *
Port: 443

移動端(本文重點)

抓取http請求

  • 同樣在電腦上打開Charles
  • 現在需要在手機上配置代理
    wifi設置-網絡代理,輸入電腦的ip、端口號(默認8888),可通過ifconfig查看本機電腦ip
  • 保存後,Charles會彈出彈窗提示是否allow,選擇allow即可。
    如果你使用的手機系統是Android,此時,Charles就可以抓取http和https的網絡請求,而如果你使用的是iPhone的ios系統,則目前只能抓取http網絡請求,接下來我們看一下ios系統的手機如何抓取https的網絡請求。

抓取 ios https請求

衆所周知,ios是一個很講究的系統,首先我們需要安裝證書
選擇Charles-> Help -> SSL Proxying-> Install Charles Root Certificate on a Mobile Device or Remote Browser,我們可以看到如下提示:

小明翻譯一下:

  • 爲你的手機配置http代理
    打開手機設置的無線局域網(確保手機和電腦在同一WiFi下:),點擊右邊的i,拉到最下面,選擇“配置代理”,代理地址就是彈窗的地址。
  • 打開手機瀏覽器,輸入chls.pro/ssl,下載並安裝證書
    ios的證書下載後需要到 設置 -> 通用 -> 描述文件 下去安裝證書
  • 注意!還沒有結束!(多少英雄好漢跌倒在這裏)
    安裝成功後,實際上我們並未授信證書, 選擇 設置 -> 通用 -> 關於本機 -> 證書信任設置 對證書開啓完全信任!

可以設置不代理計算機的請求(可選擇)

選擇Proxy -> macOS 取消勾選則表示不抓取計算機的請求

同理,選擇Proxy -> Mozilla Firefox 不勾選則不抓取計算機上 Mozilla Firefox瀏覽器的請求
這個應用場景主要是隻針對移動端數據抓取時,則這兩項就可以不勾選。

Charles的操作使用今天就介紹到這裏,恭喜你!已經掌握了它的80%功能,已經足夠日常開發使用,是不是感覺自己又變厲害啦!當然,它還有高端的玩法,比如打斷點,修改請求、返回的參數,本次暫不介紹,以後有機會小明再來補充。

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