本ブログはネットワーク・セキュリティプロダクトに関して、エンジニア2年生が日々先輩の指導を受けながら検証を行い、結果をまとめたものです。
11回目という事で新しい内容に挑戦してお届けします。
今回はちょうどSophos XG Firewallのベンダー資格を取得したため、XG Firewallを使い検証しました。
XG FirewallはセキュリティベンダーであるSophosが販売するUTMアプライアンスです。
ネットワーク保護機能の他、VPN、認証機能も搭載されており様々なソリューションを提案できそうです。
<検証 NO.1 OTP>
今回はOTP(One-Time Password)認証を使ってみました。
OTPとはネットワーク上で本人確認を行う際に、使用毎に変化するパスワードを用い認証する方法です。
OTPはIETFで標準化しており、RFC6238(TOTP)、RFC4226(HOTP)の2種類が定義されています。
TOTPとHOTPはそれぞれパスワードを生成するために対象とする変数が異なります。
TOTPは時間をベースとしており、一定時間ごとに異なるパスワードを生成する技術です。
一方HOTPはカウンタをベースとしており、認証の回数によって異なるパスワードを生成します。
以下ではXGの認証機能と2要素認証アプリを用いてOTPを使ってみます。
<XG Firewall TOTP設定>
XGのOTPではトークンを自動で作成する事が可能ですが、今回は手動でOTPトークンを設定します。
またWeb adminにログインできるユーザーを事前に作成しておきます。
メニューから認証、ワンタイムパスワードの画面に入り設定をクリックします。
以下の画面からOTPを有効にし、OTPを適用するサービスを選択します。
次にワンタイムパスワードの画面から追加をクリックしOTPトークンの作成と適用ユーザーを選択します。
トークンの設定が完了したらQRコードを読み取り、OTPを作成するためのAutheticatorツールをインストールする必要があります。
Sophosのツールがapp storeやGoogle playで取得可能なのでスマートフォンにインストールします。
作成したトークンの管理アイコンⓘをクリックしトークン情報を表示します。
インストールしたアプリでQRコードを読み取るとアカウント情報に一定時間で切り替わるOTPが追加されます。
現在のweb adminをサインアウトし、OTPトークンを設定したユーザーでログインし直します。
この際パスワードはユーザーパスワード+表示されているOTPの順番で、時間内に入力しログインします。
<XG Firewall HOTP設定>
OTPトークンの編集画面から時間制限のない使い切りの追加コードを発行することも可能です。
一度の追加で最大10個発行できますが、全て使用した場合は追加をクリックしない限り新しいコードは発行されません。
ユーザーがツールにアクセスできない、使用できない状態で緊急でログインしたい場合に役立ちます。
----------------------
検証後記
OTPは仕組み自体は単純な2要素認証ですが、この手順を踏むだけでセキュリティのレベルを簡単に上げることが出来ます。
HOTPとTOTPは類似した機能ですがそれぞれ弱点も存在します。
HOTPはパスワードに使用回数を設け、同じパスワードを繰り返し利用されるリスクを防ぎますが、使用しない限りパスワードは更新されません。
そのため総当たり攻撃を仕掛けられた際は突破される危険性があります。
一方TOTPは時間でパスワードが変化するため正解のパスワードを打ち込まれるリスクを減らせますが、時間内であれば一度使用したパスワードであっても何回でも使用できます。
OTPに限らず二要素認証の方法はいくつか存在するため、今後も検証の機会があれば結果をまとめ、記事を更新していこうと思います。
以上
他のおすすめ記事はこちら
著者紹介
SB C&S株式会社
ICT事業本部 技術本部 第3技術部 2課
渡邊 理史