アフィリエイト広告を利用しています

2019年10月24日

脆弱性試験B -結果-

脆弱性試験の結果が返ってきた。

何と、パスしてしまった。

問題箇所はあるもののリスクレベルが低く、

現時点では軽微な影響に留まるということで

システムを運用開始できる運びとなりました。

自分でもびっくり。

指摘された内容


1.ロックアウト機能がないので、何度でもログインを試みることができる。

2.ログイン画面のFormで、autocomplete="off" が指定されていない。

3.エスケープ処理を行っていない。プレースホルダーもhtmlspecialcharsも使用していない。

4.入力ルールに反するデータを登録できる。

5.パスワードポリシーに問題がある。


1はロックアウト機能を追加すれば解決できるし、2と3は簡単に修正できる。

4と5は時間がかかったが対応した。


4.入力ルールに反するデータを登録できる。


データ登録画面ではエラーチェックを行っている。

メールアドレスを@なしで登録しようとするとエラーメッセージが表示される。

しかし、脆弱性試験結果のレポートを見ると、

@なしで登録できている。

なぜだろう?

どうやら、ローカルプロキシツールを使用してPOST値を書き変えたようだ。

ブラウザのデバッグツールで試してみると、同じ現象を再現できた。

 登録画面 → 確認画面 → 登録完了画面

と遷移するが、エラーチェックは登録画面と確認画面の間で行い、

確認画面と登録完了画面の間では行っていない。

確認画面の値をデバッグツールで書き変えると、入力ルールを満たさない値を登録できた。

そこで、確認画面と登録完了画面の間でもエラーチェックを行うようにシステムを修正した。


5.パスワードポリシーに問題あり


脆弱性試験を行う人が操作し易いようにと思い、

ログインパスワードをアルファベット1文字にしてあげたところ、

パスワードポリシーに問題ありと認定された。


アルファベット、数字、記号の各1文字を含むこと。
アルファベットは大文字と小文字を区別すること。
これらのルールを満たすようにシステムを修正せよとのこと。


パスワードはDB内のテーブルに保存しているので、システムを修正する必要はなく、

指摘されたルールを満たすパスワードに変更した。

しかし、なぜか顧客からはシステムの修正を要求され、

パスワードを変更するだけで済むことを説明するのに骨が折れた!


脆弱性試験@ -試験前-
脆弱性試験A -実施中-



この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

検索
最新記事
カテゴリーアーカイブ
プロフィール
db-engineerさんの画像
db-engineer
プロフィール
タグクラウド