クロスサイト攻撃からローカルネットワークのシステムを守る簡単な方法

(Last Updated On: 2017/12/06)

クロスサイト攻撃からローカルネットワークを守ることは簡単です。簡単なので会社、特にシステム開発/運用部門は必ずローカルネットワークへのクロスサイトアクセスを禁止&検出すべきです。クロスサイト攻撃とはクロスサイトスクリプティング(XSS)やクロスサイトリクエストフォージェリ(CSRF)の事です。基本的な対策ですが、意外に実施されていることが少ないようです。

まだ対策をしていない場合は実施することを強くお勧めします。

クロスサイト攻撃はWebシステムに対するよくある攻撃手法です。少しの手間でローカルネットワークに対するクロスサイト攻撃は完全に防止することが可能です。

Fedoraでクロスサイト攻撃を全滅させる手順

以下のパッチを/etc/squid/squid.confに当てる

 

インストールしたsquidを有効化&起動する

 

ローカルホストのsquidをプロキシにする

 

たったコレだけで自分のPCを経由したクロスサイト攻撃からローカルシステムを守れるます。

例えば、localhostにアクセスする以下のようにアクセスできません。

クラウドなどに非公開の自社システムがある場合は、そのIPアドレスをsquid.confに追加すればそれらのリモートシステムに対するクロスサイト攻撃を根こそぎ防げます。

追加ですべきは、ローカルネットワークへのアクセスがあった場合にシステム管理者にアラートを送るようにすることをです。これはログ管理システムなどに設定すると良いでしょう。

ここでは説明を簡略化するためローカルホスト用に設定しました。基本を知っていれば、会社全体や部門用のプロキシサーバーを設定することは難しくないと思います。

個人で対策するならFirefox + NoScript

プロキシを作ったり手間をかけれない!といった場合、FirefoxのNoScript拡張を使うとABEで同様の防御を実現できます。(ABEはインターネットサイトからローカルネットワークへのクロスサイト攻撃を防止できる)

簡単にインターネットから内部ネットワークを守る方法

これでどう安全になるのか?

結構アクセスがあるようなので、非エンジニア向けにどうしてこれでローカルシステムの安全性が向上するのか説明します。

Webブラウザを利用して、プライベートアドレスのネットワークを外部(インターネット)からスキャンできます。ツールも公開されているので簡単です。

スキャンした後は攻撃です。WiFiルーターなどには脆弱性があることが多いです。酷い場合はルーターを丸ごと乗っ取られます。こういった問題はWiFiルーターに限らず、プリンタやIoTデバイスに多数見つかっています。

ブラウザを利用したこれらの攻撃にはクロスサイト攻撃が利用されます。ローカルネットワークへのWebアクセスを禁止すると、原理的にクロスサイト攻撃ができなくなり安全性が向上します。

まとめ

セキュリティ対策の基本が出来ている会社であれば、会社や開発/運用環境のネットワークをこのブログに書いたようにプロキシで守っていると思います。

多くの場合、VLANで会社業務やシステムの実験/開発/運用を区別しインターネットへのアクセスを制限していると思います。このように区別した環境を用意しているのに、クロスサイト攻撃を根こそぎ防止していないのは勿体ないです。

自分の環境はそうなっていない!という開発者の方は自分のLinuxだけなら簡単にクロスサイト攻撃を防止できます。入れてみるのも良いと思います。

ここで紹介した設定はlocalhost(127.0.0.1、::1)に対するアクセスも防止しています。特に開発環境ではlocalhostへのアクセスを許すのはリスクが高いです。インターネットRFCではlocalhostにアクセスした場合、常にlocalhostにアクセスできるような仕様が検討されています。セキュリティ問題の原因になるのでこういう余計や仕様を作るのではなく、localhostへのアクセスが必要である、という旨を表示するようにすれば良いだけではないでしょうか?

 

Comments

comments