PHP ログイン インジェクションの小さな例
PHP を学習する過程で SQL インジェクションについて聞いたことがあるでしょう。簡単に言うと、バックグラウンドで SQL コードの脆弱性を利用して不正な操作を実行することです。たとえば、ログインするバックエンド コードの脆弱性を悪用すると、ユーザーは実際のユーザー名とパスワードを知らなくても、フォームからデータを送信してバックエンドに正常にログインできます。ユーザー検証の例を見てみましょう。まず、次のようにデータベースとデータ テーブルを作成し、レコードを挿入します。
CREATE TABLE `user` (
`userid` int(11) NOT NULL auto_increment,` ユーザー名` varchar(20) NOT NULL デフォルト '',
`パスワード` varchar(20) NOT NULL デフォルト '',
PRIMARY KEY (`userid`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
#
# テーブル `user`
#
INSERT INTO `user` VALUES (1, 'angel', 'mypass');
検証するコードユーザーファイルは次のとおりです:
PHP コード:
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "injection ";
mysql_connect($servername,$dbusername,$dbpassword) または die ("データベース接続に失敗しました");
$sql = "SELECT * FROM user WHERE username='$username ' AND パスワード='$パスワード '";
$result = mysql_db_query($dbname, $sql);
$userinfo = mysql_fetch_array($result);
if (empty($userinfo)){
echo "ログイン失敗" ;
} else {
echo "ログイン成功";
}
echo "
SQL クエリ:$sql
";
? >
この時点で次のように送信します:
http://127.0.0.1/injection/user.php?username=angel'or 1=1
次が返されます:
警告: mysql_fetch_array(): 指定された引数は、F:wwwinjectionuser.php の 13 行目で有効な MySQL 結果リソースではありません
ログインに失敗しました
SQL クエリ:SELECT * FROM user WHERE username='angel' or 1=1' ANDパスワード='
PHP 警告 : mysql_fetch_array(): 指定された引数は、F:wwwinjectionuser.php の 13 行目で有効な MySQL 結果リソースではありません
わかりますか?一重引用符が閉じられた後、次の一重引用符はコメントアウトされず、一重引用符が正しくペアにならないことになります。したがって、作成したステートメントでは Mysql を正しく実行できず、再構築する必要があることがわかります。 🎜>http://127.0.0.1/injection/user.php?username=angel'or '1=1
このとき、「Login Successful」と表示され、成功したことがわかります。または、次のように送信します:
http://127.0.0.1/injection/user.php?username=angel'/*
http://127.0.0.1/injection/user.php?username=angel'%23
これにより、次のステートメントがコメントアウトされます。これら 2 つの投稿の違いについて説明します。言うまでもなく、最初に投稿した文は論理演算を使用しています。 2 番目と 3 番目の文は、mysql の特性に基づいています。Mysql は、/* と # の 2 つのコメント形式をサポートしているため、送信するときに次のコードをコメントアウトします。エンコードの問題により、# を送信することに注意してください。 IE のアドレス バーは空になるため、アドレス バーで送信する場合は、# になる前に %23 を送信する必要があります。これは、PHP の論理演算よりもはるかに簡単であることがわかります。 ASP よりもはるかに強力で柔軟です。
詳細な元のアドレス: http://www.phpnewer.com/index.php/Dmaq/detail/id/202
-----解決策-- - -----------------
ふふふふふふふ
------解決策---------
共有してくれてありがとう
------解決策---------
記事は古すぎて時代遅れです。
------解決策---------
昨日公開されたばかりの記事は古いですか? ? ?
ディスカッション
これは確かに古い方法であり、次のことが可能です。これらのコメント文字と、エラーが発生したときに出力される情報を簡単にブロックします ただし、厳密に検査されていない Web サイトに対しては、この機能を試すことができます。
------解決策-----
一重引用符でフィルターで除外 他に何ができるでしょうか?
------解決策---------
これは前にも見たことがあります。 これは 1 つの GET 送信メソッドにすぎません。 POST投稿方法もあります
------解決策----------------------
この広告マンは広告を出し続けています。
------解決策----------------------
現在ブロックされている方が多いようです(笑)
------解決策------------------
幸いなことに、私は参加する決意をしています

tomakephpapplicationsfaster、followthesesteps:1)useopcodecachinglikeopcacheTostoredscriptbytecode.2)最小化abasequeriesecachingingindexing.3)leveragephp7機能forbettercodeefficiency.4)

依存性注入(DI)は、明示的に推移的な依存関係によりPHPコードのテスト可能性を大幅に改善します。 1)DI分離クラスと特定の実装により、テストとメンテナンスが柔軟になります。 2)3つのタイプのうち、コンストラクターは、状態を一貫性に保つために明示的な式依存性を注入します。 3)DIコンテナを使用して複雑な依存関係を管理し、コードの品質と開発効率を向上させます。

DatabaseQueryoptimizationInpholvesseveralstrategESTOEnhancePerformance.1)selectonlynlynlyndorycolumnStoredatedataTransfer.2)useindexingtospeedupdataretrieval.3)revenmecrycachingtostoreres sultsoffrequent queries.4)

phpisusededemingemailsduetoitsbuilt-inmail()functionandsupportiveLibrarieslikephpmailerandswiftmailer.1)usethemail()functionforbasicemails、butithaslimitations.2)emploadforadvancedfeatureSlikelikelivableabableabuses.3)雇用

PHPパフォーマンスボトルネックは、次の手順で解決できます。1)パフォーマンス分析にXdebugまたはBlackfireを使用して問題を見つける。 2)データベースクエリを最適化し、APCUなどのキャッシュを使用します。 3)array_filterなどの効率的な関数を使用して、配列操作を最適化します。 4)bytecodeキャッシュ用のopcacheを構成します。 5)HTTP要求の削減や写真の最適化など、フロントエンドを最適化します。 6)パフォーマンスを継続的に監視および最適化します。これらの方法により、PHPアプリケーションのパフォーマンスを大幅に改善できます。

依存関係(di)inphpisadesignpatternativats anducesclassodulencies、拡張測定性、テスト可能性、および維持可能性。

cachingemprovesppperformancebystring of computationsorquickretrieval、還元装置の削減は、reducingerloadendenhancersponseTimes.efcectivestrategiesInclude:1)opcodecaching、compiledphpscriptsinmemorytoskipcompilation;


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Dreamweaver Mac版
ビジュアル Web 開発ツール

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