ナンプレ(数独)無料ゲーム

スポンサーリンク

TOP > コラム

サーバが攻撃されました
~2021/04/05~

サーバが攻撃されブロックする設定をしたところログインもできなくなってしまいみなさまにはご迷惑おかけしました。その説明をさせていただきます。
また他の人のタイムが混じってしまった方は申し訳ないのですがバックアップデータの復元ページから昨日の状態に戻していただければと思います。お手数ですがご了承ください。

4/5 16時ごろ攻撃に気がつく

夕方仕事をしているとナンプレ京からのお問い合わせメールが異常に届き始めます。内容も同じでしかもほとんど無いものです。スパム攻撃されているなととりあえずメールフォームのこのメールアドレスからは送信できたように見せて送信できない設定にしました。

またエラーログを見ると[49.89.196.132]のアドレスからナンプレ京の存在しないアドレスに大量のアクセスがあります。ついでにコマンドのようなものも送りつけられている模様。これはサーバの脆弱性を確かめているようです。

502 Bad Gateway

4/5 19時ごろスマートフォンでナンプレ京にアクセスすると502 Bad Gatewayというサーバエラーが表示されアクセスできなくなっていました。さすがにこれは攻撃が続いていて諦めてもいないとわかり、サーバの[WAF設定]をオンにしました。
[WAF設定]は攻撃にあたると判断したアクセスを遮断してくれる機能なんですが、CGI、PHPプログラムの動作に影響が出る恐れがあります。と説明に書いてあるのですがアクセス不可よりはいいかと思いONにしました。

ログインできなくなる

テストタイム登録はできたのですが、掲示板に説明を書こうと思ったところログインできなくなっています。こんなところに影響が出たかと思いましたが、修正にも調査にも時間がかかりそうなので、ひとまずTOPページに[重要なお知らせ]を書いておきます。

プレイしていないタイムが表示されるとのご連絡を受ける

日が変わって4/6。ナンプレをしていないのに知らない人のタイムが表示されてしまうというお問い合わせが入ってきました。ログインできないはずなのにおかしな現象だなと思ったのですがこれもまずいので調べる必要があります。

方針としてはログインを直したいのですがまずはログインしないようにホームページに表示してその後、タイムがおかしくなるバグの調査と解決をしてログインの解決はさらにその後となります。(先にログインが解決できればいいのですがそうもいかないのが歯がゆいところ)

タイムのバグ

ナンプレ京ではGoogleやYahoo!のログインができますが、メールアドレスやパスワードは預かっていなくて識別コードのようなものがGoogleやYahoo!から来ます。
(ですので情報の漏洩という意味では安心してください。そもそも預かっていないのです。)
肝心のバグですが識別コードが無い状態でログインはできていないのですが識別コードが無くても名無しさんの部分にタイムが保存されていました。全員が名無しさんとなり全員のタイムがそのデータに集約されていきます。これがわかったのでひとまず名無しさんは書き込みも読み込みもしないようにしました。

サーバのWAF設定を調査

続いてログインの調査です。調べていくとログイン画面でログインはできているのにその識別IDがTOPページなどで共有されていないということがわかりました。(クッキーに入れているんですがクッキーが共有されないのです)どうもこれが原因のようです。サーバのWAF設定は攻撃もブロックしてくれるけど他の情報もブロックされるようです。
サーバのWAF設定で共有したいデータだけ残す方法をいろいろ調べましたがどうもぴったりの方法が見つからず。。。

ひとまずアドレスでブロック

かなり調べたのですが都合よくクッキーだけブロックしない方法がわからず、結局WAF設定はやめにして昨日のエラーログのIPアドレスだけアクセス拒否にしました。これでひとまずはログインもできるようになりなんとかなった状態となりますが、サーバのWAF設定が使えなかったことで今後は攻撃されてはブロックするのいたちごっことなります。
ひとまず攻撃されているかどうか判別するプログラムを作ります。。。みなさんご迷惑おかけしました。

ナンプレ京(数独)
TOP
閉じる
閉じる