zkat’s diary

技術ブログ

OWASP ZAPでHTTPヘッダを追加したり削除したりする

調査対象ウェブサイトへのHTTPリクエストについて、HTTPヘッダを書き換える手順は下記の通り

1. 書き換え用スクリプトひな形を作成する。

スクリプト」タブの「HTTP Sender」を右クリックして新規スクリプトのひな形を作成する。

f:id:zkat:20190415221830j:plain
owasp-manipulate-http-header

2. 書き換え内容をスクリプトに書く

例えばUser-Agentを削除して、X-hogehoge-hedaerを追加する場合は下記の通りスクリプトを書きます。

function sendingRequest(msg, initiator, helper) {
    msg.getRequestHeader().setHeader("User-Agent", null);
    msg.getRequestHeader().addHeader("X-hogehoge-hedaer", "123");
}

スクリプトファイル名を右クリックして、「有効化」するのを忘れずに。

f:id:zkat:20190415223826j:plain
owasp-http-sender-script

3. OWASP ZAPを介してブラウザでアクセスする

OWASP ZAPではローカルプロキシ設定を有効にして、ブラウザからのアクセスを受け付けるようにしておきます。
HTTPサーバーを立ち上げるのは面倒なのでncコマンドを起動しておきます。

$ nc -l 8080
GET / HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ja,en-US;q=0.7,en;q=0.3
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
X-hogehoge-hedaer: 123
Host: localhost:8080

ブラウザにてアクセスしてみると、User-Agentが消え、X-hogehoge-headerが追加されていることを確認できました。