2017年4月20日木曜日

CSRFトークンを使用するサイトでNetsparkerが失敗するケース

NetsparkerのCSRFトークン機能には非常に癖のある制約があります。

トークンの発行後、使用前にトークンが無効化される

画面遷移を監視しているケースなど、トークンの発行後に余計なページにアクセスしてしまうことで、トークンが死んでしまうことがあります。対策はスレッド数を1にするしかないとのこと。
なお、トークンを発行するページとトークンを送るページの組み合わせは一度に一回しか発生しないよう制御してるとのことで、システムによってはマルチスレッドでも診断できます。

CSRFトークン機能が動作しないケース

Manual Crawlを使用している
"Find & Follow New Links"を無効にしている

これらの場合、Anti-CSRF Token機能は機能しません。仕様だそうです。

CSRFトークンを使用するリクエストをImportしている

リクエストの親子関係が混乱し、正常にCSRFトークンが送出されなくなるので、Importしてはいけないそうです。

まとめ

デフォルトの「サイトまるっとCrawl」を1スレッドで回しておけば問題ありませんが、スピードを上げようと小細工をするとCSRFトークンを使用するサイトでは様々な問題にブチあたります。
このようなサイトのスキャンをすこしでも高速化したい場合は、Scope設定を駆使するしか無いようです。(バカバカしい話ですが)

URL変更しました

新サイトはこっち  https://ngkwtys.blogspot.jp 古い記事はそのままです ヽ(´ー`)ノ