Network Infrastructure part 4

1.netcat  for windows
Download netcat (nc) software, called Swiss knife
http://joncraton.org/files/nc111nt.zip
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

若是輸入hello

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: