00:00
こんにちは。現場のAI業務改善ラジオの大地です。 今日は、ホームページのセキュリティ対策の基本というテーマでお話します。
中小企業や個人のホームページなら、攻撃をされることはほぼないだろう。 多くの経営者がそう思っています。
ですが、警察庁の統計では、1IPアドレスあたり1日9000件以上の不審なアクセスが観測されています。
IPアドレスとは、インターネット上の住所のことです。 攻撃の多くは、相手を選ばない自動プログラムが仕掛けていて、その大部分は海外からです。
会社の規模も知名度も関係ありません。 今日は、セキュリティの基本と具体的な4つの領域の対策。
AIにセキュリティ対応を任せる方法までお話します。 まずは、ホームページが攻撃されると、どんなことが起こるかを解説します。
先ほど、1つのIPアドレスあたり1日9000件以上の不正アクセスがあるというお話をしました。
この不正アクセスの大部分は、Botと呼ばれる自動プログラムです。
Botに侵入されたときのよくある被害は、ホームページの内容を書き換えられる、ホームに迷惑なメッセージや不正な送信を繰り返される、
問い合わせなどで預かった個人情報を盗まれる、といったものが多いです。
こういった攻撃対策の基本は、入り口、土台、データ、監視の4つの領域に分けて行えます。
ホームページの入り口を守り、土台を最新に保ち、データを保護し、異常に気づく、この4つです。
まず、入り口とは、ホームや管理画面のように、外から操作できる場所のことです。
ここがBotの標的になりやすく、最初に守るべき場所です。
ホームを無防備なままで置いておくと、迷惑な自動送信の的になります。
対策の定番は、人間とBotを自動で見分ける仕組みを設置することです。
クラウドフレアターンスタイルやリキャプチャが代表例です。
僕のホームページでは、無料のターンスタイルを、問い合わせ、予約、フィードバックの3つのフォーム全てに設置しています。
また、同じ相手からの短時間の大量アクセスを自動でブロックする仕組みも入れています。
60秒間に5回までとアプリ側で制限した上で、
ホームページの配信用になっているクラウドフレアの基盤側でも、独立した制限をかけています。
二重にしているのは、片方に漏れがあっても、もう片方が止めるためです。
一方で、管理画面には別の攻撃があります。
ホームページや業務システムには、大抵管理画面があり、このURLが外から分かる状態だと、パスワードを機械的に試し続ける攻撃の標的になります。
管理画面を使う場合は、推測されにくい強いパスワードと二段階認証を必ず設定してください。
僕のホームページはさらに踏み込んで、管理画面そのものがありません。
予約のキャンセルなどの操作は、僕のパソコンの中だけで動く専用ツールに限定しています。
影を強くするのではなく、玄関のドアそのものをなくした形です。
ドアがなければ、影を破られることもありません。
入り口の次に守るのが、土台です。
ホームページは、ワードプレスのようなホームページを作るソフトや、そこに機能を足すプラグインなど、たくさんのソフトの上に成り立っています。
03:03
これが土台に当たります。
ソフトは、セキュリティ上の弱点、いわゆる脆弱性が日々新しく見つかってきます。
だから、定期的に更新をしないと、そこが攻撃の入り口になってしまいます。
おすすめは、更新の自動提案ツールを使うことです。
僕のホームページでは、使っているソフトの更新を、Renovateというツールが毎週自動で提案してくれます。
提案をもとに更新し、テストが全て通ったら本番に適用する、という流れです。
ソフトを全自動で更新する選択肢もありますが、更新によって今まで動いていた機能が動かなくなると困ります。
だから、提案してからテストして適用するという、人が最後に確認する流れが一般的です。
入り口と土台を守ったら、次はデータそのものです。
暗号化、バックアップ、秘密情報の分離という三つの対策で、預かった情報を守ります。
一つ目が通信の暗号化です。
httpsは通信を暗号化する仕組みで、URLがhttpsから始まるのが目印です。
暗号化されていないと通信の内容を盗み見られる恐れがあります。
僕のホームページは常時httpsにしていて、暗号化なしのhttp通信を受け付けない設定にしています。
データ保護の二つ目がバックアップです。
バックアップは取ること自体が目的ではなく、トラブルの後に実際に戻せて初めて意味があります。
確認するのは頻度と復元手順の2点です。
毎日取っていても、戻す手順を誰も試したことがなければ安心できません。
僕のデータベースは二段構えで、7日以内ならすぐ好きな時点へ戻せる仕組みに加えて、
それより前のデータを戻せるよう、別の場所に90日間保管するバックアップも取っています。
データ保護の三つ目が秘密情報の分離です。
APIキーという外部サービスと接続するための鍵になる文字列やパスワードを、
プログラムや共有ファイルに直接書き込むのは危険です。
コピーや共有の度に漏れる機会が増えていきます。
僕のホームページでは、秘密情報を専用の保管場所にまとめて登録して、
プログラム側はその場所を参照するだけにしています。
コードに秘密情報が紛れ込んでいないかの自動スキャンも保存の度に実行されます。
個人情報も残し過ぎないことが大切です。
ホームで預かった添付ファイルの原本は30日で自動的に削除しています。
入口、土台、データを守ってもまだ足りません。
最後に必要なのが異常に気づく仕組みです。
どれだけ備えてもトラブルの可能性はゼロにはなりません。
本当に怖いのは、ホームページが止まったり書き換えられたりしたまま誰も気づかないことです。
まず用意したいのが外景監視です。
外部からホームページで定期的にアクセスして正常に表示されているかを確かめる仕組みで、
アップタイムロボットなどが無料で使えます。
僕のホームページでは30分間隔の外景監視を4本動かしています。
トップページと予約ページが表示されるか、システムが正常に応答するか、
それから未対応のエラーが残っているか、この4つで見張る構成です。
さらに終時の自動点検やバックアップが失敗したときは、対応タスクが自動で作られます。
06:05
異常を見つけるところから対応もねを防ぐところまで、人の手を挟まず仕組みが回ります。
ただ、この入り口、データ、土台、監視の4領域を自分で対策するのはかなり難しいと思います。
でも、Cloud CodeやCodeXといったAIエージェントがあれば、確認から対策までまとめて任せられます。
AIには次のように依頼してください。
このホームページのセキュリティ対策を優先度が高い順にドキュメントにまとめて、
これだけでAIが現状を調べて、必要なセキュリティ対策を優先度順に並べたドキュメントを作ってくれます。
あとは、そのドキュメントを保存して、上から一つずつAIに対応させていけば大丈夫です。
まとめます。
ホームページはBotに無差別に探索されていて、攻撃されるかどうかに運営元の規模は関係ありません。
そのため、基本となる入り口、土台、データ、監視の4つの領域で対策が必要です。
フォームと管理画面という入り口を自動で守り、ホームページを支えるソフトという土台を最新に保ち、
暗号化、バックアップ、機密情報の分離でデータを守り、外形監視で異常に気づく、
どれも無料から低コストのサービスの組み合わせで対応可能です。
そして、この4領域の確認から対応までは、AIエージェントに任せられます。
まずは、自社のホームページのセキュリティ対策を優先度が高い順にドキュメントでまとめてもらいましょう。
概要欄に今回の内容を解説した記事を貼っておきます。興味があれば見てみてください。
質問やご意見、取り上げてほしいテーマがあれば、ぜひコメントお願いします。
それでは今日はこの辺で。