[Synology] NAS/Router ログ・センターは、毎日1回は見るべし – サーバーへの総当たり攻撃を発見、システムのログイン制限の適切な設定と自動ブロック- [2021/08/01]

基本設定

前回のケースでは、attackを受けたのはMail Serverであったため、Mail Serverへのattackが無くなるように設定されています。今回の対応により、その設定内容の変更はありません。今回のDSMへのログイン試行の対処療法として設定すべき項目は、DSMのポート番号の変更のみです。

前回、MailPlus Serverへのattackを受けた時の状況

これまで、Log Center (ログセンター)のログは、時折確認していました。しかし、Warningに関しては、重要視していませんでした

たまたま、今日(2020/06/05)、Warningをしっかり見てみたところ、3分間隔で、MailPlus Serverに対するログイン試行を繰り返していることに気づきました。しかも、3日間に渡ってです。Logを遡って見てみると、以下のことがわかりました。

  • 一回の攻撃は、約3日間をひとまとまりとして行われていた
  • その約3日間が数日間の間隔を置いて、同様の攻撃が行われていました
  • これを大きな「かたまり」として1つと勘定すると、まとまった攻撃の回数は半年間で、5回を確認できました
  • 3日間でのやり口は、約3分間隔でログインの試行をユーザー名を色々と変えながら行っていました。
    • ユーザーIDは、home、ad, user, user0など、よく使われるものでした(図1)

この攻撃を許していたことに冷や汗です。

図1. MailPlus Serverへのログイン試行ログ

基本設定による対策

DS918+のアクセス制限の適切な設定

アクセス回数によるログインの制限を、以下のような考え方によって適切に設定します。

  • 3分間隔のログイン間隔を前提にします
  • 3回のログイン・ミスが生じた場合にブロックするようにします
  • 3 x 3 =9 分間で、3回のミスが生じた場合をブロックできれば良いことになります
  • 時間に余裕を持たせて例えば、12分を設定します
  • 回数は、3回を設定します

コントロールパネル→セキュリティ→アカウント

図2. ログイン制限の設定

設定例

当初の設定では、時間の設定を1分にしていました。早めに検知できた方が良いと直感的に考えたからでしたが、その設定は間違いでした。1分以内で実行できるログイン試行数は、それほど多くありません。時間は、10分から60分程度が、検知するには必要です。更に、自分がログインしてすることと、不正アクセス者がログイン試行することを考えると、60分の時間内でのログイン試行数が設定の鍵になります。

例1

12分間の間で、3回~(最大4回)のログインを試行して失敗した場合、自動的にブロックします。4分間隔以下を検出できます。この場合、12分間で3回間違えるとブロックされます。自分がログインする場合も同様なので、少ない回数の3回については注意が必要です。

  • ログイン試行回数(Login Attempts) : 3 回
  • その時間範囲 (Within) : 12 分

例2

例1は、4分間隔のログイン思考を前提にしましたが、不正アクセス者は検知をさせるためには、間隔を更に長くすることも考えられます。

そこで修正して、各値を約3倍にを考えてみます。60分間の間で、10回のログイン試行のブロックを考えます。この場合、60分間以内に、10回ミスするとブロックできます。自分がアクセスする場合、10もミスはしないと思います。また、不正アクセス者が、10回の限られた回数でID/PWを破れるとは考えられません。妥当な設定だと思います。ただし、この設定では、不正ログイン試行を6分に1以上のアタックに対しては、自動ブロックができません。

この自動ブロックができない状態がそのまま続いたとして24時間経過後には、240回のログイン試行がおこなわれてしまいます。

  • ログイン試行回数(Login Attempts) : 10 回
  • その時間範囲 (Within) : 60分
  • 自動ブロックができない最悪のケースでは、24時間後には、240回のログイン試行を許してしまう

例3

例2の、10回、60分の設定では、最悪の場合、24時間後には、240回のログイン試行を許します。

そこで、10回のミスは、自分もあり得ると許容して、時間をもう少し考えます。24時間以内に10回ミスしたら、自動ブロックするようにすればどうでしょうか。

自分がログインする時、1日の内に連続して10回もミスはしません。10回、24 x 60 =1440分の設定を最終案として考えてみましょう。

不正ログイン試行が、この設定を最悪逃れられた場合、1日(24時間、1440分)で10回を許すことになります。1日で10回ということは、1週間で70回の試行回数になります。

Log Centerの確認を毎日行えば、10回の試行回数で発見できます。1週間毎の確認であれば、70回の試行回数で発見できることになります。なかなか、リーズナブルな設定値になってきました。これを最終提案とします。

  • ログイン試行回数(Login Attempts) : 10 回
  • その時間範囲 (Within) : 1440分
  • 自動ブロックができない最悪のケースでは、24時間後には10回、1週間では70回ののログイン試行を許してしまいますが、それ以外は自動ブロックできます。
  • 妥当な設定であると判断しました。

人気順