Charles網(wǎng)絡(luò)抓包工具使用教程

1. 前言:

Charles是一款抓包修改工具,相比起burp,charles具有界面簡單直觀,易于上手,數(shù)據(jù)請求控制容易,修改簡單,抓取數(shù)據(jù)的開始暫停方便等等優(yōu)勢!作為程序員, 這個工具的使用還是必須, ?廢話不多說, ?來點實在的, 下面來詳細介紹下這款強大好用的抓包工具的使用

2. 下載安裝

首先需要下載java的運行環(huán)境支持(一般用burp的人肯定也都有裝java環(huán)境,下載鏈接:鏈接: http://pan.baidu.com/s/1c2wRVHI 密碼: rkcu, 這個是昨天剛從甲骨文官網(wǎng)下載的),裝好java環(huán)境后,下載Charlet(鏈接: http://pan.baidu.com/s/1c14dr0k 密碼: 9cjv ?本軟件僅供學(xué)習(xí)使用不要用作其他商業(yè)目的,不要亂傳播,要不然樓主被抓了以后沒法分享了)

3. 電腦端抓包

下面是pc端的抓包使用情況 Charles支持抓去http、https協(xié)議的請求,不支持socket。

然后charles會自動配置瀏覽器和工具的代理設(shè)置,所以說打開工具直接就已經(jīng)是抓包狀態(tài)了。 這里打開百度抓包下,工具界面和相關(guān)基礎(chǔ)功能如下圖所示:

上圖中的7個位置是最常用的幾個功能。

1. 那個垃圾桶圖標(biāo),功能是clear,清理掉所有請求顯示信息。

2. 那個望遠鏡圖標(biāo),功能是搜索關(guān)鍵字,也可以使用ctrl+f實現(xiàn),可以設(shè)置搜索的范圍。

3. 圓圈中間紅點的圖標(biāo),功能是領(lǐng)抓去的數(shù)據(jù)顯示或者不顯示的設(shè)置。 這個本人認(rèn)為是charles工具很方便的一個兩點,一般都使其為不顯示抓去狀態(tài),只有當(dāng)自己測試的時候的前后,在令其為抓取并顯示狀態(tài)。這樣可以快準(zhǔn)狠的獲取到相關(guān)自己想要的信息,而不必在一堆數(shù)據(jù)請求中去尋找。

4. 編輯修改功能,可以編輯修改任意請求信息,修改完畢后點擊Compose就可以發(fā)送一個修改后的請求數(shù)據(jù)包。

5. 抓取的數(shù)據(jù)包的請求地址的url信息顯示。

6. 抓取的數(shù)據(jù)包的請求內(nèi)容的信息顯示,post請求可以顯示form形式,直觀明了。

7. 返回數(shù)據(jù)內(nèi)容信息的顯示.

其中5、6、7中都有各種形式的數(shù)據(jù)顯示形式,其中raw是原始數(shù)據(jù)包的狀態(tài), 更多功能可以去幫助文件中查看英文版教程!

4. 顯示模式

charles抓包的顯示,支持兩種模式,Structure和Sequence,其優(yōu)點分別如下。

Structure形式如下圖 優(yōu)點:可以很清晰的看到請求的數(shù)據(jù)結(jié)構(gòu),而且是以域名劃分請求信息的,可以很清晰的去分析和處理數(shù)據(jù)。

Sequence形式如下圖 優(yōu)點:可以很清晰的看到全部請求,不用一層一層的去點開,這里是以數(shù)據(jù)請求的順序去執(zhí)行的,也就是說那個請求快就在前面顯示。

具體要說兩種形式哪個更好,這個就是見仁見智了。個人喜歡第一種,左側(cè)列表欄比較習(xí)慣!

5. 移動端抓包

這里相比其他抓包軟件來說要簡單的多了,具體步驟如下:

1. Charles上的設(shè)置?

要截取iPhone上的網(wǎng)絡(luò)請求,我們首先需要將Charles的代理功能打開。在Charles的菜單欄上選擇“Proxy”->“Proxy Settings”,填入代理端口8888,并且勾上”Enable transparent HTTP proxying” 就完成了在Charles上的設(shè)置。如下圖所示:


我們需要獲取Charles運行所在電腦的IP地址,打開Terminal,輸入ifconfig en0, 即可獲得該電腦的IP



2.?iPhone上的設(shè)置?

在iPhone的 “設(shè)置”->“無線局域網(wǎng)“中,可以看到當(dāng)前連接的wifi名,通過點擊右邊的詳情鍵,可以看到當(dāng)前連接上的wifi的詳細信息,包括IP地址,子網(wǎng)掩碼等信息。在其最底部有“HTTP代理”一項,我們將其切換成手動,然后填上Charles運行所在的電腦的IP,以及端口號8888,如下圖所示: ?

設(shè)置好之后,我們打開iPhone上的任意打開網(wǎng)絡(luò)鏈接, 盡情地玩耍,哈哈?。ㄈ缓竽銜l(fā)現(xiàn)很多app的密碼和賬戶一覽無余,so,以后注冊小公司網(wǎng)站時密碼一定要和自己的qq, 支付寶等等密碼區(qū)分開,要不然小公司服務(wù)器被攻破之后,后果可想而知)

注意:手機要與電腦在同一個WiFi下哦!這個很重要

6. 其他常用功能

相信上面介紹的那些你已經(jīng)學(xué)會了吧,下面再說說charles的一些其他常用的功能

選擇請求后,右鍵可以看到一些常用的功能,這里說說Repeat 就是重復(fù)發(fā)包一次。 然后Advanced Repeat就是重復(fù)發(fā)包多次,這個功能用來測試短信轟炸漏洞很方便。

還有比如說修改referer測試CSRF漏洞,修改form內(nèi)容測試XSS,修改關(guān)鍵的參數(shù)測試越權(quán),修改url、form、cookie等信息測試注入等,都非常方便。

好了,這款工具的介紹就到這里了!

7. 問題匯總

Charles是一款很好用的抓包修改工具,但是如果你不是很熟悉這個工具的話,肯定會遇到各種感覺很莫名其妙的狀況,這里就來幫你一一解答。

1. 為什么下載了不能用?。看虿婚_啊。

因為charles是需要java環(huán)境才能運行的,需要先安裝java環(huán)境才可以。

2. 為什么我用著用著就自動關(guān)閉了?大概30分鐘就會關(guān)閉一次。

因為charles如果沒有注冊的話,每次打開后就只能喲個30分鐘,然后就會自動關(guān)閉,所以最好在使用前先按照說明去進行工具的注冊操作。

3. 為什么用了charles后,我就上不了網(wǎng)頁了,但是qq可以。

因為如果charles是非正常狀態(tài)下關(guān)閉的話,那么瀏覽器的代理就不會被自動取消,所以會導(dǎo)致這種情況。

解決辦法:

第一種:直接打開charles,然后再正常關(guān)閉即可。 第二種:將瀏覽器代理位置的勾選去掉。

4. 為什么我用charles不能抓到socket和https的數(shù)據(jù)呢?

首先,charles是不支持抓去socket數(shù)據(jù)的。 然后,如果抓不到https的數(shù)據(jù)的話,請查看你是不是沒有勾選ssl功能。 Proxy - Proxy Settings - SSL 設(shè)置

5. 為什么我用charles抓取手機APP,什么都是配置正確的,但是卻抓不到數(shù)據(jù)。

首先,請確保電腦和手機是在同一個局域網(wǎng)下,這個很重要。然后確保手機的代理是否設(shè)置正確!

6. 抓包后發(fā)現(xiàn)form中有些數(shù)據(jù)顯示是亂碼怎么辦?

首先,請在Raw模式下查看,Raw模式顯示的是原始數(shù)據(jù)包,一般不會因為編碼問題導(dǎo)致顯示為亂碼。

其次,解決中文亂碼

?Response中文亂碼:在Info.plist 中 的vmoption 添加-Dfile.encoding=UTF-8 ( info.plist路徑: 應(yīng)用程序->Charles.app->顯示包內(nèi)容->Info.plist)

7. ?我用charles抓手機app的數(shù)據(jù),但是同時也會抓去到電腦端的數(shù)據(jù),可以設(shè)置嗎?

可以,設(shè)置位置在Proxy - MacOS Proxy ,勾選表示接收電腦的數(shù)據(jù)抓包,如果只想抓去APP的數(shù)據(jù)請求,可以不勾選此功能。

8. ?想要復(fù)制粘貼某些數(shù)據(jù)的話,怎么辦,右鍵沒有相應(yīng)功能啊?

請直接使用Command +C 和?Command+V 即可。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容