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は次のように定義されています
…特定の種類の虐待(悪意またはその他)からURLやフォームを保護するのに役立つ「1回限りの使用番号」。
https://www.php.cn/link/c5af1dfde10402285102771ad64b3dac WordPressでは、Nonceは技術的には数字ではありません(文字と数字のハッシュです)、悪意のあるユーザーがアクションを実行するのを防ぐのに役立ちます。
WordPress nonceの作業は、2つの部分に分かれています
nonce(hash value)を作成し、フォームまたはアクションを通じて送信し、
- nonceを確認し、フォームデータを受け入れるか、アクションを実行します。
- たとえば、WordPress管理画面の投稿を削除すると、URLに
- パラメーターが含まれていることに気付くでしょう。
_wpnonce
のnonce値を持っているかどうかを確認します。 NonCEが存在しないか、期待値と一致しない場合、投稿は削除されません。 これにより、悪意のあるユーザーが多数の投稿を削除する可能性があります。たとえば、ノンセはID 542:に属しているため、以下は機能しません。
https://www.php.cn/link/322d830da1130169fb4ca1c7543799d0 https://www.php.cn/link/dd4143061640d55fb312dd0ce8a76e https://www.php.cn/link/9e0f9113b44003201076a9fade1b72d8
プラグインにWordPress Nonceを実装する方法を見てみましょう。
WordPressプラグイン
を設定します独自の設定画面を備えた基本プラグインから始めましょう。設定画面には、WordPressオプションテーブルに送信および保存できるフィールドがあります。
次のコードを新しいファイルに入力してくださいwp-content/plugins/implementing-wordpress-nonces/implementing-wordpress-nonces.php
:
// ... (插件代码,与原文相同) ...
WordPress Management>
このアイテムをクリックすると、1つのフィールドのみで設定画面に移動されます。
任意の値を入力し、「保存」をクリックします。すべてが機能する場合は、確認情報と入力した値が表示されます。
セキュリティの脆弱性を実証します
次のURLをWebブラウザアドレスバーに入力します(ドメイン名をWordPressのインストール場所に置き換えます):
https://www.php.cn/link/0e143c3bef0f7759c230664c4dc905f8
注意何が起こったのですか?値は単にABCとして保存され、URLに直接アクセスしてWordPressにログインします。 の代わりにコードで
)を使用できますが(
を使用してセキュリティの問題をより簡単に実証します)、これは役に立ちません - 悪意のあるユーザーは引き続き自分自身を使用したり、クリックしてクリックすることができますこのリンクを使用すると、この画面にPOSTリクエストを送信すると、オプション値が変更されます。
これは、クロスサイトリクエスト偽造(または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にアクセスするようにもう一度試してみましょう。
。
>ノンセが実装されており、検証されている場合、「無効なノンセ仕様」通知が表示されます:
...(残りは元のテキストと同じですが、言語と表現は、元の意図を変えないように詳細に調整されています)....
以上がWordPress noncesとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

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

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

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

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

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

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

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


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

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

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