【悪用厳禁】curlでreferer、UAなどを偽装する
curlで普通にURLをリクエストすると、対象サーバのログを見るとこんなふうに記録されています。
サーバーspaceからhogehoge.comにリクエスト
[dacelo@space ~]$ curl -Ik https://hogehoge.com/
hogehoge.com側では…
"-" space- - [09/May/2019:11:17:00 +0900] "HEAD / HTTP/1.1" 403 - "-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2"
これを、一般的なブラウザのUAで、ある特定のページからのリンクでのアクセスのように偽装してみましょう。あ、アクセス制限のテストのためにね。
https://fugafuga.com/ からのリンクで、FireFox66でアクセスしたことにします。
spaceサーバーから…
広告
[dacelo@space ~]$ curl -e https://fugafuga.com/ -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0" https://hogehoge.com/
hogehoge.com側では?
"-" space - - [09/May/2019:11:21:37 +0900] "GET / HTTP/1.1" 403 202 "https://fugafuga.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0"
成功しました。悪用厳禁ですよ。自分のサイトのアクセス操作のテストなどに使ってくださいね。それでは。
今日使ったcurl のオプションまとめ
- -k … 証明書にエラーがあっても無視する
- -e … リファラ(referer)を設定する
- -A … UA(UserAgent)を設定する
- -I … HTTPレスポンスヘッダだけ取得する
Comments are closed.