検索
ホームページphp教程php手册PHP セキュリティ防止のヒントの共有

PHP セキュリティ防止のヒントの共有

Jun 13, 2016 pm 12:04 PM
phpsqlxssコード共有そして安全性安全上の注意スキル注射ネット

PHP コードのセキュリティと XSS、SQL インジェクションなどは、さまざまな Web サイト、特に XSS や SQL インジェクションの最も大きな影響を受ける領域である UGC (ユーザー生成コンテンツ) Web サイト、フォーラム、電子商取引 Web サイトのセキュリティに非常に役立ちます。ここでは、システムのセキュリティと比較して、PHP のセキュリティ防止では、ユーザーが入力するさまざまなパラメータについてより注意する必要があります。

PHP のコンパイル プロセスのセキュリティ
をお勧めします。 Suhosin パッチをインストールするには、セキュリティ パッチをインストールする必要があります。

php.ini セキュリティ設定
register_global = off
magic_quotes_gpc = off
display_error = off
log_error = on
#allow_url_fopen =オフ
expose_php = オフ
open_basedir =
safe_mode = オン
disable_function = exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,dl,popen,show_source,get_cfg_var
safe_mode_include_dir =

DB SQL preprocessing
mysql_real_escape_string (多くの PHPer は SQL インジェクションを防ぐために依然として addslashes に依存していますが、この方法は中国語のエンコードでは依然として問題があります。addslashes の問題は、ハッカーが 0xbf27 を使用して一重引用符を置き換えることができることです。 、0xbf27 は GBK エンコードでは有効な文字ではないため、addslashes は 0xbf5c27 を有効なマルチバイト文字に変換するだけであり、0xbf5c は依然として一重引用符とみなされます。詳細については、この記事を参照してください)。 mysql_real_escape_string 関数を使用する場合は、正しい文字セットを指定する必要もあります。指定しないと、依然として問題が発生する可能性があります。
prepareexecute(PDO)
ZendFramework は DB クラスの quote または quoteInto を使用できます。これらの 2 つのメソッドは、mysql の

処理にのみ使用できる mysql_real_escape_string とは異なります。ユーザー入力
HTML タグを保持する必要がない場合は、次のメソッド

strip_tags を使用して、文字列
htmlspecialchars 内のすべての HTML タグを削除します (「」のみ)。 "、";" 、"'" 文字はエスケープされます
htmlentities、およびすべての HTML がエスケープされます

HTML タグを保持する必要がある場合は、次のツールを検討できます:
HTML Purifier: HTML Purifier PHP で書かれた標準準拠の HTML フィルター ライブラリです。
PHP HTML Sanitizer: HTML コードから安全でないタグと属性を削除します。
htmLawed: HTML を浄化およびフィルターするための PHP コード

ファイルをアップロードします。
is_uploaded_file 関数と move_uploaded_file 関数を使用し、HTTP_POST_FILES[] 配列を使用します。また、アップロード ディレクトリの PHP 解釈機能を削除することで、ユーザーが PHP スクリプトをアップロードできないようにします。
ZF フレームワークで File_upload モジュールの使用を検討できます

セッション、Cookie、フォームの安全な処理
コアの検証には Cookie に依存しないでください。重要な情報は暗号化する必要があり、送信されるたとえば、送信するフォーム要素は次のとおりです:

プログラム コード

<input type="hidden " name="H[名前]" value="<?php echo $Oname?>"> <br><input type="hidden" name="H[年齢]" value="< ?php echo $Oage?>"> <br><?php $sign = md5('name'.$Oname.'age'.$Oage.$secret); ?> <br>"" /> <br><br><br>POST が戻った後にパラメータを確認します<br><br>プログラムコード<br><p class="codetitle"><span style="CURSOR: pointer" onclick="doCopy('code50959')"><u>コードをコピー</u></span> コードは次のとおりです。</p><p class="codebody" id="code50959"> <br>$str = "" <br>foreach($; _POST['H'] as $key=>$ value) { <br>$str .= $key.$value <br>} <br>if($_POST['hash'] != md5($ str.$secret)) { <br>echo "隠しフォーム データが変更されました"; exit; <br><br> </p><br>PHP セキュリティ検出ツール (XSS および SQL 挿入) <br>Wapiti・Webアプリケーションセキュリティ監査 (Wapiti - コンパクトサイト脆弱性検出ツール) (SQLインジェクション/XSS攻撃チェックツール) <br>インストール・利用方法: <br>apt-get install libtidy-0.99-0 python-ctypes python-utidylib <br>python wapiti.py http://あなたのWebサイトURL/ -m GET_XSS <br>Pixy: 、XSS検出機能が強力です) <br>PHPIDS - PHP侵入検知システム
<br>
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター