PHP の 8 つの主要なセキュリティ機能の分析_PHP チュートリアル
Jul 13, 2016 am 10:13 AMPHPの8つの主要なセキュリティ機能の分析
現代のインターネットでは、世界中のユーザーから入力データを取得する必要があることがよくあります。ただし、「ユーザーが入力したデータを決して信頼してはいけない」ことは誰もが知っています。そのため、さまざまな Web 開発言語では、ユーザー入力データのセキュリティを確保するための関数が提供されています。 PHP には、Web サイトで SQL インジェクション攻撃や XSS 攻撃などの問題を防ぐのに役立つ、非常に便利な関数がいくつかあります。もちろん、PHP コードを記述する場合、PhpStorm や Zend Studio などの IDE は、開発者が確実に使用できるように関数を強調表示します。また、これらの関数やコードを保護するためにコード難読化ツールを使用する人もいます (Zend Guard など)。これは、PHP 関数の使用と安全性を確保するために使用されます。今日は主に、これらの関数がどのように定義され、機能するかを見ていきます。
1.mysql_real_escape_string()
この関数は、PHP での SQL インジェクション攻撃を防ぐのに非常に役立ちます。一重引用符や二重引用符などの特殊文字に「バックスラッシュ」を追加して、Yes のクエリに使用する前にユーザーの入力が安全であることを確認します。ただし、この機能はデータベースに接続しているときに使用することに注意してください。
しかし現在、mysql_real_escape_string() 関数は基本的に必要なくなりました。すべての新しいアプリケーション開発では、データベースを操作するために PDO などのライブラリを使用する必要があります。つまり、既製のステートメントを使用して SQL インジェクション攻撃を防ぐことができます。
2. まつげを追加します
この関数は上記の mysql_real_escape_string() と非常に似ています。ただし、設定ファイルphp.iniのmagic_quotes_gpcの値が「on」の場合は、この機能を使用しないように注意してください。デフォルトでは、magic_quotes_gpc はオンになっており、すべての GET、POST、COOKIE データに対して addlashes() が自動的に実行されます。二重エスケープが発生するため、magic_quotes_gpc によってエスケープされた文字列に対して addslashes() を使用しないでください。この変数の値は、PHP の get_magic_quotes_gpc() 関数を通じて確認できます。
3.htmlentities()
この関数は、ユーザー入力データをフィルタリングするのに非常に便利で、文字を HTML エンティティに変換できます。たとえば、ユーザーが文字「
4.htmlspecialchars()
HTML の一部の文字には特別な意味があります。そのような意味を反映したい場合、この関数は変換された文字列を返します。たとえば、「&」amp は「&」に変換されます。
5.strip_tags()
この関数は、文字列からすべての HTML、JavaScript、および PHP タグを削除できます。もちろん、関数の 2 番目のパラメーターを設定することで、いくつかの特定のタグを表示することもできます。
6.md5()
一部の開発者は非常に単純なパスワードを保存していますが、これはセキュリティの観点からは良くありません。md5() 関数は指定された文字列の 32 文字の md5 ハッシュを生成する可能性があり、プロセスは元に戻せません。つまり、md5 の結果から開始することはできません。 () は元の文字列です。
7.sha1()
この関数は上記の md5() に似ていますが、異なるアルゴリズムを使用し、40 文字の SHA-1 ハッシュを生成します (md5 は 32 文字のハッシュを生成します)。
8.intval()
笑わないでください。これが安全関連の関数ではなく、変数を整数型に変換していることはわかっています。ただし、この関数を使用すると、特に ID や年齢などのデータを解析する場合に、PHP コードの安全性を高めることができます。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法
