2008年3月30日 星期日

Wireshark 教學

前一陣子幫忙寫了一份文件,關於wireshark的,從word統計下來是3768個字>"<
既然寫了就分享在網路上面好了,不要浪費,不過請注意這邊的CC授權..謝囉。

這篇內容除了介紹wireshark的基本使用,還介紹了三個部分
第一部分是看看大家平常上的BBS或是網頁有多危險,我們如何輕易知道別人的密碼。
第二部分是觀察一下HTTP的protocol,這好像沒什麼 。
第三部分利用了roomi這個網站來看看,似乎可以輕易洗錢???我也不知道...囧>

有興趣就點進去看看吧...文章實在有點長編輯起來真麻煩。
另外,裡面對封包的定義不是很完善,如果造成混淆請看網路相關書籍囉!


前言:

網路故障了?沒有用網路時網路燈號卻一直閃爍不停?新的網路通訊協定夠不夠完善?種種大大小小的問題充斥在網路世界中,為了解決各種問題,我們常常需要先對網路中的資料進行擷取和分析,以瞭解問題的癥結點並擬對策。Wireshark就是一種網路分析工具,它能夠擷取網路封包,並盡可能顯示出最為詳細的網路封包資料。本文將對Wireshark做一些基本的使用介紹。

Wireshark簡介:

Wireshark的前身叫做Ethereal(2006.06因為商標問題改名),是一開放原始碼軟體,使用者可以免費從官方網站(http://www.wireshark.org/)下載使用。Wireshark支援了多種作業系統,在Windows、UNIX、MAC…etc下都有相對應的版本。藉由此軟體我們可以抓取資料封包,進一步分析封包內的摘要及詳細資訊。一般常用在網路故障排除、監聽異常封包、軟體封包問題檢測等地方。Wireshark的方便強大之處,在於其支援的Protocol多且完整,更因為開放原始碼的關係,更新Protocol相當迅速,不同封包擷取軟體所產生的檔案亦可在這套軟體中讀取檢視。此外,在介面使用上,Wireshark圖形化的介面相當容易上手,豐富的過濾語言,可以輕鬆判別出封包的種類,是一套整合度完整的軟體。

安裝Wireshark:

首先我們必須到官方網頁來下載安裝程式,位置是http://www.wireshark.org/,官方網頁中有不同的作業系統可供選擇,也提供了Portable的版本,在這邊我們將以Windows Installer (.exe) Package來做示範。

安裝的過程相當簡單,跟一般軟體的流程一樣,接受授權、客製化、安裝。現階段我們使用預設的設定即可。



比較需要注意的是在安裝的過程中會要我們安裝WinPcap(Windows Packet Capture),如圖所示。WinPcap 是 Windows 版本的 lippcap 函式庫,Wireshark使用了這個函式庫去抓取網路上的封包,它含有支援抓取網路上封包的驅動程式,所以我們必須要安裝它,若電腦本身已經有安裝WinPcap,建議還是更新到最新的版本。

按下Install開始安裝,若想要瞭解更多關於WinPcap的資訊,點選『What is WinPcap?』的按鈕即可。

在一連串的Next過後,Wireshark安裝完畢如上圖。接下來我們藉由三個小步驟來介紹Wireshark的功能。


步驟1:明碼封包的截取與觀察
目的:透過基本的封包擷取,瞭解Wireshark的使用流程。從實驗中我們必須要知道sniffer的運作原理,習得呈現內容過濾的技巧,並利用stream彙整的功能找到需要的資訊。

流程:
當安裝完畢,點擊開啟Wireshark,看到的程式介面如下。

接著我們想要開始抓取網路的封包,請點選主選單中的Capture → Interfaces會看到類似以下的畫面,此畫面會列出電腦裡所有的網路卡資訊。選擇想要觀察的網路卡,按下Start就開始擷取封包了。[Tips: 進入這個畫面,Wireshark就會開始監測每張網路卡上的封包流動數目,若真的不確定要選哪張網路卡,選擇packets/s數高的,通常會選中,這是比較懶人的作法啦!]
開始監測之後,畫面會一直動態產生所接收到的封包。你可能會發現很多封包的Source和Destination都不是自己,這是因為我們目前所使用的區域網路大部分為乙太網路,係採用廣播為技術基礎,所以在區域網路中我們很容易可以透過sniffer軟體(本文介紹的Wireshark即是)看到別人的封包,甚至知道別人的隱私內容,本實驗就是要強調明碼的危險性。
明碼傳輸的protocol相當多,telnet、FTP、HTTP等常用協定皆在這個範疇裡面,國人熱愛的BBS(Bulletin Board System)就是使用telnet協定運作,透過sniffer的監聽我們很容易知道別人的帳號密碼。
我們拿BBS來做這次的實驗,首先連接到一個BBS站台,以輔大資工謠言報為例,在命令提示字元內鍵入telnet bbs.rumor.tw。
注意:此時Wireshark的還是在Capture狀態。

進入登入介面後,輸入帳號密碼登入。
接下來我們停止Wireshark的擷取動作,執行主選單的Capture → Stop或是直接點選Stop the running live capture圖示。
停止之後介面上的封包將不再增加,不過所擷取到的資料仍舊太多太雜,這時候可以利用Display Filter功能過濾呈現的內容,如下圖點擊Expression挑選過濾語法。

因為我們只是要篩選出Telnet協定的流量,找到TELNET字樣如下,直接按OK。

其實篩選的功能很強大,遵循著語法:[通訊協定][運算元][數值]就可以過濾出很多有用的資訊。
通訊協定這部分在前面有提到,Wireshark幾乎支援目前所有的協定,所以不太會有解析不出來的情況發生。
可以用的運算元就是上圖Relation那個區塊,亦可以用縮寫來替代。如下表:
English C-like Description and example
eq == Equal ex: ip.src==192.168.2.89
ne != Not equal ex: ip.src!= 192.168.2.89
gt > Greater than ex: frame.len > 10
lt <>= Greater than or equal to ex: frame.len ge 0x100
le <= Less than or equal to ex: frame.len <= 0x20 舉幾個例子: 只顯示 IP Address 為 192.168.2.89 語法為ip.addr eq 192.168.2.89 只顯示 IP Address 為 192.168.2.88 且 port 為 23 語法為(ip.addr eq 192.168.2.88) and (tcp.port eq 23) 只顯示通訊協定為 ARP 或 UDP 語法為arp or tcp 詳細的描述可以參考官方wiki:http://wiki.wireshark.org/DisplayFilters

語法確定後點選Apply就過濾出所有包含TELNET協定的封包。介面的中央區塊代表的是封包裡面的內容,關於這個區塊代表的意義我們實驗2會再談到,現階段我們要點開最下面的+號如圖紅色部分,觀看屬於應用層的內容。


經過觀察,發現一些連續的sent封包,內容依序放著s、h、a、o、l、i、n,這不正是我們先前登入的帳號?可是這樣一個封包一個封包看相當沒有效率,沒關係,Wireshark可以節錄整理串流訊息,在相關的封包上面按右鍵找到Follow TCP Stream點選,Wireshark會幫你彙整該stream的內容。

彙整出來如下圖,紅色的部分為我們送出的DATA,藍色的部分是我們收到的DATA。

為了更去蕪存菁,我們再篩選出只有我們送出的DATA,點選下面紅色部分進行篩選。

最後的結果如下,內容中『....』代表的是指令,沒有辦法顯現出來。可以看到我們曾經發出shaolin,然後按下換行,繼續輸入demo1換行,從這邊我們確切的抓到了帳號跟密碼資訊ID:shaolin Password:demo1。除此之外,我們更可以進一步知道別人在看什麼文章,或是得知別人私人信件的內容,隱私將毫無保障。
[註:為了避免被有心人監測到重要資料,有SSH、SSL、HTTPS等加密協定可用就盡量使用,至少別人監聽到的內容是加密過的。]

步驟2:HTTP Protocol的觀察
目的:藉由HTTP Protocol的觀察,練習篩選所要的資訊,並能夠清楚的知道TCP/IP實際的運作模式

流程:這次要看的是自己的HTTP封包。在上一個實驗中我們用到Display Filter,這個實驗也可以透過同樣的方式組合過濾,不過我們來嘗試另一種過濾方式Capture Filter。
同樣的進入選擇網路卡的地方。Capture → Interfaces點選Options。

進入了選項視窗後,有各種參數可以設定,比較主要的功能是在Capture這個區塊,其中:

Interface代表你要使用的網路卡。
IP address代表該網路卡的網路位置。
Buffer size代表抓取網路封包時所用的緩衝區大小。
Capture packets in promiscuous mode代表抓取封包的模式,如果勾選會抓取整個LAN的封包;如果不勾選,則只會抓取從你的電腦進或出的封包。
Limit each packet to n bytes用來指定對於每個封包要抓取的資料大小。
Capture Filter用來指定抓取時的篩選規則。

跟我們相關的功能如下圖紅色的部分,『Capture packets in promiscuous mode』、『Capture Filter』這兩部分,因為我們只要觀察自己的封包,所以『Capture packets in promiscuous mode』不要打勾,另外我們想要的是http相關資訊,所以在剛開始就設定篩選讀取,請點選『Capture Filter』的按鈕開始進行篩選設定。

Capture Filter是使用 libpcap filter 語言,詳細的語法可以參考tcpdump的網頁(http://www.tcpdump.org/tcpdump_man.html)
這裡舉幾個簡單的例子:
只抓取某一個 host(例如 IP 是 10.0.0.5) 的 telnet 封包
語法為:tcp port 23 and host 10.0.0.5
抓取 telnet 的封包但不要抓到從某一 host 的(例如 IP 是 10.0.0.5)
語法為:tcp port 23 and not host 10.0.0.5
更詳細的描述可以參考官方wiki:http://wiki.wireshark.org/CaptureFilters

在這裡我們沒有要用到這麼複雜,直接用Wireshark已經建立好的常用功能HTTP TCP port(80)即可,OK之後點選Start擷取封包


先以連接到Google首頁為例,來看看讀取一個網頁到底中間做了什麼事情?

回到Wireshark主程式,看到已經有很多封包被擷取出來了。
見下圖,右上角紅色的框框,這就是TCP在做三向交握建立連線,有興趣的可以自行察看封包並比對網路相關書籍,這裡就不多著墨了。
接下來看到下面的紅色框框,這是編號四號的封包內容,也就是當三向交握結束,client對server做出request,封包的內容層層分明,讓我們先來複習一下TCP/IP的四層架構:

應用層

(OSI 5 7)

例如HTTPFTPDNS(BGPRIP這樣的路由協定,儘管由於各種各樣的原因它們分別運行在TCPUDP上,仍然可以將它們看作網路層的一部分)

傳輸層

(OSI 4 5)

例如TCPUDPRTPSCTP(OSPF這樣的路由協定,儘管運行在IP上也可以看作是網路層的一部分)

網路層

(OSI 3)

對於TCP/IP來說這是網際網路協定(IP)(ICMPIGMP這樣的必須協定儘管運行在IP上,也仍然可以看作是網路互連層的一部分;ARP不運行在IP)

連結層

(OSI 12)

例如EthernetWi-FiMPLS等。


以下圖為例,第一條內容是屬於連結層(frame);
第二條內容為MAC address,隸屬於網路層;
第三條內容也是網路層(IP);第四條TCP到了傳輸層;
最後一條HTTP為應用層。
藉由封包的分析,我們可以更清楚瞭解每一層實際運作的情形。
最後,我們開始來分析一下這些HTTP protocol,截取的內容如下,分別的動作是client請求提供服務;server回應OK並傳送網頁。透過這些header,可以從中去思考分析這些資訊分別是做什麼用的,相關的資訊請參考HTTP/1.1: Header Field Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html)

GET / HTTP/1.1
Host: www.google.com.tw
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: zh-tw,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: Big5,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: PREF=ID=e60ffeff3ffd6915:TM=1205430311:LM=1205430311:S=J9rJbq4UpUnfR9hl
Cache-Control: max-age=0


HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Content-Encoding: gzip
Server: gws
Content-Length: 3034
Date: Thu, 13 Mar 2008 01:37:33 GMT

(底下HTML code省略)

步驟3:實戰練習

目的:找一個網站去瞭解其運作模式,藉此分析該網站的安全度、可靠度等細節。
流程:這次實驗挑選的對象是去年新成立的社交網站,該網站提供blog、相簿,並提供房間讓你布置,網站內的功能也持續推陳出新,是一個非常有趣新奇的網站,網址為:http://www.roomi.com.tw/

因為布置房間需要金幣,我們比較有興趣的可能是該網站賺取金幣的模式如何運作,所以開啟Wireshark開始記錄。
首先進入打工中心,隨便找個零工打打看。
打工的成果為111金幣,開始察看封包。
利用前面幾個實驗所用的方法,我們在列表中發現了一個關鍵的封包,負責回傳遊戲的分數。

GET
/obj/swf/minigame/php/index.php?type=honeybee&PA=save&score=111
HTTP/1.1Host: http://www.roomi.com.tw/User-Agent:
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.11) Gecko/20071127
Firefox/2.0.0.11Accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5Accept-Language:
zh-tw,en-us;q=0.7,en;q=0.3Accept-Encoding: gzip,deflateAccept-Charset:
Big5,utf-8;q=0.7,*;q=0.7Keep-Alive: 300Connection: keep-aliveCookie:
PHPSESSID=0c8a8ebd9ffd07114acb6a866417c99b;
__utma=122646152.2093039428.1205467293.1205467293.1205467293.1;
__utmb=122646152; __utmc=122646152;
__utmz=122646152.1205467293.1.1.utmccn=(organic)utmcsr=googleutmctr=roomiutmcmd=organic


