ホームページ バックエンド開発 PHPチュートリアル SQL インジェクション脆弱性の分析 SQL security_PHP チュートリアルのドラッグ ライブラリ原理

SQL インジェクション脆弱性の分析 SQL security_PHP チュートリアルのドラッグ ライブラリ原理

Jul 13, 2016 am 10:46 AM
sql による 原理 安全性 記事 注射 抜け穴 経験 私自身の 解析する ハッカー

この記事では、私自身の経験の一部を使用して、ハッカーの友人がデータベースの SQL 脆弱性をどのように利用してデータベースをダウンロードするかを説明します。必要に応じて、この記事を参照してください。

データベースにテーブルを作成します:

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

テーブル「記事」を作成 (

`articleid` int(11) NOT NULL AUTO_INCREMENT,

`title` varchar(100) CHARACTER SET utf8 NOT NULL DEFAULT '',

`content` テキスト CHARACTER SET utf8 NOT NULL,

主キー (`articleid`)

) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;

テーブルにデータを挿入するためのコードは投稿しません。ダウンロードしてデータベースに直接インポートできます。

次に、ユーザーのリクエストを処理するページを作成します。ここでは、ユーザーが送信したデータを意図的にフィルターせず、テスト用に SQL インジェクションの脆弱性を残します。

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

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

$servername = "ローカルホスト";

$dbusername = "root";

$dbpassword = "";

$dbname = "テスト";

$id=$_GET['id'];//id はフィルタリングされていません

$conn=mysql_connect($servername,$dbusername,$dbpassword) or die ("データベース接続に失敗しました");

mysql_select_db($dbname,$conn);

mysql_query('set names utf8');

$sql = "SELECT * FROM 記事 WHERE 記事 ID='$id'";

$result = mysql_query($sql,$conn);

$row = mysql_fetch_array($result);

echo "

SQL インジェクションの脆弱性を使用してライブラリをドラッグします

";

if (!$row){

「レコードは存在しません」をエコーし​​ます。

終了;

}

echo "title
".$row['title']."

";

echo "コンテンツ
".$row['content']."

";

?>

ブラウザに直接入力します:

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

http://127.0.0.1/marcofly/phpstudy/sqlinsert/showart.php?id=1

記事テーブルのID 1のレコードにアクセスできます

訪問結果は以下の通りです:

次に、この脆弱性を使用して (脆弱性がわからない場合は、ツール + 手動検出のみを使用できます)、記事テーブルをダウンロードする方法を示します。

アドレスバーに次のように入力します:

コードは次のとおりです コードをコピー
」を出力ファイル「e:/sql.txt」%23

分析: %23 は # の ASCII コードです。アドレス バーに # を直接入力するとデータベース システムでは空になるため、アドレス バーに %23 を入力して # になり、コメントアウトする必要があります。次の SQL ステートメント。

実行後、Eドライブを開き、追加のsql.txtファイルを見つけます。それを開くと、テーブル記事にレコードがあります。

レコードが 1 つしかないのはなぜですか?このデータテーブルにはレコードが 1 つだけありますか?これは当てはまりません。ID 1 のレコードを 1 つだけ取得するので、記事テーブル内のすべてのレコードを一度にダウンロードできますか?

構築された SQL ステートメントが十分に柔軟である限り、答えは「はい」です (ここでも、構築された SQL ステートメントの柔軟性が取り上げられます)。

分析すると、URL アドレス バーに「into outfile 'e:/sql.txt'%23」と入力すると、SQL クエリ ステートメントにマージされ、次のようになります。

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


SELECT * FROM 記事 WHERE 記事 ID='5' を出力ファイル 'e:/whf.txt'#' に

慎重に分析した後、次のような SQL ステートメントを構築できます:

コードは次のとおりです コードをコピー
SELECT * FROMarticle WHERE、articleid='' または 1=1 を出力ファイル 'e:/whf.txt'#' に入力します

この場合、WHERE 句は何があっても常に true になります。つまり、SQL ステートメントは次と同等です。

