アカウント名:
パスワード:
訳してみました。不適切な言葉の使い方など、ツッコミあればお願いします
コンポーネント間のセキュアでないアクセス- 入力の検証忘れ(数値か文字列かのチェックなど)- 出力のエスケープ忘れ(制御情報とデータの分離を忘れるなど)- SQLインジェクション- クロスサイトスクリプティング- OSコマンドインジェクション- 重要情報の平文通信- CSRF- 競合状態(レースコンディション)- エラーメッセージ漏れ
危険なリソースマネジメント- バッファ内で操作が制限されていない- クリティカルセクションに外部からの変更ができる- ファイル名、ファイルパスに外部からの変更ができる- 信頼されていない検索パス(検索によって設定ファイルなどが検出できる)- コードインジェクション- チェックが不完全な(悪意の改竄のある)コードのダウンロード- リソース開放忘れ- 初期化忘れ- 不正確な算術(整数掛け算のオーバフロー、浮動小数点演算の丸め誤差など)
穴の多い防御- 認証忘れ- 脆弱性のある暗号アルゴリズムの使用- ハードコーディングされたパスワード- 重要資源への不適切なアクセス制限- 不十分な乱数の使用- 不必要な特権を使った実行- クライアントサイドに依存したサーバセキュリティ(リバースエンジニアリングを使っ>たなりすましの危惧)
ここに挙げられているミスが致命傷になりやすいのは重々承知ですが、危険性の低いミスってどんなもんでしょうね?暗黙の型変換に頼りきったコードとかでしょうか。なかなかいい例が思いつきません。
受託開発してれば思いつくのでは。
「FireFox で見るとナビゲーションバーの下に隙間ができる」とか、「表示金額が10桁以上になると、折り返しが発生してしまう」とか。
どれも致命傷になりうる危険性の高いミスだと思うが…。
人によっては。
・どこからも呼ばれないテストロジックの消し忘れ・納品物としてどうよ?という内容のコメント・同じロジックが別クラスに点在する
要するに、コーディング規約レベルのミスを犯せばいいんじゃないでしょうか。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
TOP25の内容 (スコア:5, 参考になる)
訳してみました。不適切な言葉の使い方など、ツッコミあればお願いします
コンポーネント間のセキュアでないアクセス
- 入力の検証忘れ(数値か文字列かのチェックなど)
- 出力のエスケープ忘れ(制御情報とデータの分離を忘れるなど)
- SQLインジェクション
- クロスサイトスクリプティング
- OSコマンドインジェクション
- 重要情報の平文通信
- CSRF
- 競合状態(レースコンディション)
- エラーメッセージ漏れ
危険なリソースマネジメント
- バッファ内で操作が制限されていない
- クリティカルセクションに外部からの変更ができる
- ファイル名、ファイルパスに外部からの変更ができる
- 信頼されていない検索パス(検索によって設定ファイルなどが検出できる)
- コードインジェクション
- チェックが不完全な(悪意の改竄のある)コードのダウンロード
- リソース開放忘れ
- 初期化忘れ
- 不正確な算術(整数掛け算のオーバフロー、浮動小数点演算の丸め誤差など)
穴の多い防御
- 認証忘れ
- 脆弱性のある暗号アルゴリズムの使用
- ハードコーディングされたパスワード
- 重要資源への不適切なアクセス制限
- 不十分な乱数の使用
- 不必要な特権を使った実行
- クライアントサイドに依存したサーバセキュリティ(リバースエンジニアリングを使っ>たなりすましの危惧)
Re:TOP25の内容 (スコア:5, 参考になる)
こんな感じかと。
- メモリバッファ境界内の操作に限定することに関する怠慢 (バッファオーバーフロー)
- クリティカルな状態データの外部制御 (hiddenやクッキーにセッションデータがそのまま入っているなど)
- ファイル名やパスの外部制御 (ディレクトリトラバーサル)
- 信頼されていない検索パス (ロードパスをあれすることで悪意あるライブラリを読み込ませるなど)
- 実行コードの生成の制御に関する怠慢 (コードインジェクション)
- 信頼性チェックをしないコードのダウンロード (DNSスプーフィングで攻撃者のサイトからダウンロードさせられているなど)
- 不適切なリソースの停止処理または解放 (解放忘れ・二重解放・解放後の使用など)
- 不適切な初期化 (初期化忘れ・クリティカルな内部変数を外部から初期化できる・未初期化で再利用されるため以前の内容が読めるなど)
- 不適切な計算 (整数オーバーフロー・0除算など)
Re:TOP25の内容 (スコア:1)
ここに挙げられているミスが致命傷になりやすいのは重々承知ですが、
危険性の低いミスってどんなもんでしょうね?
暗黙の型変換に頼りきったコードとかでしょうか。なかなかいい例が思いつきません。
Re:TOP25の内容 (スコア:1)
受託開発してれば思いつくのでは。
「FireFox で見るとナビゲーションバーの下に隙間ができる」とか、
「表示金額が10桁以上になると、折り返しが発生してしまう」とか。
Re: (スコア:0)
Re: (スコア:0)
どれも致命傷になりうる危険性の高いミスだと思うが…。
人によっては。
危険性の低いミス (スコア:0)
・どこからも呼ばれないテストロジックの消し忘れ
・納品物としてどうよ?という内容のコメント
・同じロジックが別クラスに点在する
要するに、コーディング規約レベルのミスを犯せばいいんじゃないでしょうか。
Re: (スコア:0)
# 暗黙の型変換は意外と危険ですよ。予期せぬ演算エラーの元になりますので。
Re: (スコア:0)
エラーメッセージからの情報漏洩
でしょうかね。