V10: 悪意あるコード

管理目標

コードが以下の上位要件を満たすことを確認します。

  • 悪意のある行為はアプリケーションの他の部分に影響を与えないようセキュアかつ適切に処理されます。

  • 時限爆弾や他の時間ベースの攻撃を持ちません。

  • 悪意のある宛先や認証されていない宛先に "Phone Home" していません。

  • バックドア、イースターエッグ、サラミ攻撃、ルートキット、または攻撃者がコントロールできる不正なコードを持ちません。

悪意のあるコードを見つけることは否定命題の証明であり、完全に確認することは不可能です。コードに固有の悪意のあるコードや不要な機能が含まれていないことを確認するために、最善の努力を払うべきです。

V10.1 コード完全性

悪意のあるコードに対する最善の防御は「信頼するが検証する」です。不正なコードや悪意のあるコードをコードに取り込むことは多くの法的管轄で犯罪行為となります。方針と手続きにより悪意のあるコードに関する制裁措置が明確になるでしょう。

開発リーダーは定期的にコードチェックインを確認すべきです。特に時刻、I/O、ネットワーク機能にアクセスする可能性を確認します。

V10.2 悪意あるコード検索

悪意のあるコードは極めてまれであり、検出が困難です。手動で詳細にコードレビューすることで論理爆弾を検出する手助けができますが、非常に経験豊富なコードレビュー担当者でさえ、悪意のあるコードが存在することを知っていても見つけるのに苦労します。

このセクションに従うことは、サードパーティライブラリを含む、ソースコードへの完全なアクセスなしでは不可能です。

V10.3 アプリケーションの完全性

アプリケーションがデプロイされた後も、悪意のあるコードが挿入される可能性があります。アプリケーションは、信頼されていないソースから署名されていないコードの実行やサブドメインのテイクオーバーなどの一般的な攻撃から自分自身を保護する必要があります。

このセクションに従うことは戦略的かつ継続的であることが望まれます。

V10.4 防御的コーディング

参考情報

詳しくは以下の情報を参照してください。

Last updated