【転載】「システムを隠す」ことでセキュリティを高めるのは本当に悪なのか?~”リスク=機会×影響度”で、”機会”に視点を当てた対策を考える~


この記事面白い 「システムを隠す」ことでセキュリティを高めるのは本当に悪なのか? - GIGAZINE gigazine.net/news/20200915-…: この記事面白い

「システムを隠す」ことでセキュリティを高めるのは本当に悪なのか? - GIGAZINE

gigazine.net/news/20200915-…

----

「システムを隠す」ことでセキュリティを高めるのは本当に悪なのか?


システムやアルゴリズムの構造を秘匿することでセキュリティを高める「隠ぺいによるセキュリティ(Security by Obscurity)」は、現代では本質的な安全性を確保できていないとされています。しかし、セキュリティの専門家であるUtku Şen氏は「隠ぺいによるセキュリティは過小評価されている」と指摘しています。

Security by Obscurity is Underrated – Utku Sen - Blog – computer security, programming
https://utkusen.com/blog/security-by-obscurity-is-underrated.html

脆弱性のあるシステムを攻撃者から隠すことでセキュリティを高めようとする「隠ぺいによるセキュリティ」は、ひとたびシステムの構造が外部に漏れると攻撃を防ぐ手だてがないことから、現代では効果のないセキュリティ対策とされています。数多く存在するオープンソースのソフトウェアがセキュリティを担保できているのは、隠ぺいによるセキュリティに頼っていないからと考えられているわけです。

しかし、Şen氏は「隠ぺいによるセキュリティ」は必ずしも悪というわけではないと指摘しています。セキュリティに関するコミュニティ「OWASP」によると、サイバー攻撃のリスクは「リスク=機会×影響度」の式で計算できるとのこと。攻撃がもたらす被害の大きさである「影響度」と、攻撃を受ける可能性を指す「機会」のうち、どちらか一方でも減らすことができればリスクを軽減することができます。式にある2つの要素のうち、機会を減らすためには、セキュリティ機構を層状に構築し、攻撃者が最初のセキュリティを通過しても、他のセキュリティに引っかかるようにする必要があります。

Şen氏は層状のセキュリティ機構のひとつとして、隠ぺいによるセキュリティは有用であると主張。例えば、サーバーへのSSH接続に「デフォルトの22番ポート経由で、『123456』のパスワードを設定しているrootユーザー」を利用している場合、サーバーが総当たり攻撃を受ける可能性は非常に高いですが、使用するポートを22番から64323番に変えて「隠ぺい」することで、攻撃を受ける機会を減らすことが可能であるとのこと。

実際にŞen氏がTwitterで「攻撃対象サーバーのポートが開いているかどうかポートスキャンで調べる際、すべてのポートをスキャンしますか」とアンケートを実施したところ、およそ半数の回答者は「デフォルトのポートしかスキャンしない」と回答しており、ポートを変更するだけで攻撃を受ける機会をおよそ半分に減らせることがわかります。

SSHの例の他にも、コードを難読化したり、ランダムな変数を利用したりしてソフトウェア構造を隠ぺいすることは攻撃に対して有効であるとのこと。また、大統領の移動にはダミーの車が何十台も用意される例のように、サイバーセキュリティのみならず現実の世界においても隠ぺいによるセキュリティは利用されているとŞen氏は指摘しています。




Şen氏は「隠ぺいによるセキュリティは、それだけでは不十分ですが、コスト無しでリスクを減らすことができるセキュリティ層として機能します」と語っています。