User Tools

Site Tools


ja:rule:fle:読込むファイルサイズを検証する

This is an old revision of the document!


読込むファイルサイズを検証する

ファイルサイズが保証できない場合、ファイルサイズを検証しないと巨大なデータを読み込んでしまう可能性がある。大きなデータには小さなファイルにないリスクが存在する。

  • 整数オーバーフロー
  • DoS

非適合コード例

ファイルサイズを検証しない

$data = file_get_contents('/path/to/file');
// $dataのサイズは不定。メモリ制限がある場合、プログラムの実行が意図せず停止。

適合コード例

最大のファイルサイズを指定する

$data = file_get_contents('/path/to/file', false, null, 0, 4096);
// $dataのサイズは最大でも4096バイト

最大のファイルサイズを確認する

if (filesize('/path/to/file') > 4096)) {
    throw new Exception('Too large file');
}
$data = file_get_contents('/path/to/file');
// $dataのサイズは最大でも4096バイト

例外

[ルール/推奨事項の例外]

リスク評価

[ルール/推奨事項のリスク評価]

[評価例 - 英語表記に統一]

Rule Severity Likelihood Remediation Cost Priority Level
IDS05-J medium unlikely medium P4 L3

関連ガイドライン

参考文献

ja/rule/fle/読込むファイルサイズを検証する.1509003457.txt.gz · Last modified: 2017/10/26 07:37 by yohgaki

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki