2016年4月8日 星期五

萬用的 curl 模擬各種訪問狀況、檢測訪問速度

curl 在我的工作上幫助了非常大,同時他也是資安測試的好工具,在這邊專門介紹我使用 curl 時會使用到的檢測方式

 

  • -w 檢測網站回應速度

    • 一行指令




curl -o /dev/null -s -w "%{time_namelookup},%{time_connect},%{time_starttransfer},%{time_total}" http://www.google.com



    • Script



$ vim curl-speed.sh 
#!/bin/bash
URL=$1

curl -o /dev/null -s -w \
"DNS Resolve: %{time_namelookup}\n\
Client -> Server: %{time_connect}\n\
Server Respon: %{time_starttransfer}\n\
Total time: %{time_total}\n" \
"${URL}"

$ ./curl-speed.sh www.google.com
Client -> Server: 0.040
Server Respon: 0.069
Total time: 0.069

time_namelookup = DNS 解析時間
time_connect = 建立伺服器 TCP 所花的時間
time_starttransfer = 伺服器 return 的第一個字節
time_total = 整個請求的花費時間

 



  • -o 將網頁內容輸出 file


$ curl -o index.html http://www.google.com

 

  • -x 指令 http 使用 proxy server


$ curl -x 192.168.30.30:8080 http://www.google.com

 

  • -D 把 http response cookie 輸出 file


$ curl -D cookie.txt http://www.google.com

 

  • -A 自定義偽裝 user-agent


$ curl -A "TEST" http://www.google.com

 

  • -e 設定 referrer,簡單來說就是偽裝訪問頁面的來路URL


$ curl -e http://shazi.info http://www.google.com

這樣 www.google.com 的 referrer 就會誤以為是從 http://shazi.info 連過來的。


 

  • -O 下載檔案,用 -c 來續傳


$ curl -O http://fileserver/file1.zip 
$ curl -O -c http://fileserver/file1.zip

 

  • -r 分段下載


#!bin/bash 

FILE="file1.zip"
URL="http://fileserver/${FILE}"

curl -r 0-10240 -o "${FILE}.part1" ${URL} &\
curl -r 10240-20480 -o "${FILE}.part2" ${URL} &\
curl -r 20480-40960 -o "${FILE}.part3" ${URL} &\
curl -r 40960- -o "${FILE}.part4" ${URL}

合併



$ cat file1.zip.part* > file1.zip

 

  • -u 指定登入使用者


$ curl -u user:passwd ftp://fileserver

 

  • -T 上傳檔案,使用 HTTP put method 協議


$ curl -T file1.zip -u user:passwd ftp://fileserver 

or
$ curl -T file1.zip http://fileserver

 

  • 使用 GET mode,直接在 url 加入參數


$ curl http://www.google.com/login.php?user=scott&passwd=0000

 

  • -d 使用 POST mode


$ curl -d "user=scott&password=0000" http://www.google.com

 

  • -E HTTPS 使用憑證


$ curl -E ssl.pem https://www.google.com

 

  • 使用 dict 查詢字典


$ curl dict://server/d:computer

 

Orignal From: 萬用的 curl 模擬各種訪問狀況、檢測訪問速度

沒有留言:

張貼留言