Download netcat (nc) software, called Swiss knife
http://joncraton.org/files/
The software can do testing of TCP connection.
open wireshark of both computer
Filter conditions host IP and port 5000
Lab 1 : TCP Connection without service
=====================================
Server Side:
Please open the command prompt
netstat -ano
Please read port 5000 (port5000未開啟傾聽)
=====================================
Client Side:
Please open the command prompt
cd\
cd nc
nc the other side IP 5000
Please observe the packages on both side
問三次,要5000port,flag 為SYN
***************************************
Lab 2 : TCP 有服務的連線
=====================================
Server 端:
請開啟命令提示字元
netstat -ano
請觀察 port 5000
請開啟命令提示字元
cd\
cd nc
nc -l -p 5000
開啟5000port為傾聽狀態
=====================================
Client 端:
請開啟命令提示字元
cd\
cd nc
nc 對方的IP 5000
請輸入一些字元 (hello)
請雙方觀察封包
(此動作為 client 端已經透過5000port 連線到 server,所以在client 打任何自都會出現在server的命令提示字元)
共收到7個,"hello" + "Enter" + ACK = 5 + 1 + 1 =7
=====================================
Three-way handshake
Client: SYN sn=0
Server: ACK A=1, SYN sn=0
Client ACK A=1
Three-way handshark
Client: SYN sn=0
Server: ACK A=1, SYN sn=1
Client ACK A=1, sn=1
Client: sn=1, 第二sn=7,A=1
Server: sn=1, A=7
=====================================
Lab3: 控制 server的cmd
請嘗試 利用 netcat 執行遠端程式
Server: (建議暫時關閉 防毒程式)
請開啟命令提示字元
cd \
cd nc
nc -l -p 5000 -e cmd.exe (比對LAB2 增加此參數,目的在允許他人透過5000port 執行cmd)
============================== =======================
Client:
請開啟命令提示字元
cd \
cd nc
nc 對方的IP 5000 (透過5000port 連線到 server)
進入遠端命令提示字元 (此時還在client操作,但命令提示字元已經變成server的畫面,即已經控制 server)
C:\nc> ipconfig (出現的IP是server的IP)
C:\nc> mkdir 20120523 (會在server的nc資料夾下建立)
請觀察 C:\nc 資料夾
============================== =======================
Lab4: 傳送檔案給server或更改server的檔案內容
傳送檔案到 server
Server: (建議暫時關閉 防毒程式)
請開啟命令提示字元
cd \
cd nc
nc -l -p 5000 > new.txt (任何人可透過5000port加任何內容到server的new.txt檔案內)
============================== =======================
Client:
請開啟命令提示字元
cd \
cd nc
type readme.txt (只是先show 出 readme.txt 的內容)
type readme.txt | nc 對方的IP 5000 (將 readme.txt的內容show出來並執行到server 的5000 port,因為 server port 5000 已經設定為直接將任何人經由 5000 port 送來的東西,直接填入new.txt,所以new.txt 會有readme.txt的內容)
請按 Ctrl + C
PS:應用1
假設
server 端 改為
nc -l -p 5000 > game.exe (空的執行檔)
利用 client
type Diablo.exe | nc 對方的IP 5000
則 server端的檔案game.exe 就會變成diablo.exe (真正的diablo 遊戲就這樣傳給server了)
PS:應用2
也可以傳照片
PS:符號指令解說
| 該符號叫做pipe,作用是將前方指令的輸出傳送到後方指令,由後方指令執行。
============================== =======================
請觀察 Server 端
C:\nc 資料夾
參考教學網站
No comments:
Post a Comment