コードは次のとおりですコードをコピーSELECT * FROM 記事から出力ファイル 'e:/whf.txt'#'
SQL ステートメントは、まず select ステートメントを実行してテーブル アーティクル内のすべてのコンテンツを取得し、次に出力ファイル 'e:/whf.txt'#' を実行してコンテンツをエクスポートします。

信じられないなら、やってみてください...

SQLインジェクションの脆弱性を利用して、テーブル名、カラム名、ユーザーパスワードの長さ(LEFT関数)などを推測することができます。もちろん、上記のデモのようにテーブル内のすべてのデータを直接エクスポートできれば、その必要はありません。テーブル名、列名など

http://www.bkjia.com/PHPjc/632941.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632941.html技術記事この記事では、私自身の経験をもとに、ハッカーの友人がデータベースの SQL 脆弱性をどのように利用してデータベースをダウンロードするかを説明します。必要に応じてこの記事を参照してください。 データ内で...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

カナダ、自動車盗難問題急増でハッキングツール「フリッパーゼロ」の禁止を計画 カナダ、自動車盗難問題急増でハッキングツール「フリッパーゼロ」の禁止を計画 Jul 17, 2024 am 03:06 AM

このウェブサイトは2月12日、カナダ政府がハッキングツール「FlipperZero」および類似のデバイスが、窃盗犯が車を盗むために使用できるツールとして分類されているため、販売を禁止する計画であると報じた。 FlipperZero は、RFID、無線、NFC、赤外線、Bluetooth などの複数のプロトコルを通じて、さまざまなハードウェアやデジタル デバイスのテストとデバッグを支援するポータブルなプログラム可能なテスト ツールであり、多くのオタクやハッカーの支持を得ています。製品のリリース以来、ユーザーはソーシャル メディア上で、リプレイ攻撃を使用して車のロックを解除したり、ガレージのドアを開けたり、ドアベルを起動したり、さまざまなデジタル キーを複製したりするなど、FlipperZero の機能を実証してきました。 ▲FlipperZeroがマクラーレンのキーホルダーをコピーして車のロックを解除 カナダ産業大臣フランソ

Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Jun 25, 2024 pm 07:09 PM

目次 Astar Dapp ステーキングの原則 ステーキング収益 潜在的なエアドロップ プロジェクトの解体: AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap ステーキング戦略と運用 「AstarDapp ステーキング」は今年初めに V3 バージョンにアップグレードされ、ステーキング収益に多くの調整が加えられましたルール。現在、最初のステーキング サイクルが終了し、2 番目のステーキング サイクルの「投票」サブサイクルが始まったばかりです。 「追加報酬」特典を獲得するには、この重要な段階を把握する必要があります (6 月 26 日まで続く予定で、残りは 5 日未満です)。 Astarステーキング収入を詳しく説明します。

PHP マイクロフレームワーク: Slim と Phalcon のセキュリティに関する議論 PHP マイクロフレームワーク: Slim と Phalcon のセキュリティに関する議論 Jun 04, 2024 am 09:28 AM

PHP マイクロフレームワークにおける Slim と Phalcon のセキュリティ比較では、Phalcon には CSRF および XSS 保護、フォーム検証などのセキュリティ機能が組み込まれていますが、Slim にはすぐに使用できるセキュリティ機能がなく、手動で実装する必要があります。セキュリティ対策。セキュリティ クリティカルなアプリケーションの場合、Phalcon はより包括的な保護を提供するため、より良い選択肢となります。

Java フレームワークのセキュリティ アーキテクチャ設計は、ビジネス ニーズとどのようにバランスをとる必要がありますか? Java フレームワークのセキュリティ アーキテクチャ設計は、ビジネス ニーズとどのようにバランスをとる必要がありますか? Jun 04, 2024 pm 02:53 PM

