2011-01-24 19 views
10

C++で安全なコーディングの包括的な記録を探しています。 私はこのようなリストがすでに存在しているのを発見していないので、これをコミュニティのwikiに追加して参照することもできます。 スタックやヒープベースのバッファオーバーフローやアンダーフロー、整数オーバーフローやアンダーフロー、フォーマット文字列攻撃、ヌルポインタ逆参照、ヒープ/メモリ検査攻撃などのセキュリティ問題の解決策を探しています。安全なC++コーディング慣行

注:この種の攻撃に対して防御する安全なライブラリも言及する価値があります。

LE:コメントにMSaltersが示唆しているように、この質問はC++とCの2つに分かれています。 Secure C coding practicesも参照してください。

+5

このようなリストを作成する場合は、2つ作成することをおすすめします。 CとC++は全く異なるリストを必要とします。 Cプログラマーには '' char * '"の代わりに '' std :: string''を使うのはお勧めできません。 – MSalters

+0

多分ここからの本:http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list – rve

+0

@MSaltersそれは良い点ですが、これを行うのは難しいです返信とコメントがあります。どんなアイデアをどのように私は、現在の活動を失うことなく、適切な方法を分割することができますか? – Shinnok

答えて

3

書籍Writing Secure Codeは、セキュリティ上の問題とその回避方法を説明するのに非常に優れています。この本はしばらく外に出ていますが、カバーされているトピックのほとんどはまだ関連しています。

1

私は固定サイズ 配列する場合、これまで可能、またはCでInfactはを使用する++際に実用的

  • Cスタイルの配列を避ける

    • 避けが動的にmalloc
    • (関連)を使用して メモリを割り当てられ、それをキックオフしてみましょう(void *)
  • 3

    Herb Sutter「Exceptional C++」と「C++ Coding Standards」。非常に貴重です。

    マーシャルクリートC++ faq。一般的な落とし穴についてすべてを教えてくれます。フリーオンライン。

    1

    SEI CERT C++ Coding Standardは、あらゆる種類のセキュリティ問題をカバーするために特に開発されています。 CERTは、コンピューターのセキュリティインシデントを処理する専門家グループであるコンピューター緊急対応チームの略です。

    関連する問題