


aspnet mvc は @Html.AntiForgeryToken() を使用してクロスサイト攻撃を防止します_html/css_WEB-ITnose
asp.net mvc の Html.AntiForgeryToken() は、クロスサイト リクエスト フォージェリ攻撃を防ぐことができます (XSS は、CSS とも呼ばれます: クロスサイト スクリプト)。XSS は通常、内部の信頼を使用します。ユーザーは悪意のあるスクリプト コードを Web サイトに挿入して攻撃しますが、CSRF は信頼できるユーザーになりすまして Web サイトを攻撃します。
簡単な例を挙げると、例えば、システム全体のお知らせは Web サイトのトップページに表示され、このお知らせはバックグラウンドから送信されます。
という最も単純な書き方をします。
Webサイトの背景(ホーム/インデックスページ) ホームページのお知らせ内容を設定し、HomeControllerのText Actionに送信
@using (Html.BeginForm("Text","Home",FormMethod.Post)) { @:输入信息:<input type="text" name="Notice" id="Notice" /> <input type="submit" value="Submit" /> } HomeController的Text Action[HttpPost] public ActionResult Text() { ViewBag.Notice = Request.Form["Notice"].ToString(); return View(); }
お知らせを完了し、送信して表示
現時点では、クロスサイト攻撃の脆弱性を悪用するために、CSRF は一般にいくつかの条件に依存します
(1) 攻撃者は被害者がいるサイトを知っています
(2) 攻撃者のターゲット サイトが永続的な認証 Cookie を持っている、または被害者が現在のセッション Cookie を持っている
(3) 現時点では、ターゲット サイトは Web サイト上でのユーザーの行動に対する 2 番目の認証を持っていない
次に、リクエスト アドレスが http://localhost:25873/Home/Text であり、条件 2 と 3 も満たしていると仮定して、クロスサイト リクエストのシミュレーションを開始しましょう。
そこで、次の内容を含む新しい AntiForgeryText.html ファイルを作成しました。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title></title> </head> <body> <form name="badform" method="post" action="http://localhost:6060/Home/Text"> <input type="hidden" name="Notice" id="Notice" value="你的网站被我黑了。。" /> <input type="submit" value="黑掉这个网站" /> </form> </body> </html>
この HTML では、隠しフィールド、名前、ID、およびパラメーター名を追加しました。ウェブサイトでも同様に受信できます。
「この Web サイトをハックする」をクリックすると次のように表示されます
これは、ホームページ上のお知らせを変更するために脆弱性を利用しています。これは単純なクロスサイトの例です。攻撃。 。
MVC では、ページで Html.AntiForgeryToken() を使用し、対応するアクションに [ValidateAntiForgeryToken] 機能を追加することで、クロスサイト攻撃を防止します。
上記のコードを
@using (Html.BeginForm("Text","Home",FormMethod.Post)) { @Html.AntiForgeryToken() @:网站公告:<input type="text" name="Notice" id="Notice" /> <input type="submit" value="Submit" /> } [HttpPost] [ValidateAntiForgeryToken] public ActionResult Text() { ViewBag.Notice = Request.Form["Notice"].ToString(); return View(); }
に変更します。このようにして、AntiForgeryText.html の "Hack this website" をクリックし、再度リクエストを行います
これにより、クロスサイト攻撃を防ぐことができます
参考: asp.net mvc の @Html.AntiForgeryToken() により、クロスサイト攻撃が防止されます http://www.ourcodelife.com/thread -49179- 1-1.html

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

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

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

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

ホットトピック









この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する
