ホームページ  >  記事  >  バックエンド開発  >  PHP アンチインジェクション セキュリティ コード_PHP チュートリアル

PHP アンチインジェクション セキュリティ コード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:52:30819ブラウズ

簡単な説明: /**************************
説明:
渡された変数に不正な文字が含まれているかどうかを判定します
$_POST、$_GET など
機能: アンチインジェクション
* *************************/

コードをコピー コードは次のとおりです:


//フィルタリングされる不正な文字
$ArrFiltrate=array("' "," ;","union");
//エラー発生後にジャンプするURL。未入力の場合はデフォルトで前のページが使用されます
$StrGoUrl="";
//値の有無配列内で
function FunStringExist($StrFiltrate,$ ArrFiltrate){
foreach ($ArrFiltrate as $key=>$value){
if (eregi($value,$StrFiltrate)){
return true;
}
}
return false;
}

// $_POST と $_GET をマージ
if(function_exists(array_merge)){
$ArrPostAndGet=array_merge($HTTP_POST_VARS,$HTTP_GET_VARS)
foreach($HTTP_POST_VARS as $key) =>$value){
$ArrPostAndGet[ ] = $value;
foreach($ArrPostAndGet as $key= >$value){
if (FunStringExist($value,$ArrFiltrate)){
echo "< ;script language="javascript">alert("不正な文字");"; emptyempty($StrGoUrl)){
echo "";
}else{
echo ""; checkpostandget として保存します。 php
次に、各 php ファイルの前に include("checkpostandget.php"); を追加します


方法 2





コードをコピーします

コードは次のとおりです:
G/*すべての変数をフィルタリング*/
Foreach ($_Get as $ get_key = & gt; $ get_var) {
(inumeric ($ get_var)) {
$ get [StrTo lower ($ GET_KEY)]] et_int ( $get_var) ;
} else {
$get[strto lower($get_key)] = get_str($get_var);
}
}/* すべての POST 変数をフィルタリング */
foreach ( $_POST as $post_key= > _key)] = get_str ( $post_var);
}
}

/* フィルター関数 */
//整数フィルター関数
function get_int($number)
{
return intval($number)
//文字列フィルター関数
function get_str; ($string)
{
if (!get_magic_quotes_gpc()) {
return addlashes($string)
}
return $string;





http://www.bkjia.com/PHPjc/318902.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/318902.html
技術記事

簡単な説明: /**************************** 説明: 渡された変数に $_POST、$_GET などの不正な文字が含まれているかどうかを判断します 機能: アンチインジェクション*** *********************/ 次のようにコードをコピーします...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。