fiddler,他和其他抓包軟件有什么區別,如何使用fiddler進行抓包


前言:本文章是搭配《批量獲取微信公眾號》一文,介于群里朋友很熱情,我就趁著上班測完bug 來撰寫該文章,那么讀完本文,你會學習到什么呢?

  1. 什么是fiddler,他和其他抓包軟件有什么區別,如何使用fiddler進行抓包
  2. 如何利用fiddler抓取https 的流量,如何安裝證書
  3. 實戰:利用fiddler配合按鍵精靈批量刷微信公眾號的文章頁(經測試語音也可以)

好的,小葵花媽媽咳咳 我們開課了。。。

0x01 初識fiddler

我不了解看我文章的讀者是什么水平,反正我記得當年黑客X檔案08還是09有一個上傳漏洞 用到的就是抓包改包然后菜刀提交。。。當時驚呆了小伙伴,那么當時的抓包工具是什么呢,

Wireshark

qq%e6%88%aa%e5%9b%be20160913193525

?

對就是這貨,比較強大,按照網絡七層協議這個抓包能抓到數據鏈路層、網絡層(network layer)、傳輸層或應用層(application layer)

比幾年前見到的好用多了 還可以自帶抓取電話啊 無線啊 想想就他喵的激動

qq%e6%88%aa%e5%9b%be20160913193935

既然這個屌玩兒這么強大我們為啥還用fiddler,額 就是因為太強大 所以會讓我們看到一些很雜亂的東西 比如SYN三次握手什么的,UDP流量啊 QQ消息啊。。。。額就當我沒說吧

那這個fiddler能干嘛 很簡單 他的protocol 就能讓他搞http協議 當然包含https什么的 我們這些弄爬蟲的 通信的 和網頁打交道 就這個就行了,沒必要泡方便面還要法式廚房。

qq%e6%88%aa%e5%9b%be20160913194442

這個時候這個屌玩兒就可以http報文了

他如何實現的呢 他是修改你IE本地瀏覽器設置,

qq%e6%88%aa%e5%9b%be20160913195020

讓所有本地HTTP流量經過他的代理相當于自己搭建了一臺代理服務器,但是如果想要做https代理 那么我們還需要做一點小小的設置。

0x02 小小的設置

沒錯 正如你看到的很多fiddler教程一樣,我也要開始教你怎么樣設置了

也許你沒有很多關于MITM的知識,不好意思 關我屁事 沒學過還他喵的嘚瑟不去Google!!!!!!

啥?你說要給錢==好嘞,大爺我這就給您講,記得好評哦

要抓取走 HTTPS 的?js?內容,Fiddler 必須解密 HTTPS 流量。但是,瀏覽器將會檢查數字證書,并發現會話遭到竊聽。為了騙過瀏覽器,Fiddler 通過使用另一個數字證書重新加密 HTTPS 流量。Fiddler 被配置為解密 HTTPS 流量后,會自動生成一個名為 DO_NOT_TRUST_FiddlerRoot 的 CA 證書,并使用該 CA 頒發每個域名的 TLS 證書。若 DO_NOT_TRUST_FiddlerRoot 證書被列入瀏覽器或其他軟件的信任 CA 名單內,則瀏覽器或其他軟件就會認為 HTTPS 會話是可信任的、而不會再彈出“證書錯誤”警告。

好吧我承認我很懶上面一段是抄別人的,不過我先聲明 在MITM環境下沒有任何情況是安全的。(這不是量子通信還沒實現不是喵)

你懂這個原理以后我們開始操刀設置fiddler

首先,打開 Fiddler,在菜單欄中依次選擇 【Tools】->【Fiddler Options】->【HTTPS】,勾上如下圖的選項。

1473776558-3722-20151124210753687-177921438

勾上后,Fiddler 會提示你安裝一個證書。安裝完后點擊上圖中的 “Export Root..” 按鈕,將證書下載到桌面。

又是抄別人的教程是吧,我的咋沒有 export root certificate to desktop 對 我也是這樣想的,為啥你們高級啊 我的從官網上最新版本都沒有,我想說的是別急,聽我慢慢道來。

如果這個時候我們不管他 本地是絕對不會安裝證書的,到時候就會抱一個傻逼錯誤叫做

Fiddler “creation of the root certificate was not successful”

這個需要我們手動安裝

如何安裝呢

簡單,在fiddler目錄下有一個makecert.exe

你在這個建一個bat腳本 輸入以下命令就好,返回成功就不要運行第二次了,運行第二次他媽的后面又有問題,你要刪除多余證書,真他媽傻逼。

makecert.exe -r -ss my -n “CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com” -sky signature -eku 1.3.6.1.5.5.7.3.1 -h 1 -cy authority -a sha1 -m 120 -b 09/05/2012

如果我們要監聽手機app

怎么辦 簡單,我筆記本開一個熱點,然后手機連接上熱點,那么筆記本就和手機同處一個局域網,然后讓手機訪問你的電腦局域網IP

怎么看呢 ipconfig 謝謝

比如查到的ip為192.168.xx.38

那么你手機瀏覽器訪問的就是192.168.xx.38:8888

1473776559-4957-201502

(如果你的手機安卓沒有設置手勢密碼什么的是不行的)

然后安裝一個證書就可以愉快的被竊聽https流量了

0x03 實戰微信公眾號的爬取

讓我們用按鍵精靈打開微信公眾號

我們可以看到成功抓取我們想要的數據qq%e6%88%aa%e5%9b%be20160913220954

但是這時候我們會考慮如果我想把這些請求生成一個txt多好,我的Python或者Java直接讀取其中的key 那不是美了美了醉了醉了的感覺么,我也是這么想的,怎么做呢,簡單

看到菜單了么 選擇rules 那個 customs rules那個選項,如果先讓你安裝一個你就先安裝 然后重啟一下進入到如圖所示的界面

qq%e6%88%aa%e5%9b%be20160913221208

保存Request

(代碼已經修正空格,可以復制了,如果你發現有任何錯誤請及時與我聯系 QQ:1027968932)

把下面代碼貼在OnBeforeRequest()方法末尾

保存Response

把下面代碼貼在OnBeforeResponse()方法末尾

這里感謝Heiniu提供的方法,我已經捐贈一點心意作為答謝,這里也希望能夠讓更多人看到你的代碼,在這里表示感謝。

為了避免有些傻吊以前沒搞過什么函數式編程 把上面的代碼粘貼錯了 或者大括號搞丟了

我給你一個圖

依葫蘆畫瓢總行了吧

qq%e6%88%aa%e5%9b%be20160914091719

以上,如果覺得我的創作對你有用,記得點擊喜歡或者評論哦 打錢也是再好不過啦嘿嘿嘿~

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/387582.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/387582.shtml
英文地址,請注明出處:http://en.pswp.cn/news/387582.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Vue導入非模塊化的第三方插件功能無效解決方案

一、問題: 最近在寫vue項目時,想引入某些非模塊化的第三方插件時,總是發現會有報錯。且在與本地運行插件測試對比時發現插件根本沒有注入到jQuery中(console.log($.fn)查看當前jq有哪些方法),例如&#xff…

ES6筆記 -- 字符串拓展

字符串拓展 Unicode 相關 JS 允許使用/uxxxx的Unicode方式顯示字符, 但是只限于碼點在/u0000~/uFFFF之間, 超過該范圍的碼點必須用雙字節形式表示ES6 中, 將碼點放入大括號內, 就可以解讀JS 不能處理4個字節的字符, 字符串長度會被誤判為2ES6 提供了codePointAt方法, 能夠正確處…

android 轉發短信

通過這些代碼也可以對遠程手機實現短信控制。有興趣的可以自己改一下,說一下簡單的原理,要實現控制的話,必須得走一個固定的號碼,固定的格式,然后通過得到此號碼的內容,然后通過固定的內容,就可…

[Noi2016]區間

傳送門 Code /* 線段樹 尺取法 */ #include<bits/stdc.h> #define ll long long #define max(a,b) ((a)>(b)?(a):(b)) #define min(a,b) ((a)>(b)?(b):(a)) #define reg register inline int read() {int x0,f1;char chgetchar();while(ch<0||ch>9){if(…

安裝CentOS6.8并配置網絡圖文解說親測全過程

安裝環境&#xff1a; 本文是在win10系統安裝上VMWare并配置Centos6.8虛擬機。 準備工作 1.安裝VMWare虛擬機 1.1下載VMWare12資源鏈接&#xff1a;https://pan.baidu.com/s/1AhfMSDXLO-aA0eMqnuMWHg 提取碼&#xff1a;iftd 1.2安裝VMWare&#xff0c;在安裝過程中需要輸入密鑰…

Paxos算法是萊斯利·蘭伯特(Leslie Lamport)1990年提出的一種基于消息傳遞的一致性算法。

Paxos算法是萊斯利蘭伯特(Leslie Lamport)1990年提出的一種基于消息傳遞的一致性算法。Paxos算法解決的問題是一個分布式系統如何就某個值&#xff08;決議&#xff09;達成一致。在工程實踐意義上來說&#xff0c;就是可以通過Paxos實現多副本一致性&#xff0c;分布式鎖&…

09、策略模式

2019獨角獸企業重金招聘Python工程師標準>>> 策略模式與工廠模式最大的區別在于&#xff0c;策略模式注重的是對算法的維護&#xff0c;也可以理解為對算法的封裝。而工廠模式&#xff0c;則只是負責創建類&#xff0c;在剛接觸策略模式時候&#xff0c;往往與工廠模…

Linux創建、刪除文件和文件夾命令

https://www.cnblogs.com/c-x-m/p/9794082.html轉載于:https://www.cnblogs.com/sun-ldy/p/10279025.html

Java編寫代理服務器(Burp攔截Demo)一

