現在、OWASP のオープン ソース プロジェクトに取り組んでおり、エンタープライズ セキュリティ コントロールの C++ API を作成しています。
Enterprise Security API (ESAPI) は、Java EE 用に既に定義されています。C++ 言語のセキュリティ管理の要件は、ある程度異なる可能性があることを認識しています。間違いなく、最大のセキュリティ上の懸念のいくつかは、現時点では解決策を提供していないメモリ管理に起因しています。これまでのところ、ESAPI 2.0 for Java 仕様から抜粋したいくつかの項目に焦点を当てています。ただし、これらのセキュリティ セクションの一部に固有の質問がいくつかあります。主に、Java ESAPI は Web アプリケーションに大きく傾いていますが、これは C++ の標準ではありません。したがって、一般的なセキュリティ制御が C++ コミュニティに役立つ他の領域を探しています。C++ 開発者が直面する一般的なセキュリティ問題の種類を知っておくと役立ちます。
私たちは、ハッカーがどのように攻撃してあなたのコードを壊すかを特定しようとしており、それを防ぐための適切なセキュリティ制御を提供できるようにしています.
このプロジェクトに関するフィードバックを集めるために、Google アンケートを作成しました。ただし、ここにもフィードバックを残してください。 https://docs.google.com/spreadsheet/viewform?formkey=dE5feWtjYlBNU05lV1FxTGNLVExIMVE6MQ
提案されたセキュリティ コントロール(ESAPI 2.0 for Java から取得):
- 認証 - 裏付けとなるアカウント資格情報とセッション識別子を生成および処理する方法。
- ユーザー - アプリケーション ユーザーまたはユーザー アカウントを表します。
- アクセス制御 - アクセス制御を実施するために、さまざまなアプリケーションで使用できるメソッド。
- 検証 - 信頼されていない入力を正規化および検証するためのメソッド.
- エンコーディング - さまざまなインタープリターにとって安全になるように、入力をデコードし、出力をエンコードします。
- 実行 - セキュリティ リスクを軽減して OS コマンドを実行するために使用されます。
- 暗号化 - 一般的な暗号化、暗号化乱数と文字列、ハッシュ操作、および署名。暗号化機能は、C++ 用の Wei Dai の Crypto++ ライブラリに基づいて構築されます。ただし、私たちの意図は、いくつかの基本的な用語は別として、暗号化に関する特定の知識がなくても平均的な開発者が使用できるほど単純な暗号化機能を提供することです。
- ロギング - セキュリティ イベントのログ記録に使用できるように設計された方法。
この API の使用を検討しますか?
これはあなたの開発/ビジネスに利益をもたらしますか?
推奨事項はありますか?
このプロジェクトに関して提供できる追加情報は、私たちにとって有益です。上記のリストに含まれていないものや、一般的な推奨事項を含めると便利な特定のものがある場合は、それで問題ありません。上記のリストで、使用する方法がまったくないため除外することをお勧めするものはありますか? もしそうなら、それについても教えてください。
ご注意いただきありがとうございます。C++ 用の ESAPI を作成することで、開発者がより安全なアプリケーションを簡単に作成できるようになることを願っています。
https://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API http://code.google.com/p/owasp-esapi-cplusplus/