問題タブ [validate-request]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
98 参照

javascript - 内幅に応じてスクリプトを表示-「潜在的に危険なrequest.form」なし

私が欲しいもの:

ウェブサイトにアフィリエイト広告を表示したいという状況があります。これらは基本的にjavascriptであり、その中にコンテンツが含まれています。私のサイトはレスポンシブデザインなので、jQueryのinnerwidthプロパティに応じて異なる広告をロードしたいと思います。要約すると、innerwidthプロパティに応じて異なるJavaScriptをロードしたいと思います。

私がしたこと:

隠しフィールドに2つの異なるJavaScriptをロードし、内側の幅に応じて、div.html()コマンドでどちらかを表示します。ただし、ロードされたコンテンツには危険な文字が含まれているため、ユーザーが投稿を送信すると(ASP.NETによるXSSの防御)、「潜在的に危険なrequest.form」エラーが発生します。これは理にかなっています。

すべてのページで「ValidateRequest=false」と言うことができますが、これは多くのセキュリティ問題を引き起こす恐ろしい解決策です。

私の考え...

サーバー側から広告を読み込むのが最善の方法ですが、ここではブラウザの幅がわかりません。私が読んだことから、page_loadでinnerwidth値を取得するのは難しい/不可能のようです。

しかし、私は潜在的に危険な要求をすることなく私の広告をロードしたいと思います。

これを解決する方法について何かアイデアはありますか?

0 投票する
2 に答える
1881 参照

asp.net - asp.net でクエリ文字列を検証する必要があります

上記のコードには、異なる ItemNum 間を移動する 2 つの画像ボタンがあります。クエリ文字列が 1 のときに imgbtnPrev ボタンを削除することで、ユーザーが前のボタンをクリックするのを止めようとしています。

エラー メッセージには、位置 0 に行がありませんというメッセージが表示されます。

^ 強調表示されている場所はここにあります。

0 投票する
1 に答える
1767 参照

antixsslibrary - AntiXss と ValidateRequest ="true" が組み合わされて機能しないのはなぜですか?

アプリケーションでクロスサイドスクリプティングを回避しようとしていますが、スクリプトを含むデータをデータベースに保存する必要がありますが、同じデータを表示するときは、スクリプトとしてではなくテキストとして表示する必要があります。

ステップ1:ウェブサイトにテキストボックスがあり、以下のコードを介して挿入しようとしています

test data alert('悪意のあるコード');

ステップ 2:テキストの正確な内容をデータベースに保存しています (validateRequest が false に設定されていることに注意してください)。

ステップ 3:次に、スクリプトが実行されるべきではない Web ページのコンテンツを表示しています。

注: AntiXss と Sanitizer を使用して制限しましたが、Sanitizer を使用している場合、スクリプトは Sanitizer によって無視されます。スクリプトをテキストとして表示する解決策を教えてください (スクリプトの実行も避ける必要があります) .)

0 投票する
1 に答える
9294 参照

php - HTML選択値0はPHP検証では常に空です

選択した値を投稿して、変数が空かどうかを確認しようとしました。

html:

結果のhtml:

ポストチェック:

値 0 は常に空であり、スクリプトはサイコロを発射し、他のすべての値は機能しています。値 0 は "" のようなものですか?

また試しました:

これも機能していますが、同じ問題です。もう 1 つの質問ですが、選択したものが ="" に割り当てられるのはなぜですか? この値が選択されているのはhtmlのタグだけだと思いましたか?

検証入力:

0 投票する
1 に答える
2152 参照

webforms - validateRequest=true および requestValidationMode="4.0" は html を通過させます

IIS7 および .NET 4.5.1 に Web フォーム Web サイトがあり、Microsoft の要求検証を使用して http 要求を検証したいと考えています。validateRequest と requestValidationMode の web.config のデフォルト値は、それぞれ「true」と「4.0」であると想定されており、それが必要なはずです(念のため指定してみました)。

何らかの理由で、フォームに html タグ (< script > と < a > を試行) を入力して送信すると、予想される潜在的に危険な要求エラーが発生しますが、タグはデータベースに保存されます。どうして通じたの?テキストボックスのテキスト値をそのまま取得してDBに送信するだけですが、エラーが発生するのを防ぐことが期待されます。

