錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù),錦州廣廈維修電腦,公司IT外包服務(wù)
topFlag1 設(shè)為首頁(yè)
topFlag3 收藏本站
 
maojin003 首 頁(yè) 公司介紹 服務(wù)項(xiàng)目 服務(wù)報(bào)價(jià) 維修流程 IT外包服務(wù) 服務(wù)器維護(hù) 技術(shù)文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù)技術(shù)文章
怎么在macOS上監(jiān)控一個(gè)APP的HTTPS流量

作者: 佚名  日期:2017-06-10 10:51:41   來(lái)源: 本站整理

 當(dāng)你需要逆向分析一個(gè)網(wǎng)絡(luò)協(xié)議的時(shí)候,或者進(jìn)行一些關(guān)于網(wǎng)絡(luò)安全方面的行為的時(shí)候,你就需要去收集網(wǎng)絡(luò)中傳輸?shù)牧髁繑?shù)據(jù),通過(guò)收集網(wǎng)絡(luò)中的傳輸數(shù)據(jù)信息,你可以去理解網(wǎng)絡(luò)協(xié)議是怎么工作的,或許還能發(fā)現(xiàn)網(wǎng)絡(luò)中傳輸?shù)拿舾行畔ⅰ?/span>
如果網(wǎng)絡(luò)協(xié)議傳輸?shù)氖敲魑男畔ⅲ呛芎棉k,直接用tcpdump 或者wireshark等類似的抓包軟件就可以獲取網(wǎng)絡(luò)協(xié)議傳輸?shù)男畔?nèi)容,但是現(xiàn)在越來(lái)越多的協(xié)議使用了加密機(jī)制,比如HTTPS協(xié)議,這時(shí)候就需要MITM(中間人攻擊)進(jìn)行攔截加密協(xié)議。
本篇文章我會(huì)向大家介紹如何在 OSX上監(jiān)控一個(gè)app的HTTPS流量以及實(shí)驗(yàn)中遇到的問題。
0x01 正文
攔截HTTPS流量的基本步驟
1)生成一個(gè)根證書
2)安裝這個(gè)根證書
3)用proxychains 去代理指定的app
4)使用mitmproxy 去攔截流量
一些需要安裝的軟件
1、 安裝并配置proxychains

brew install proxychains-ng
創(chuàng)建一個(gè)名為 proxychains.conf 的文件,然后加入以下內(nèi)容:
strict_chain
quiet_mode
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000
[ProxyList]
http 127.0.0.1 8080
http 127.0.0.1 8080  這行最重要,它的意思是說(shuō)重定向app所有的流量到127.0.0.1:8080 (mitmproxy默認(rèn)監(jiān)控端口就是8080),然后我們就可以用mitmproxy在127.0.0.1:8080 監(jiān)控所有的流量了。
2、使用pip安裝并配置mitmproxy
pip install --upgrade pip 
pip install mitmproxy
這兩行命令就可以安裝好mitmproxy
執(zhí)行以下命令運(yùn)行mitmproxy

./mitmproxy --host
接下來(lái)就是給系統(tǒng)安裝根證書,默認(rèn)情況下mitmproxy會(huì)自動(dòng)生成一個(gè)根證書(mitm-ca-cert.pem),這個(gè)根證書位于~/.mitmproxy下面。
首先執(zhí)行 

open ~/.mitmproxy
然后,按下組合鍵 Command + Space ,然后輸入Keychain Access, 回車
然后找到mitmproxy根證書,雙擊 ,或者將mitmproxy根證書拖拽到Keychain Access 窗口中上述執(zhí)行OK,之后,你將會(huì)看到下圖顯示內(nèi)容

如果你足夠細(xì)心的話,你會(huì)發(fā)現(xiàn)刪除安裝好的mitmproxy 根證書前面有個(gè) 紅叉 ,這表示系統(tǒng)并不信任這個(gè)根證書, 為了讓系統(tǒng)信任這個(gè)根證書,你需要這樣做:右鍵單擊mitmproxy根證書,然后選擇"Get Info"(如果你是英文界面的話),展開 "Trust"將: When using this certificate 修改為 Always Trust修改后的內(nèi)容如下:

接下來(lái), 你還需要執(zhí)行以下命令,這樣系統(tǒng)才能完全信任這個(gè)根證書

sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/.mitmproxy/mitmproxy-ca-cert.pem
OK,最后的mitmproxy證書信息界面如下:

看到了吧,mitmproxy 根證書前面的 紅叉 提示不見了,說(shuō)明系統(tǒng)完全信任了這個(gè)根證書
3、開始使用mitmproxy
其實(shí)github上mitmproxy的手冊(cè)寫的非常好,很詳細(xì),這里我就不過(guò)多解釋了
現(xiàn)在我們已經(jīng)做好了
1)配置proxychains 將app的http流量指向了127.0.0.1:8080
2)安裝好了mitmproxy的根證書
3)mitmproxy運(yùn)行OK
現(xiàn)在需要做的就是測(cè)試是否工作的OK
在另一個(gè)終端窗口執(zhí)行:

proxychains4 -f proxychains.conf curl https://calebfenton.github.io/
現(xiàn)在切換到mitmproxy的運(yùn)行窗口觀察是否有流量被捕獲到, 結(jié)果非常令人失望, 竟然沒有捕獲到任何流量,為毛?因?yàn)橄到y(tǒng)app 根本沒鳥你,我查了一下proxychains 在github上的問題反饋列表,找到了原因 (和SIP有關(guān)): https://github.com/rofl0r/proxychains-ng/issues/78  你可以這樣解決這個(gè)問題:
cp `which curl` .
proxychains4 -f proxychains.conf ./curl https://calebfenton.github.io/
或者你可以先安裝一個(gè)wget,然后將curl替換為wget
brew install wget
proxychains4 -f proxychains.conf ./wget https://calebfenton.github.io/
注: wget不是系統(tǒng)app
一旦你觀察到mitmproxy捕獲到了通信數(shù)據(jù),mitmproxy現(xiàn)在工作是正常的, 說(shuō)明剛才新安裝到系統(tǒng)的mitmproxy的根證書被系統(tǒng)信任了, proxychains 也正確地Hook了網(wǎng)絡(luò)通信數(shù)據(jù),看起來(lái)都很OK,可能很多人都很滿足現(xiàn)在的一切了。 
但是當(dāng)我試圖用proxychains Hook python 代碼所產(chǎn)生的的網(wǎng)絡(luò)數(shù)據(jù)的時(shí)候, 問題出現(xiàn)了。
python 代碼如下(保存為文件req.py):
import requests
r = requests.get('https://calebfenton.github.io/')
print(r)
非常簡(jiǎn)單的一段代碼(前提是你要安裝了requests庫(kù)),和上面curl起到的作用類似,但是執(zhí)行proxychains4  python req.py 的時(shí)候出現(xiàn)了錯(cuò)誤:
    

看到錯(cuò)誤信息,我好像知道了問題的原因了,網(wǎng)絡(luò)數(shù)據(jù)被Hook給了mitmproxy,mitmproxy給的證書requests根本不信任啊,因?yàn)閜ython 代碼根本不知道m(xù)itmproxy的根證書在哪兒啊,所以我們只要修改python代碼,在get請(qǐng)求中指定mitmproxy的根證書路徑即可
import requests
r = requests.get('https://calebfenton.github.io/', verify='/Users/caleb/.mitmproxy/mitmproxy-ca-cert.pem')



熱門文章
  • 機(jī)械革命S1 PRO-02 開機(jī)不顯示 黑...
  • 聯(lián)想ThinkPad NM-C641上電掉電點(diǎn)不...
  • 三星一體激光打印機(jī)SCX-4521F維修...
  • 通過(guò)串口命令查看EMMC擦寫次數(shù)和判...
  • IIS 8 開啟 GZIP壓縮來(lái)減少網(wǎng)絡(luò)請(qǐng)求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對(duì)講門禁讀卡異常維修,讀卡芯...
  • 新款海信電視機(jī)始終停留在開機(jī)界面...
  • 常見打印機(jī)清零步驟
  • 安裝驅(qū)動(dòng)時(shí)提示不包含數(shù)字簽名的解...
  • 共享打印機(jī)需要密碼的解決方法
  • 圖解Windows 7系統(tǒng)快速共享打印機(jī)的...
  • 錦州廣廈電腦上門維修

    報(bào)修電話:13840665804  QQ:174984393 (聯(lián)系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號(hào):遼ICP備2023002984號(hào)-1
    上門服務(wù)區(qū)域: 遼寧錦州市區(qū)
    主要業(yè)務(wù): 修電腦,電腦修理,電腦維護(hù),上門維修電腦,黑屏藍(lán)屏死機(jī)故障排除,無(wú)線上網(wǎng)設(shè)置,IT服務(wù)外包,局域網(wǎng)組建,ADSL共享上網(wǎng),路由器設(shè)置,數(shù)據(jù)恢復(fù),密碼破解,光盤刻錄制作等服務(wù)

    技術(shù)支持:微軟等
    主站蜘蛛池模板: 亚洲Av无码国产情品久久 | 亚洲国产综合无码一区| 亚洲爆乳精品无码一区二区| 亚洲另类无码专区首页| heyzo专区无码综合| 免费无遮挡无码永久视频| 日韩夜夜高潮夜夜爽无码| 91精品久久久久久无码| 国产精品无码不卡一区二区三区| 亚洲Av无码一区二区二三区| 亚洲高清无码在线观看| 中文字幕无码不卡一区二区三区| 亚洲熟妇无码八AV在线播放| 国产AV无码专区亚洲AV蜜芽| 日韩人妻无码一区二区三区99| 亚洲无码日韩精品第一页| 中日韩亚洲人成无码网站| 亚洲级αV无码毛片久久精品| 无码精油按摩潮喷在播放| 久久午夜无码鲁丝片直播午夜精品| aⅴ一区二区三区无卡无码| 亚洲日韩精品A∨片无码加勒比 | 日韩人妻无码一区二区三区| 亚洲av无码有乱码在线观看| 精品深夜AV无码一区二区| 国产亚洲美日韩AV中文字幕无码成人| 无码熟妇人妻av| 少妇人妻偷人精品无码AV| 高清无码午夜福利在线观看| 日韩AV无码久久一区二区| 蜜桃成人无码区免费视频网站| 人妻中文无码久热丝袜| 中文无码熟妇人妻AV在线| 久久av高潮av无码av喷吹| 亚洲av无码成人精品区| 熟妇人妻系列av无码一区二区| 精品人妻无码专区中文字幕 | 毛片一区二区三区无码| 免费无码又爽又刺激高潮| 性色AV一区二区三区无码| 亚洲精品无码av天堂|