-
-
Notifications
You must be signed in to change notification settings - Fork 4
2.5. Conditional Parameter:指定した条件でパラメータ変更(ValidCondRegex)
会員制サイトなどのログインサイト内の自動診断を診断ツールでおこなうことは、困難な場合があります。たとえば、会員サイトのパスワード変更ページを診断すると、ログインパスワードのパラメータが診断テストによって改竄されて、scan時のログイン認証に失敗します。ツールのログイン認証は、固定のアカウントでログインするため、診断によってアカウント情報が改竄されることを想定していないためです。そこで、RequestRecorderは、診断によって改竄されたパラメータを追跡して変更するConditional Parameter: ValidCondRegexを提供しています。ValidCondRegexは、診断時の改竄でパラメータ変更が成功した場合の正規表現で、ValidCondRegexにマッチするレスポンスを検出し、リクエストの改竄されたパラメータの値を動的に変更します。
- 本説明で使用するサンプルサイト
docker image:WEBSAMPSQLINJ: Modify user feature(ユーザ変更)
-
download & install setup WEBSAMPSQLINJ web application.
-
2.2.基本的な使い方にしたがって設定. ユーザ変更機能をブラウザでブラウズし、ユーザ変更のhttpリクエストシーケンスを"RequestRecorder"ワークパネルに追加し、[追跡ボタン]を押して結果をJSONファイルで保存。
-
"RequestRecorder"ワークパネルで、パスワード変更を追跡してpasswordパラメータを変更する設定をおこないます。リクエスト[002|moduser.php]は、診断によってpasswordパラメータが改竄され、改竄後の次回のログイン時、リクエスト[000|mypage.php]のpasswordパラメータ値を改竄後の値に変更する必要があり、そのためにパスワード改竄の追跡の設定を行います。Ctrlキーを押しながらマウスの左ボタンでこれらのリクエストを選択し、[Custom]ボタンを押します。
-
The "Custom Parameter Config" screen is displayed. Press the [New] button.
-
The "Parameter Edit" screen is displayed. click [Track] tab and press [Add] button.
-
改竄されたパラメータ値を追跡します。 moduser.phpを選択し [OK] ボタンを押す。
-
"Extract parameter value from ..."画面が表示される。 改竄値を取得する"requestbody"パラメータを選択する。"password"パラメータを選択し[Next] ボタンを押す。
-
改竄されたパラメータ値を埋め込むリクエストを選択する。 mypage.phpを選択し[OK]ボタンを押す。
-
改竄されたパラメータ値を設定するparameterを選択する。 "pass"パラメータを選択し、[Add]ボタンを押す。
-
"Parameter Edit"ダイアログで、[Save]ボタンを押す。 "Custom Parameter Config"ダイアログに新たにエントリー行が追加される。 "Custom Parameter Condig" 打ダイアログ画面の[Close]ボタンを押す.
-
ここから、パラメータを変更する条件を正規表現ValidCondRegexに設定する作業をおこなう。パスワード変更が成功したことを示すレスポンスの画面の内容に一致するvalidCondRegex正規表現を作成する。 ”RequestRecorder”ワークパネルの"リクエスト一覧"で、最後のリクエスト[003 | moduser.php]でパスワード変更の処理が実行され、結果がそのレスポンスに表示される。そのため、このリクエストのレスポンスがパスワードが成功したかどうかを示す。リクエスト[003 | moduser.php] を選択し [Custom]ボタンを押す。
-
"Custom Parameter Settings"ダイアログで、先に新たに作成したエントリー行を選択して、[Edit]ボタンを押す。
-
"Parameter Edit"ダイアログで、新たに追加されたエントリー行を選択し、マウスの右クリックからメニュー[ValidCodRegex: a regex for detecting succeeded results.] を選択する。
-
"MessageEditor.."ダイアログで、パスワード変更が成功したことを示すキーワードを選択する。 タイトル"user mod completed"を選択し、マウスの右クリックで[Update Regex text with selected text]メニューを選択する。
-
[Test]ボタンを押し、正規表現が先に選択したレスポンスのキーワードに一致することを確認する。確認後[OK]ボタンを押し、[Save]ボタンで保存する。
-
"Parameter Edit" ダイアログで[Save]ボタンを押す。 "Custom Parameter Condig"ダイアログで[Close]ボタンを押す。