検索

WordPressセキュリティ:NONCEを使用してテーマとプラグインコードを保護します

WordPressテーマまたはプラグインコードのセキュリティを保護することが重要であり、悪意のあるユーザーからの攻撃を効果的に防ぐことができます。 WordPressのフォームデータを掃除、脱出、検証する方法、およびWordPressテーマの品質を改善するためにVIPスキャナーを使用する方法の前に説明しました。今日、私たちは、NONCE(1回限りのデジタル)がWordPressのテーマとプラグインを安全に保つのにどのように役立つかを探ります。

キーポイント

  • WordPress Nonce、または「1回限りの使用番号」は、ユーザー要求を確認し、悪意のある試みを防ぐことにより、WordPress Webサイトのセキュリティを強化するために使用される独自のセキュリティトークンです。それらは、クロスサイトリクエストフォーファリー(CSRF)攻撃を防ぐのに特に役立ちます。
  • nonceは、ユーザーセッションごとに一意のトークン、フォームの提出、またはajaxリクエストを生成することで機能します。このトークンは、リクエストを処理するときに確認され、それが一致しない場合、リクエストは拒否されます。これにより、攻撃者がトークンを予測または乱用することが困難になります。
  • WordPressでNonceの作成は、WordPress関数
  • を使用して達成されます。これは、保護される操作を表す単一の文字列パラメーターを受け入れます。検証nonceは、wp_create_nonce()関数を使用して行われます。これは、検証するノンセと関連する操作の2つのパラメーターを受け入れます。 wp_verify_nonce()
  • nonceは、WordPressのAJAX要求に使用でき、CSRF攻撃を防ぐためにセキュリティの追加層を追加できます。 Nonceはユーザー固有でもあり、あるユーザーのために作成されたNonCEが別のユーザーに対して無効であることを確認することにより、追加のセキュリティレイヤーを提供します。
WordPress Nonceとは何ですか?

wordpress nonceは次のように定義されています

…特定の種類の虐待(悪意またはその他)からURLやフォームを保護するのに役立つ「1回限りの使用番号」。
https://www.php.cn/link/c5af1dfde10402285102771ad64b3dac

WordPressでは、Nonceは技術的には数字ではありません(文字と数字のハッシュです)、悪意のあるユーザーがアクションを実行するのを防ぐのに役立ちます。

WordPress nonceの作業は、2つの部分に分かれています

nonce(hash value)を作成し、フォームまたはアクションを通じて送信し、

    nonceを確認し、フォームデータを受け入れるか、アクションを実行します。
  • たとえば、WordPress管理画面の投稿を削除すると、URLに
  • パラメーターが含まれていることに気付くでしょう。
https://www.php.cn/link/18175d262a01ebf04bc03e38e48e3ffc

_wpnonce

投稿を削除するルーチンは、投稿542が削除する前に

のnonce値を持っているかどうかを確認します。 NonCEが存在しないか、期待値と一致しない場合、投稿は削除されません。 これにより、悪意のあるユーザーが多数の投稿を削除する可能性があります。たとえば、ノンセはID 542:に属しているため、以下は機能しません。

https://www.php.cn/link/322d830da1130169fb4ca1c7543799d0 https://www.php.cn/link/dd4143061640d55fb312dd0ce8a76e https://www.php.cn/link/9e0f9113b44003201076a9fade1b72d8

What Are WordPress Nonces?

プラグインにWordPress Nonceを実装する方法を見てみましょう。

WordPressプラグイン

を設定します

独自の設定画面を備えた基本プラグインから始めましょう。設定画面には、WordPressオプションテーブルに送信および保存できるフィールドがあります。

次のコードを新しいファイルに入力してくださいwp-content/plugins/implementing-wordpress-nonces/implementing-wordpress-nonces.php

// ... (插件代码,与原文相同) ...

WordPress Management>

このアイテムをクリックすると、1つのフィールドのみで設定画面に移動されます。 What Are WordPress Nonces?

任意の値を入力し、「保存」をクリックします。すべてが機能する場合は、確認情報と入力した値が表示されます。

What Are WordPress Nonces?

セキュリティの脆弱性を実証します

次のURLをWebブラウザアドレスバーに入力します(ドメイン名をWordPressのインストール場所に置き換えます):What Are WordPress Nonces?

注意何が起こったのですか?値は単にABCとして保存され、URLに直接アクセスしてWordPressにログインします。

の代わりにコードで

)を使用できますが(

を使用してセキュリティの問題をより簡単に実証します)、これは役に立ちません - 悪意のあるユーザーは引き続き自分自身を使用したり、クリックしてクリックすることができますこのリンクを使用すると、この画面にPOSTリクエストを送信すると、オプション値が変更されます。

What Are WordPress Nonces? これは、クロスサイトリクエスト偽造(またはCSRF)と呼ばれます。悪意のあるWebサイト、電子メール、アプリケーションなどにより、ユーザーのWebブラウザーは不要な操作を実行します。

この攻撃が可能にならないように、WordPress Nonceを作成および検証します。 $_POST $_REQUEST非CE $_REQUESTでプラグインを保護します 前述のように、このプロセスは2つのステップに分かれています。最初に、フォームで提出される非CEを作成する必要があります。次に、フォームを送信するときにNonCEを確認する必要があります。

私たちのフォームでノンセフィールドを作成するには、wp_nonce_field()

を使用できます。

ノンセの隠しフォームフィールドを取得または表示します...フォームリクエストのコンテンツが現在のサイトからではなく、現在のサイトから来ていることを確認するために使用されます...

入力ボタンの上に次のコードを追加します

// ... (插件代码,与原文相同) ...

4つのパラメーターを受け入れる - 最初の2つが最も重要です:wp_nonce_field

  • :これにより、実行中の特定の操作が決定され、一意である必要があります。複数の操作が実行される場合があるため、プラグイン名を操作のプレフィックスとして使用することをお勧めします。この場合、私たちは何かを保存しているので、$action implementing_wordpress_nonces_saveを使用します
  • :これは、この関数によって作成された隠されたフィールドの名前を決定します。上記のように、プラグイン名をそのプレフィックスとして使用したので、$name implementing_wordpress_nonces_nonceに名前を付けました。
[設定]画面をリロードする場合は、値を変更して[保存]をクリックすると、値が変更されていることがわかります。これで、提出されたノンセフィールドのチェックを実装して、

wp_verify_nonce( $name, $action )を使用して実装する必要があります。

ノンセが正しいことを確認し、指定された操作と比較して期限切れになっていないことを確認します。この関数は、現在のリクエストで送信されたNONCEを検証するために使用されます。通常、

PHP変数を介してアクセスされます。 $_REQUEST

プラグインの「保存設定」部分を次のコードに置き換えます。

admin_screen()このコードは、次の操作を実行します:

wp_nonce_field( 'implementing_wordpress_nonces_save', 'implementing_wordpress_nonces_nonce' );

最初に、何かを提出したかどうかをチェックします。

    それから、私たちの非CEフィールドが存在するかどうかをチェックし、もしそうなら、私たちが期待するアクションに基づいてノンセの値を検証しようとします。
  • チェックが通過した場合は、オプションを更新します。
  • チェックが失敗した場合、「無効なNonceが指定した」というメッセージで403エラーをスローします。
  • 私たちのノンセが作成され、検証されていることを確認するには、「悪意のある」ダイレクトURLにアクセスするようにもう一度試してみましょう。
https://www.php.cn/link/0e143c3bef0f7759c230664c4dc905f8

>

ノンセが実装されており、検証されている場合、「無効なノンセ仕様」通知が表示されます:

...(残りは元のテキストと同じですが、言語と表現は、元の意図を変えないように詳細に調整されています)....

以上がWordPress noncesとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
WordPressでコンテンツを管理するのはどれくらい簡単ですか?WordPressでコンテンツを管理するのはどれくらい簡単ですか?May 09, 2025 am 12:11 AM

wordpressisuser-friendlyduetoitsIntutiveInterfaceandcms、それはfromdesign.itoffersarichtexteditorを使用することを検出するためにcreationAndialibraryfororganization.its flexivitiesisivedyvysencedancevancevencevencedemourthemoursemasensansandyansemas canimpactperomance

WordPressはビジネス設定でどのように使用されていますか?WordPressはビジネス設定でどのように使用されていますか?May 08, 2025 am 12:04 AM

wordpressisutableforbusinesssettings.1)ituportse-commercewithwoocommerce、productmanagementandpaymentprocessing.2)itservesasacmsforcoporateblogs、entancingseoandengagement.3)customizationibultiblewithwithwithsemesandplugins.3)

WordPressに適していないWebサイトは何ですか?WordPressに適していないWebサイトは何ですか?May 07, 2025 am 12:10 AM

wordpressisnotidealforhigh-trafficwebsites、customandcomplexApplications、セキュリティ感覚化、リアルチメダタプロセシング、および高地識別型インターフェース、forhhigh-trafficsites、usenext.jsorcustomsolutions; forplecluctlications、optfordjangaNgoRub

WordPressでブログを作成できますか?WordPressでブログを作成できますか?May 06, 2025 am 12:03 AM

はい、YouCanbuildAblogWithWordPress.1)BetWeenWordPress.comforbeginnersorwordpress.orgformorecontrol.2)SelectAtheMetopersuerizeUourBlog'slook.3)usepluginStoenHanceFunctionality、likeSeoandsocialmedientegreation.4)

WordPressはCMSプラットフォームとしてどのくらい安全ですか?WordPressはCMSプラットフォームとしてどのくらい安全ですか?May 05, 2025 am 12:01 AM

wordpresscanbesecureifmanagedperly.1)keepthewordpresscoreupdatedtopatchvulnerabilities.2)vetandupdatepluginsandとthemes from-reputabless.3)emforcestrongwordsandusetwo-factoruthentication.4)

WordPress CMSでどのようなWebサイトを構築できますか?WordPress CMSでどのようなWebサイトを構築できますか?May 04, 2025 am 12:06 AM

wordpresscanbuildvarioustypesofwebsites:1)personalblogs、easytosetupwithemesandplugins.2)businesswebuilders.3)e-ocommerceforseamlessIntegration.4)コミュニティサイトを使用しているe-ocommerceforseamlessintegration.4)

WordPressをCMSとして使用することの長所と短所は何ですか?WordPressをCMSとして使用することの長所と短所は何ですか?May 03, 2025 am 12:09 AM

wordpressisapowerfulcmswithsifisifistadvantageandChallenges.1)それは、suser-friendlyandcustomizable、yeal forbeginners.2)その増加性をカンロードすることを抱えています

WordPressは、他の人気のあるCMSプラットフォームと比較してどうですか?WordPressは、他の人気のあるCMSプラットフォームと比較してどうですか?May 02, 2025 am 12:18 AM

wordpressexcelsineaseofuseandaptaptability、makeitideal forbeginnersandsmalltomedium-sizedinesses.1)Easeofuse:wordpressisuser-frendly.2)セキュリティ:DrupalleadSwithSecurityFeatures.3)パフォーマンス:GhostoffersexcellencedueTonode.4)scal

See all articles

ホット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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

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

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

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

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

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

SublimeText3 Mac版

SublimeText3 Mac版

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