sWebMachineGun.exe実践編
「ログイン画面の場合」では、よくあるユーザ名とパスワードだけの場合だけど、今回は最近増えてきた多要素認証も含めた画面遷移がターゲット。
診断対象
こんな感じ
つまり、ユーザ名とパスワードを入力してから、QRコードからのパスコードを入力して、やっと認証されるような画面遷移がターゲット
事前準備
まず、QRコードを入手して、URIを抽出する必要がある
QRコードの入手
脆弱性診断の場合は、テスト用アカウントの貸与があると思うので、その時に入手できるはずなので、QRコードの入手方法については省略
今回は「sQRCodeFugging.exe{sWebTool})」を使ってQRコードを作成した。
QRコードからURIの抽出
QRコードからファジングする(sQRCodeFugging.exe{sWebTool})
というツールを作っているので、そこにQRコードの画像を読み込ませれば、URIが抽出されると思う
今回は「sQRCodeFugging.exe{sWebTool})」を使ってQRコードを作成したので、URIを抽出する。
というより、URIを指定してQRコードを作成したような感じだけど、そこはご容赦を。
ということで、多要素認証で使うURIは「otpauth://totp/AAAA:AAAA@example.com?secret=BASEBASE&issuer=AAAA&algorithm=SHA1&digits=6&period=30」です。
参考:URIの挙動の確認
ちなみにQRコードから抽出したURIは、(多分)30秒ごとにパスコードを抽出すると思う。
QRコード認証のパスコードを計算する(sAuthenticator.exe{sWebTool})
というツールを作ったので、どんなパスコードとなるのかき、このツールで確認できると思う。
ちなみに
sWebMachineGun.exeもsAuthenticator.exeを呼び出しているだけ
sWebMachineGun.exeの設定
メインの設定は、HTTPリクエストの設定と、置換方法の設定
sWebMachineGun.exeの設定1
「Request」タブに、二つのHTTPリクエストを設定する
この画面は、「ログイン画面の場合」とかと同じなので、特に説明は不要だろう
二つ目のリクエストテンプレートに書かれている「%%msg%」が、QRコードから読まれたパスコードに置換される
sWebMachineGun.exeの設定2
「Setting」タブは「ログイン画面の場合」とか同じなので、説明は不要だろう
sWebMachineGun.exeの設定3(外部からの入力)
「GeneralSetting」タブの「InputDialogOption」リストが今回の設定の肝となる部分
テキストボックスに動作を指定する引数を入力して、投入したいInputDialogOptionプラグインをリストから選択して、「Set」ボタンで登録する
今回は、上記のQRコードから抽出したURIをテキストボックスに入力して、「GoogleAuthnticator」プラグインを選択して、登録した
ここの設定がリクエストテンプレートに書かれたマクロ「%%msg%」を置換する
sWebMachineGun.exeの実行
「Execute」ボタンで、実行できるのですが、結果はこんな感じで、2つ目のリクエストテンプレートに書かれたマクロ「%%masg%」が計算された値に書き換わっていることが分かる