STRIDEでセキュリティ脅威カテゴリを分類する

2018-12-27
プログラミング

STRIDE

英語日本語
Spoofing of user identityなりすまし
Tampering改ざん
Repudiation否認
Information disclosure情報漏えい
Denial of serviceサービス拒否
Elevation of privilege権限昇格

なりすまし(Spoofing of user identity)

”なりすまし”とは、ユーザー情報や虚偽のIPアドレスを使い、不正にシステムにアクセスすることを指します。
例えば、IPスプーフィング、フィッシング、パスワードクラック、ソーシャルエンジニアリングなどがあります。
対策としては、パスワードの複雑化、認証CookieのSSL保護などがあります。

改ざん(Tampering)

“改ざん”は、データの書き換えや破壊することを指します。
対策としては、デジタル署名の使用などがあります。

否認(Repudiation)

“否認”とは、ユーザーによる特定のアクションまたはトランザクションの実行を否認することです。
例えば、ECサイトの購入者が購入しているのに関わらず、購入していないと言い張ることなどが挙げられます。
対策としては、監査記録などの作成があります。

情報漏えい(Information disclosure)

“情報漏えい”とは、意図しない相手に情報が漏れてしまうこを指します。
人為的に内部情報を持ち出したりすることも情報漏えいにあたります。
対策としては、パスワードを暗号化して保存するなどが挙げられます。

サービス拒否(Denial of service)

 “サービス拒否” とは、システムを使用不可能にすることを指します。
これには、DOS攻撃やDDoS攻撃があてはまります。
対策としては、IPアドレスのフィルタリングや帯域幅調整などがあります。

権限の昇格(Elevation of privilege)

 “権限昇格” とは、アクセス権限のないユーザーにアクセス権が与えられることを指します。
実装ミスやマルウェアなどによってアクセス権限が変更されることもあります。
対策としては、最小権限の原則を適用するなどがあります。

まとめ

このSTRIDEモデルを使うと、最終的なセキュリティリスクを見つけることができます。
個々の攻撃は複雑になっており、セキュリティ対策を実施する上では、クラッカー等の意図を意識することが重要です。
STRIDEを利用することで、クラッカーの最終的なゴールを意識できるようになり、それぞれのセキュリティリスクへの対応が取りやすくなります。

【参考】
https://docs.google.com/viewer?a=v&pid=sites&srcid=ZGVmYXVsdGRvbWFpbnxzZWN1cmVwcm9ncmFtbWluZ3xneDo0MTY1MmM0ZDI0ZjQ4ZDMy
https://msdn.microsoft.com/ja-jp/library/cc402182.aspx