Java フレームワーク設計では、セキュリティ ニーズとビジネス ニーズのバランスをとることでセキュリティを実現し、主要なビジネス ニーズを特定し、関連するセキュリティ要件に優先順位を付けます。柔軟なセキュリティ戦略を策定し、脅威に階層的に対応し、定期的に調整します。アーキテクチャの柔軟性を考慮し、ビジネスの進化をサポートし、抽象的なセキュリティ機能を考慮します。効率と可用性を優先し、セキュリティ対策を最適化し、可視性を向上させます。

C++ での機械学習アルゴリズムの実装: セキュリティに関する考慮事項とベスト プラクティス C++ での機械学習アルゴリズムの実装: セキュリティに関する考慮事項とベスト プラクティス Jun 01, 2024 am 09:26 AM

C++ で機械学習アルゴリズムを実装する場合、データ プライバシー、モデルの改ざん、入力検証などのセキュリティを考慮することが重要です。ベスト プラクティスには、安全なライブラリの採用、権限の最小化、サンドボックスの使用、継続的な監視が含まれます。実際のケースでは、Botan ライブラリを使用して CNN モデルを暗号化および復号化し、安全なトレーニングと予測を確保する方法を示します。

SHIBコインにとってより安全なウォレットはどれですか? (初心者の方は必ずお読みください) SHIBコインにとってより安全なウォレットはどれですか? (初心者の方は必ずお読みください) Jun 05, 2024 pm 01:30 PM

SHIBコインは、投資家にとってもはや馴染みのないものではありませんが、市場の発展に伴い、SHIBの現在の市場価値は12位にランクされており、数え切れないほどの投資を集めていることがわかります。 . 投資家が投資に参加します。過去に、市場では頻繁に取引やウォレットのセキュリティに関するインシデントが発生しており、多くの投資家は、現時点でどのウォレットがSHIBコインを保管するのが安全なのか疑問に思っています。市場データの分析によると、比較的安全なウォレットは主に OKXWeb3Wallet、imToken、MetaMask ウォレットです。次に、これらについて編集者が詳しく説明します。 SHIBコインにとってより安全なウォレットはどれですか?現在、SHIBコインはOKXWeに置かれています

Spring Boot フレームワークのセキュリティを強化する方法 Spring Boot フレームワークのセキュリティを強化する方法 Jun 01, 2024 am 09:29 AM

SpringBoot フレームワークのセキュリティを強化する方法 ユーザー データを保護し、攻撃を防ぐには、SpringBoot アプリケーションのセキュリティを強化することが重要です。 SpringBoot のセキュリティを強化するためのいくつかの重要な手順を次に示します。 1. HTTPS を有効にする HTTPS を使用してサーバーとクライアントの間に安全な接続を確立し、情報の盗聴や改ざんを防ぎます。 SpringBoot では、application.properties で次の設定を行うことで HTTPS を有効にできます:server.ssl.key-store=path/to/keystore.jksserver.ssl.k

Lenovo が 5 月にパッチを発行、Phoenix UEFI ファームウェアの脆弱性が明らかに:数百の Intel PC CPU モデルに影響 Lenovo が 5 月にパッチを発行、Phoenix UEFI ファームウェアの脆弱性が明らかに:数百の Intel PC CPU モデルに影響 Jun 22, 2024 am 10:27 AM

6 月 21 日のこのサイトのニュースによると、Phoenix Secure Core UEFI ファームウェアがセキュリティ上の脆弱性にさらされ、数百台の Intel CPU デバイスに影響を及ぼし、Lenovo はこの脆弱性を修正するための新しいファームウェア アップデートをリリースしました。このサイトは、脆弱性追跡番号が「UEFICANHAZBUFFEROVERFLOW」として知られる CVE-2024-0762 であることを報告から知りました。これは、Phoenix UEFI ファームウェアのトラステッド プラットフォーム モジュール (TPM) 構成に存在し、悪用される可能性のあるバッファ オーバーフローの脆弱性です。脆弱なデバイス上で任意のコードを実行します。この脆弱性は、Lenovo ThinkPad X1 Carbon 第 7 世代および X1Yoga 第 4 世代の Eclypsium によって発見されました。

See all articles