大家都知道大名鼎鼎的BurpSuite代理神器&#xff0c;對于抓取HTTP請求非常好用&#xff0c;偶然&#xff0c;一朋友問我Java應該如何去編寫代理服務器&#xff08;因為他想做某些東西&#xff09;&#xff0c;有沒有相關的API 去實現&#xff0c;我想說&#xff0c;差不多你能想…

mysql實戰33 | 我查這么多數據,會不會把數據庫內存打爆?

我經常會被問到這樣一個問題&#xff1a;我的主機內存只有 100G&#xff0c;現在要對一個 200G 的大表做全表掃描&#xff0c;會不會把數據庫主機的內存用光了&#xff1f;這個問題確實值得擔心&#xff0c;被系統 OOM&#xff08;out of memory&#xff09;可不是鬧著玩的。但…

[BZOJ2125]最短路

Description 給一個N個點M條邊的連通無向圖&#xff0c;滿足每條邊最多屬于一個環&#xff0c;有Q組詢問&#xff0c;每次詢問兩點之間的最短路徑。 Input 輸入的第一行包含三個整數&#xff0c;分別表示N和M和Q 下接M行&#xff0c;每行三個整數v&#xff0c;u&#xff0c;w表…

Rabbit MQ windows下安裝

Rabbit MQ 是建立在強大的Erlang OTP平臺上&#xff0c;因此安裝Rabbit MQ的前提是安裝Erlang。通過下面兩個連接可以下載安裝最新的版本&#xff1a; 下載并安裝 Eralng OTP For Windows otp_win64_18.3.exe&#xff08;erlang的環境&#xff09;運行安裝 Rabbit MQ Serve…

spark集群配置以及java操作spark小demo

spark 安裝配置使用java來操作sparkspark 安裝 tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz rm spark-2.4.0-bin-hadoop2.7.tgz mv spark-2.4.0-bin-hadoop2.7 sparksudo vim /etc/profileexport SPARK_HOME/usr/local/stormexport PATH$PATH:$SPARK_HOME/binsource /etc/profile…

C++筆記(3)——string.h相關的一些小知識

strlen() 用于得到字符數組中第一個\0前的字符的個數&#xff0c;格式如下&#xff1a; strlen(數組); 例子&#xff1a; #include <stdio.h> #include <string.h>int main(){char str[10];gets(str);int len strlen(str);printf("%d\n", len);return 0…

最近發現系統rabbitmq丟消息比較嚴重,于是想了些方案來查找原因,給將消息發送方式添加確認機制。 我們在本地模擬了wms發送打標消息的場景. 1. 有事務 2. 先發點對點隊列, 再發訂

最近發現系統rabbitmq丟消息比較嚴重&#xff0c;于是想了些方案來查找原因&#xff0c;給將消息發送方式添加確認機制。 我們在本地模擬了wms發送打標消息的場景. 1. 有事務 2. 先發點對點隊列, 再發訂閱隊列 3. 批量發送 4. 在生產環境與測試環境的RabbitMQ都進行了測試 …

uoj#388. 【UNR #3】配對樹(線段樹合并)

傳送門 先考慮一個貪心&#xff0c;對于一條邊來說&#xff0c;如果當前這個序列中在它的子樹中的元素個數為奇數個&#xff0c;那么這條邊就會被一組匹配經過&#xff0c;否則就不會 考慮反證法&#xff0c;如果在這條邊兩邊的元素個數都是偶數&#xff0c;那么至少有兩組匹配…

一道Js判斷對象是否相等面試題引發的故事

話說&#xff0c;說什么呢&#xff0c;先看下題吧還是、 function checkName(data) { if (data { name: LIMING }) { console.log("one"); 復制代碼 } else if (data { name: LIMING }) { console.log(two"); 復制代碼 } else { console.log("three&quo…

序列化

什么是序列化&#xff1f;為什么要實現序列化&#xff1f;有什么作用&#xff1f; 序列化就是把具體的對象轉化成二進制的字節碼文件進行存儲或網絡傳輸。反過來就是反序列化。 將要存儲或網絡傳輸的對象必須實現序列化才可以。 如果一個類已經實現了序列…

搭建Hive平臺

http://www.cnblogs.com/gpcuster/archive/2010/02/24/1672635.html Hive是一個基于Hadoop的數據倉庫平臺。通過hive&#xff0c;我們可以方便地進行ETL的工作。hive定義了一個類似于SQL的查詢語言&#xff1a;HQL&#xff0c;能夠將用戶編寫的QL轉化為相應的Mapreduce程序基于…

Java語言與sikuli配合

很早之前寫過一篇介紹sikuli的文章。本文簡單介紹如何在java中使用sikuli進自動化測試。 圖形腳本語言sikuli sikuli IDE可以完成常見的單擊、右擊、移動到、拖動等鼠標操作&#xff0c;java引用sikuli-script.jar同樣可以執行這些常見的鼠標操作&#xff0c;因此即可方便的編寫…