ホームページ >バックエンド開発 >PHPチュートリアル >PHP SQLインジェクション防止・攻撃技術の実装と手法(1/4)_PHPチュートリアル

PHP SQLインジェクション防止・攻撃技術の実装と手法(1/4)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:09:41931ブラウズ

phpチュートリアルSQLインジェクションの防止と攻撃技術の実装と方法
1. PHP 設定ファイル php.ini の magic_quotes_gpc オプションがオンになっておらず、オフに設定されています

2. 開発者はデータ型をチェックしてエスケープしなかった

しかし、実際には2番目の点が最も重要です。ユーザーが入力したデータ型をチェックし、正しいデータ型を mysql チュートリアルに送信することは、Web プログラマーの最も基本的な資質であるべきだと思います。しかし実際には、多くの初心者 Web 開発者はこれを忘れて、バックドアが大きく開いたままになっていることがよくあります。

なぜ2番目の点が最も重要なのでしょうか? 2 番目の保証がないと、magic_quotes_gpc オプションがオンかオフかに関係なく、SQL インジェクション攻撃を引き起こす可能性があるためです。技術的な実装を見てみましょう:

1. magic_quotes_gpc = offの場合のインジェクション攻撃
Magic_quotes_gpc = off は、php の非常に安全でないオプションです。新しいバージョンの php では、デフォルト値が on に変更されました。しかし、オプションがオフになっているサーバーがまだかなりの数あります。結局のところ、サーバーがどんなに古いものであっても、まだそれを使用している人がいます。

magic_quotes_gpc = on の場合、送信された変数のすべての '(一重引用符)、"(二重記号)、(バックスラッシュ)、および空白文字を前に自動的に追加します。 以下は php 公式の説明です:

magic_quotes_gpc ブール値

gpc (get/post/cookie) 操作の magic_quotes 状態を設定します。magic_quotes がオンの場合、すべての ' (一重引用符)、" (二重引用符)、(バックスラッシュ)、および null はバックスラッシュで自動的にエスケープされます。

1 2 3 4

http://www.bkjia.com/PHPjc/629722.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629722.html技術記事 PHP チュートリアル SQL インジェクションと攻撃防止テクノロジの実装と方法 1. PHP 構成ファイル php.ini の magic_quotes_gpc オプションがオンになっておらず、オフに設定されている 2. 開発者はデータ型を変更していません...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。