發現了嗎?
前陣子roomi server端還有防一些,現在好像什麼都沒有防。
寄信去沒人回~
不只是錢、好像很多東西都可以改來改去。

Reference:
The Wireshark Wiki
http://wiki.wireshark.org/
海洋大學電子商務跨領域學程網
http://sirius.cs.ntou.edu.tw/EC/ecsecurity_labs/ecsecurity_labs_09.php
教學 - Ethereal 抓網路封包+封包內容分析+看明碼連線內容
http://netgames123.blogspot.com/2007/10/ethereal.html
wikipedia
http://zh.wikipedia.org/wiki/Ethereal

76 意見:

Oscar 提到...

學習了
但你用這個軟件來看封包
那用甚麼軟体來發封包?
才能改那個.....值
指xxxroom

shaolin 提到...

是Oscar耶~
去google找找看吧
很多軟體都可以攔截封包並改掉

不過這篇文章的例子不需要什麼額外的程式就可以了...

Esther 提到...

Hello, 你写得很详尽,很有用。
最近有个老师布置了个作业,要我们用分析捕获的包,然后分析网络的Throughput, RTT(round trip time) & loss rate.
请问在wireshark中有没有功能可以直接给出这些变量的平均值的?

路人甲 提到...

what am I doing?

文法怪怪的唷

應該是what can I doing

阿信 提到...

請問透過3G來上網的話,好像查不到耶?請問該如何利用Wireshark來查3G上網的封包?

匿名 提到...

請問要如何抓取ppp封包呢???謝謝:D

Miachang 提到...

謝謝您的分享!!! 收穫良多呢!

匿名 提到...

是What can I do? 吧= =

shaolin 提到...

文章中到底哪裡有提到上面的英文...!!!
其實我不懂這個問題已經很久了

Oscar 提到...

twitter 那個顯示吧

shaolin 提到...

那個是twitter官方提供的badget,怎麼說外國人的文法怪怪的勒...哈哈

latgabriel 提到...

不好意思!再問一次好了
請問如何把抓到的封包再原封不動的上傳到原來的destination?
而寄送封包的軟體是?
還有,如何配合著使用攔截(如wireshark)與寄送的軟體?
不好意思,一次問了這麼多
拜託,請幫幫忙呀!最近真的很困擾,謝謝!!!

shaolin 提到...

通常要這樣做都是要有一個proxy的概念在中間
也就是當我們把封包傳出去之後,
會先用欺騙或是強制的方式經過proxy
proxy會先把這個封包cache住,
可以等你修改後再發送(離開你的電腦)

不太可能把抓到的封包直接重傳
如果是http上面的post get還可以這樣做
因為他們比較單純
許多應用程式是一連串封包的互動才可以運作
所以囉~

如果是網頁的話,Firefox有一款套件不錯
叫做『temper data』
非常之方便!

latgabriel 提到...

真的很不好意思!再問一下
"proxy會先把這個封包cache住,
可以等你修改後再發送(離開你的電腦)"與
"利用前面幾個實驗所用的方法,我們在列表中發現了一個關鍵的封包,負責回傳遊戲的分數。"實際執行上是怎樣做???(方便的話可不可以請你貼個圖示範一下,謝謝大大,感激不盡呀!)
還有還有,WPE PRO的運作模式是如何?
為何能攔截後一再重複上傳同一個封包?

shaolin 提到...

我很久沒有去roomi了~
(對不起roomi的製作團隊QQ)
去年底登入進去早就不能用這招改了XD
如果硬要改的話還是有可能啦!但是必須要有反組譯的技巧還有密碼學的概念,我印象中還有要解決server端時常發來的確認封包。看你要從哪個角度切入,解應該不只一個。

至於你的問題,我想你必須要了解get和post這些基本的概念,了解上面我擷取的封包在做什麼,了解後你就知道該怎麼做了。

WPE PRO很久沒有用了耶!感覺有些不方便~
送你一些key word: Achilles, Burp Suite, WebScarab, Paros

latgabriel 提到...

真是太感謝你的用心回答了!!!
使我受益良多呀!

(P.S.抱歉這麼久才上來回話)

匿名 提到...

想請問一下,用wireshark這軟件的方法有點像是把攝影機打開放電腦裡面,之後解析,找出帳密,那利用wireshark去尋找之前使用電腦登入過的密碼嗎(比如說自己密碼忘記的狀況) = =

shaolin 提到...

用攝影機來解釋感覺還不錯耶~
有點像是這個攝影機放在你家門口,
可以監控所有你跟別人互動的情形
不過這很花儲存空間的>"<

wireshark最主要是用來分析封包的,用於找密碼就有點本末倒置了!
不過如果你之前就剛好錄到你跟人家說密碼的那一刻,而且有存下來,當然是找的到囉!

victor 提到...

請問有什麼方法可以捕獲路由器的撥號密碼?
(撥號密碼的數據包是由路由器自身發出的,並不是由電腦發出,不會經過wireshark...)

victor 提到...

聽說可以將另一部電腦虛擬成一個電信部門的PPPoE服務端,去接收這撥號密碼的數據包......

請問怎樣可以`將一部電腦虛擬成一個電信部門的PPPoE服務端?

麻煩你教教我~_~

我的MSN: vic1205@hotmail.com

shaolin 提到...

看你所謂的路由器跟你的關係是什麼?
網路架構是如何?

後面你說的是man in the middle attack,通常搭配ARP Spoofing服用

Marco 提到...

看到之前的問題好像沒解...Wireshark可以分析网络的Throughput, RTT(round trip time) & loss rate嗎?可以提示一下如何做到嗎?感恩!

寸袁 提到...

不好意思問一下:youtobe影片可以用火狐工具抓 但有些網站影片
(介面有點像windows media player)卻沒辦法用火狐抓 曾聽說過 用Wireshark分析影片位址 就可以抓 請問大大可以詳細的解釋嗎?

sam 提到...

你好 你的介紹寫得很詳細 謝謝
另外 我想請問一個問題
不知道wireshark(or 其他擷聽封包的軟體)有沒有辦法做到 "開了wifi但還沒連上任何AP前 就可以聽到廣播的封包"
會有這想法是因為 像我們用筆電時
當還開了wifi但沒連上任何AP前 會先看到一個AP List 就是目前有哪些可以讓我們連線的AP
這樣代表我們其實在還沒連上任何AP前 還是可以聽到無線封包
不知道wireshark之類的軟體 有沒有辦法做到還沒連上AP前就可以聽到這些封包? 還是需要從別的地方著手 例如要動到kernal? 感謝

智賢 提到...

你好shaolin:
我想請問如何在windows作業系統上,用wireshark來監看bluetooth的封包?

鄭伊翔 提到...

to someone was talking about "what am i doing"

其實都可以用,只是用在不同的狀況下;what can I do, 我可以做什麼? what am i doing? 我正在做什麼。但是沒有人說what can i doing? 基本文法是can, could, will, would 後面加上原形動詞,加現在進行式動詞應該沒人聽得懂喔...

是說有點扯遠了...XD

匿名 提到...

我想請問一下
WIRESHARK怎麼研判web server及php之版本?

shaolin 提到...

當個兵回來好像忽略了很多留言。
關於無線技術(wifi和BT)我沒有仔細玩過,相關問題可能要再搜尋資源了。

關於抓影片是因為可以利用wireshark看到影片的真實位置(URI),知道真實位置就可以很容易抓到影片檔案。

樓上問的判斷server和PHP版本,這是利用不同的server或PHP版本在處理一些特殊行為時會有不一樣的反應。我之所以用"特殊"是因為基本的post和get大家的反應幾乎一樣,所以你在試的時候要多用其他的方法對server做測試。關鍵字叫做 fingerprinting ,很多工具都可以直接幫我們判定,用wireshark做這件事可以幫助我們了解各種server的反應,不太實際就是了。

匿名 提到...

利用 FTP 連線 ftp.must.edu.tw 伺服器, 並抓取登入過程中的帳號及密碼
誰能教我怎麼做

L 提到...

我有個問題~照你所說我已經會抓封包來看了~
可是要如何更改封包再回傳呢??

shaolin 提到...

wireshark只是"記錄"你的網路連線的過程,沒有辦法去修改。
利用wireshark知道了"協定",是可以方便你遵循協定傳送相同的封包,
前面回應中稍微有提到一些工具可以參考看看!

匿名 提到...

不好意思,可以請教您一些問題嗎?
我是大四的學生,最近住進宿舍發現網頁開啟速度很慢
但是室友的都不會
每次一連上網路流量就會瞬間爆增
用電腦掃了好幾遍都沒有發現病毒
於是我用了wireshark檢查了一下
發現有非常非常多的bad checksum一直在跑
我又不太會操作英文版的wireshark
請問我該如何解決每天蜂擁而上的bad checksum呢?


網路不順人生是黑白的阿
拜託你了感激不盡!!!!!!!!!!!!!!!!!

shaolin 提到...

http://hi.baidu.com/54nop/blog/item/08e7fad33db6bc32960a16ce.html
是上面網址那個嗎?
可以試試看!

匿名 提到...

真的很感謝你的回覆!!!
但是我的網卡裡面沒有checksum offload這個選項耶..
於是我把所有IPv4的選項都改了停用
果然好幾千個IPv4的bad checksum都不見了
但是一連上線網路流量還是狂跳個不停
也還是有一些http或tcp的bad checksum
網頁也有時快有時慢
不過狀況感覺有好一點了
不知道我用的方法對不對...

不過沒想到板大的回應這麼迅速
真的讓人感覺很窩心
網路世界還是有點溫度的^ ^

shaolin 提到...

那個選項名稱可能出現"硬體、檢查、驗證"這類的詞彙,找找看說不定會有~

一開機就有很多流量的話,
建議先把一些常駐的程式關一關(MSN之類知道有網路連線的程式)
然後再開wireshark看一下到底是哪些流量,
比較能夠確切知道問題發生在哪裡~

匿名 提到...

我有看到一些檢查卸載驗碼這些字眼
所以我可以把IPv6的選項也停用嗎?(已經把IPv4停用)
其實我MSN一直瘋狂斷線,這可能也跟流量異常有關係吧

最後真的很感謝你, 發自內心的那種~~

匿名 提到...

請問 要怎麼抓RTMP的封包呢

shaolin 提到...

請問您說的RTMP是指
Real Time Messaging Protocol
還是
Routing Table Maintenance Protocol

然後您遇到什麼問題嗎?

匿名 提到...

天阿~~好久以前就看到這篇分析文
最近有需要又重回複習一下
沒想到版主還有在一一回大家留言~~~
真的太有心了!!!

shaolin 提到...

如果能解決問題,自己也算是有所成長
謝謝您還會回來看這篇文章,而且連回應都看 :p

匿名 提到...

當然 回應也是很多東西可以學習的 感謝你的分享

Juvisy 提到...

您好:
想請教一下您是否有使用過wireshark觀查無線網路封包。因為看別人實驗似乎很簡單就抓到一些封包。而自己實測卻無法抓到beacon還是requrest to send or clear to send之類的封包(已打開網卡使用rts/cts)
一直找不到問題出在哪邊?還望能給予一些指導,謝謝

wireshark版本是官方1.6.4

shaolin 提到...

如果您可以順利抓到無線網路的封包的話,那應該就不是 wireshark 的問題了。
或許你可以測試 ping x.x.x.x -l 3000(一個大數)讓frame超過RTS Threshold看看。
我手邊只有一個小小的 USB 無線網卡,但是他似乎沒有 implement 所以我其實也沒有抓到 :p
您可以換一張無線網卡試試看...抱歉只能這樣建議了...orz

Juvisy 提到...

你好:
我大概有看了一下文件,問題好像是有的網卡不支援。
我這邊好像是因為wireshark會對某些無線封包作另一層fake header所以看到變成802.3
所以都沒看到802.11協定的封包。
目前好像只能換一張網卡了,謝謝

匿名 提到...

你好:
在看過您的教學之後
嘗試擷取我的plurk封包
plurk看起來應該是http協定
但是封包裡卻沒有看到我的帳號與密碼
請問是為什麼呢@@?

shaolin 提到...

您好,
plurk 乍看之下只是走 HTTP,不過他登入的時候是透過 HTTPS,
會 POST 帳號密碼到 https://www.plurk.com/Users/login
不是看不到,而是加密了你不知道那就是帳號密碼而已 :p

另外,plurk 沒有全程走 HTTPS 有些不太好
認證的 cookie 都可以抓的到!
也許您可以觀察看看~

匿名 提到...

原來如此,感謝你的說明 :)

匿名 提到...

要怎麼用SSH加密??

shaolin 提到...

例如PTT有提供SSH協定,就可以用 ssh://bbs@ptt.cc 上BBS

匿名 提到...

為什麼一堆大學生問問題都不經大腦?
當然,只要開口問一下,等人家告訴你怎麼做,是最省腦力的,
但也是最不能訓練你的頭腦思考能力、和問題處理能力。
發現很多人問的問題根本連基本知識都沒有就想要做一些高難度的事情,比方說你了解了tcp、udp、ssh這些東西嗎?知道他們是如何運作嗎? 網路七層協定了解涵義嗎? 甚麼都不知道,基本操作也不會,只想要從網路上知道別人的帳號密碼? 如果這麼會用google,麻煩花點時間google這些網路基本知識,再來問~~
大學生都這麼懶嗎?

Shaolin Hsu 提到...

感謝樓上的回應:) 有時候這真的也有點困擾阿XD
對於自己認識的學弟妹,
我多半會請他們看看這篇2001年的『提問的藝術』:
http://ihower.tw/blog/archives/457
最近參加了2012年的 OSDC,國外講者Allison Randal談開源社群
https://gist.github.com/2400315
裡面有一小小段提到了常見的RTFM,我覺得她將回答問題這件事情提昇了一個層次呢!
或許,將分享知識當成最終目的的話,有些東西也不用在乎這麼多了XD
雖然我還是很可能只丟個 keyword,畢竟這篇是介紹 wireshark 而不是其他^^

Sam Lin 提到...

小弟最近有用 Wireshark 側錄了網路的封包,因為測試的關係,我要重送側錄下來的封包,請問我該用什麼軟體才能重送封包嗎?

Shaolin Hsu 提到...

原本用什麼軟體送的,就用什麼軟體重複送囉!
我覺得沒有什麼方便的軟體重送耶(就我所知啦)
應該說看你側錄下來要重送的是走什麼樣的 protocol
不同 protocol 選擇的工具也不太一樣
如果是 HTTP 你可以在本篇回應裡面搜尋 "key word"

Sam Lin 提到...

我的不是 http 的,是 udp 封包,原本是廠商那邊從國外送的測試訊號,因為測試時間已過,才想自己送訊號測試,不一定要用 windows 的軟體,Linux or FreeBSD or OSX 都可以推薦,謝謝你

Shaolin Hsu 提到...

http://wiki.wireshark.org/Tools 裡面的 Traffic generators 可以參考看看。應該有能幫助您的工具!

Sam Lin 提到...

收到!我馬上去看看,謝謝你

Sam Lin 提到...

謝謝你的幫忙,我後來找到 PlayCap,是可以還原 wireshark 的封包,也給你參考一下,http://www.signal11.us/oss/playcap/,真的很謝謝你

Shaolin Hsu 提到...

謝謝您的分享回應,也恭喜您成功了!!!
我之前不太確定您的需求,因為有些封包是有時效性的,重送並不一定有幫助。如果複雜一點的狀況,我應該會用 Scapy 寫程式來處理,感覺不錯,也順便分享一下!

匿名 提到...

輔大畢業後因工作需要發現這篇,總總感慨下推一下這篇文
感謝學長lol

高小堯 提到...

你好
最近有作業需要用到WIRESHARK
這陣子研究了網路七層協定 也研究了很多東西
但是對於解析還是很有障礙 尤其都是英文!!

我想請問
我最近是研究PLURK
我觀察了HTTP發現他傳送並沒有顯示帳號密碼
我也看到到以上回應才知道原來登入使用了HTTPS
我所使用的篩選規則是PORT 80
然後找GET HTTP/1.1 這類相關資訊去FOLLOW TCP STREAM
雖然裡面資訊很詳細
但還是很多看不懂
尤其是在找相關的傳送資訊 根本有時候不知道對不對
例如傳送資料 我都很直接的找"GET"開頭的
然後就幾乎認定他就是我所要找的資料了
所以...
不知道大大可不可以給我一點建議
或者其他類似文章...
如果增加大大的麻煩 就不好意思了!!!!
謝謝您!!!

Shaolin Hsu 提到...

HTTPS 預設是走 443 port
除了 GET 之外,HTTP 還有一個常見的方法是 POST
你可以去找找看唷~

抱歉隔了這麼多天才回 >"<

高小堯 提到...

謝謝大大PLURK的作業終於完成了!!!

洗再請問大大...
那最近有加分題
是關於觀察FB/SKYPE和MSN
可是我觀察出來全部都是加密過後的封包

有沒有辦法解密呢???

Shaolin Hsu 提到...

key word: wireshark decrypt SSL
會找到一些原理、範例~
然後你可以想想看有沒有機會做到你想要做的事情 :p

高小堯 提到...

大大好
這個我有查到
有去WIRESHARK WIKI 下載ssl的來解碼過
只是我在我電腦努力的找
就是找不到所需要的key...

我再試試看好嚕~
還是謝謝大大!!!

希望可以完成這次作業!!!

Shaolin Hsu 提到...

因為你需要的 key 是放在 server 端上的阿XD

但加解密這部份已經超過了 wireshark 的範疇
我覺得這個作業的目的可能不會牽扯到這個層次(除非是資安的課程)
或許可以觀察一下他們怎麼進行加密的,對照文件看
也是不錯的學習~

匿名 提到...

大大你好,想請問一下如果我想抓取手機上面的netlog這類資料,曾經想透過利用手機當作數據機的方式,然後電腦透過它撥接上網,然後來抓取封包,但是在wireshark capture-> interface還是沒辦法看到對應的硬體,請問是否需要額外的方法才能實現 感謝指教

Shaolin Hsu 提到...

請問一下您是想要看手機上應用程式的網路記錄,還是電腦的網路行為。感覺起來您是想要看手機的,如果您是 android 手機,可以試試使用一款叫做 shark 的軟體(需 root),會比較方便!

Alex yang 提到...

大大您好: 請問我用Wireshark擷取到影片檔案的封包或數位電視的封包,我要如何將這些封包丟出去?讓另一邊能收到並且正常播放?

Shaolin Hsu 提到...

@Alex yang: 這樣的需求,感覺像是在做 routing,買設備解決比較容易些。如果真的要用 wireshark 來解,http://wiki.wireshark.org/Tools 官方有提供一些工具可以幫忙,上面有網友有重送的需求就是從這邊找的,但這個 case 不單純只是重送,讓我覺得可能沒有這麼容易。

Tseng Biue 提到...

請問在下面的兩兩成對的數字字母窗格裡
要怎麼看來源端埠號 目的端埠號 標頭大小 跟接收窗格大小?

Shaolin Hsu 提到...

您說的兩兩成對應該是十六進位的顯示,
wireshark 會幫你把這些十六進位轉成我們看的懂的 ASCII 放在中間區塊,
而且還會分協定顯示,
您要看的資訊從那邊看會比較方便!

Yeunong 提到...

請問如果我今天只是單純想知道Lan端網路是否有大量碰撞,也可以使用此軟體嗎?

還是有別的軟體可以推薦?

Unknown 提到...

在wireshark中
可以set 一個breakpoint嗎?
假若我發現了一些packet 要帶有bug
可以停止它的傳送
待分析後才決定是否接收

Shaolin Hsu 提到...

@Unknown 不行唷~

石美珊 提到...

博主你好,想請教一個問題,是關於扒頻找網絡鏈接的。
http://tvcast.naver.com/v/78477 這個網站有親教我用Wireshare去截取視頻的鏈接,但我不太懂他說的步驟

【回wireshark,ctrl+f,往上找string,含有video/mp4,右鍵follow tcp stream,找到下載網址,將server位址及get後面的字串接在一起,得到下載的url。】

想請問一下這個步驟的詳細TT

surskywind 提到...

樓上謝了,你讓我突然想通了那些抓視頻軟體是怎抓的
不過你問題的目的好像跟少林大和大家討論的方向不太一樣啊
只是想問步驟減少自己的麻煩而不是真的想要學習,這樣對少林大不太好意思吧?
笑你

張貼留言