Site icon Mr. 沙先生

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

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

 

curl -o /dev/null -s -w "%{time_namelookup},%{time_connect},%{time_starttransfer},%{time_total}" http://www.google.com
$ 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
DNS Resolve: 0.035
Client -> Server: 0.040
Server Respon: 0.069
Total time: 0.069

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

 

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

 

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

 

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

 

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

 

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

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

 

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

 

#!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

 

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

 

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

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

 

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

 

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

 

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

 

$ curl dict://server/d:computer

 

Exit mobile version