私が設定しようとしたとき:

エラーは同じでしたが、今回はタグがデータベースに登録されませんでした。これは私が望んでいることです。

私の場合、安全性の低い検証モード「2.0」が実際にリクエストの通過を妨げる唯一のものである理由を理解したいと思いますが、これはあまり意味がないようです。何か足りないものがあるはずです。他の情報を提供する必要がある場合はお知らせください。

0 投票する
0 に答える
375 参照

asp.net - ウムラウトを使用した潜在的に危険な Request.Form に関するアドバイス

ValidateRequest会社のセキュリティ ポリシーでは、フォーム Web サイトの属性をオフにすることはできません。

潜在的に危険なRequest.Form入力のサイトからエラー レポートを取得しています。

すべてのエラーから、住所フィールドに外国語の文字 (ドイツ語、ウムラウト付きのノルウェー文字など) が含まれていることが危険であることがわかります。

これらの文字がどのように html エンコードされるのか、少し混乱しています。なぜなら、危険な文字の組み合わせは&#229;どちらがö文字であるかに似ているからです。

潜在的に危険な Request.Form 値がクライアントから検出されました (ctl00$ContentPlaceHolder1$tbxDeliveryAddress="...last As B & #229;smosjyen 4 Mo...")

明らかにこれは悪意のあるものではなく、顧客がウムラウトを含むアドレスを入力できるようにする必要があります。顧客が無意識のうちにコピー アンド ペーストでこれを行っているのではないかと考えたので、2 つのラベルと 1 つのテキスト ボックスを使用して実験をセットアップしました。レンダリングされたページでhtmlソースをチェックしましたが、これは動作していました)次に、各ラベルをテキストボックスにコピーして貼り付け、フォームを送信しましたが、どちらもエラーになりませんでした。

そのため、この入力が顧客からどのようにもたらされているかについて混乱しています。&#229;住所を入力するときに、テキスト ボックスに物理的に入力するとは信じがたいです。外国のキーボードがどのように機能するのかよくわからないので、誰かこれに光を当てることができますか?

ValidateRequest属性を明らかにせずに、この悪意のないテキストが .net のこの機能によってキャッチされるのを止めるにはどうすればよいですか? 無邪気に配送先住所を入力しようとする顧客にとっては、本当に苦痛です。

編集

エラー メッセージで、テキストが実際には、textarea html コントロールを生成する複数行のテキスト ボックス フィールドから来ていることに気付きました。この特定のコントロールが html エンコードされたテキストでコンテンツをレンダリングしているのだろうか? これは、エンド ユーザーが実際にこのフィールドを直接編集できないためです。このフィールドは自動的に入力され、個々の行の住所を編集するためのモーダル ポップアップが表示されます。複数行のテキストボックスは、その内容を自動的に html エンコードしますか?

0 投票する
0 に答える
486 参照

c# - ValidatePageをオフにせずに「潜在的に危険なRequest.Form値がクライアントから検出されました」エラーを処理する方法

ページに wysiwyg エディターがあり、そのコンテンツに「<」文字が含まれています。validateRequestをオフにせずにこのエラーを処理する方法はありますか

カスタム フレームワークを使用していて、ページがその中の Web コントロール (.ascx) であるため、そのページだけの検証をオフにすることはできません。私はサイト全体でそれをしなければなりません。単純に、wysiwyg エディターを使用したページが 1 つあるという理由だけで、それをオフにしたくありません。

検証をオフにせずに機能させる方法はありますか?

0 投票する
2 に答える
207 参照

java - Java でのユーザー入力の検証

こんにちは、私が取り組んでいる uni プロジェクトで問題が発生しています。BookID本を貸与しようとしたときに入力された が、' ' という名前の配列に存在する場合にのみ有効になるように、入力を検証しようとしていBookListます。現時点では、文字や負の数ではなく、整数が入力されていることを確認するために検証するように動作しています。

私は際限なく試しましたが、完全に立ち往生しています?? ヒントやヘルプをいただければ幸いです。ありがとう