ja:rule:inp:入力文字エンコーディングをバリデーションする

This is an old revision of the document!


入力文字エンコーディングをバリデーションする

PHPの文字列型は文字エンコーディング情報を持たないバイナリ型である。APIや外部システムが入力文字エンコーディングのバリデーションを行っている場合も多いが、文字エンコーディングを利用したインジェクション攻撃のリスクを無くす為に入力文字エンコーディングはバリデーションしなければならない。

非適合コード例

<?php 
$name = filter_var($_GET['name'], FILTER_DEFAULT, [FILTER_FLAG_STRIP_LOW]);
?>
 
Your name is <?php echo htmlspecialchars($name) ?>.

適合コード例

[ルール/推奨事項に適合するコードおよびその解説。複数あって構わない。その場合、セクション名の後に“(適合パターン名)“を記述する。]

例外

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

リスク評価

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

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

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

関連ガイドライン

参考文献

ja/rule/inp/入力文字エンコーディングをバリデーションする.1458283889.txt.gz · Last modified: 2016/03/18 06:51 by yohgaki

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki