問題タブ [xss]

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 投票する
8 に答える
8831 参照

sql - SQL インジェクションやその他の悪意のある Web リクエストの捕捉

悪意のあるリクエスト (明らかな SQL インジェクションの取得や投稿など) を検出し、リクエスタの IP アドレスを即座に禁止する/ブラックリストに追加するツールを探しています。理想的な世界では、コードがそのようなリクエストを処理し、それに応じて処理できる必要があることは承知していますが、サイトがこの種の攻撃から安全な場合でも、そのようなツールには多くの価値があります。帯域幅の節約、分析の肥大化の防止など。

LAMP/.NET理想的には、テクノロジ スタックよりも高いレベルにあるクロスプラットフォーム ( ) ソリューションを探しています。おそらくWebサーバーまたはハードウェアレベルで。ただし、これが存在するかどうかはわかりません。

いずれにせよ、実装とアプローチに関して自分の選択肢が何であるかを確認できるように、コミュニティのフィードバックを聞きたいと思います。

0 投票する
7 に答える
43020 参照

python - Python を使用したユーザー入力のサニタイズ

Python ベースの Web アプリケーションのユーザー入力をサニタイズする最良の方法は何ですか? XSSまたは SQL インジェクション攻撃を防ぐために、HTML 文字とその他の必要な文字の組み合わせを削除する単一の機能はありますか?

0 投票する
9 に答える
83295 参照

java - XSS (クロスサイトスクリプティング) 攻撃 (Java で) をキャッチするための最良の正規表現?

Jeff は実際にこれについてSanitize HTMLに投稿しました。しかし、彼の例は C# であり、実際には Java バージョンにもっと興味があります。Javaのより良いバージョンを持っている人はいますか? 彼の例は、C# から Java に直接変換するだけで十分ですか?

[更新] 私がこの質問をしたとき、SO は今日ほど人気が​​なかったので、この質問に報奨金を出しました (*)。セキュリティに関しては、調べれば調べるほどいい!

(*) 実はまだクローズドベータだったと思います

0 投票する
4 に答える
2083 参照

javascript - Web サイト間の通信 (Javascript または ?)

これが私の問題です。2 つの Web サイト間で通信したいのですが、クリーンな解決策を探しています。現在のソリューションでは Javascript を使用していますが、(理解できる) クロスサイト スクリプティングの制限のため、厄介な回避策があります。

現在、Web サイト Aは、 jqModalというjQueryプラグインを使用して、Web サイト Bを含むモーダル ウィンドウを開きます。Web サイト Bは何らかの作業を行い、いくつかの結果をWeb サイト Aに返します。その情報を返すには、クロスサイト スクリプティングの制限を回避する必要があります。Webサイト Bは、 Web サイト Aのページを参照する iframe を作成し、返される情報を含む *fragment identifiers を含みます。iframe はWeb サイト Aによってポーリングされ、検出されます。返された情報. これは一般的な手法ですが、ハッキーです.

CrossSiteなどのバリエーションがあり、おそらくWeb サイト BからWeb サイト Aへの HTTP POST を使用できますが、ページの更新を避けようとしています。

誰かに代替手段はありますか?

編集: Web サイト Bで状態を保存する必要がないようにしたいと思います。

0 投票する
10 に答える
181198 参照

java - tomcat / Java webappsでHttpOnly Cookieをどのように構成しますか?

Cookie の保護に関するJeff のブログ投稿: HttpOnlyを読んだ後。Web アプリケーションに HttpOnly Cookie を実装したいと考えています。

セッションに http のみの Cookie を使用するように tomcat に指示するにはどうすればよいですか?

0 投票する
4 に答える
118640 参照

asp.net - ASP.NET で httpOnlyCookies をどのように正確に構成しますか?

この CodingHorror の記事「Cookie の保護: HttpOnly」に触発されました。

このプロパティをどのように設定しますか? Web構成のどこかに?

0 投票する
14 に答える
18924 参照

xss - ユーザー入力をサニタイズするのに最適な時期はいつですか?

ユーザーは信頼できません。信頼できないユーザーの入力は決して信用しないでください。わかりました。ただし、入力をサニタイズするのに最適な時期はいつかと思います。たとえば、ユーザー入力をやみくもに保存し、アクセス/使用されるたびにサニタイズしますか?それとも、入力をすぐにサニタイズしてから、この「クリーンな」バージョンを保存しますか? これらに加えて、私が考えていない他のアプローチもいくつかあるかもしれません。私は最初の方法にもっと傾いています。なぜなら、ユーザー入力から得られたデータにはまだ慎重にアプローチする必要があり、「クリーンアップされた」データが知らないうちに、または偶然に危険である可能性があるからです。いずれにせよ、人々はどの方法が最善だと考えていますか? また、その理由は何ですか?

0 投票する
11 に答える
129269 参照

php - PHPでHttpOnlyCookieを使用するように設定するにはどうすればよいですか

PHP apps自分のCookieをとして設定するにはどうすればよいHttpOnly cookiesですか?

0 投票する
5 に答える
47692 参照

javascript - 制限された URI へのアクセス拒否コード: 1012

FireFox 3 でのこの Ajax クロス サイト スクリプティングの問題をどのように回避しますか?

0 投票する
5 に答える
3592 参照

php - ベストプラクティス:正当なクロスサイトスクリプティング

クロスサイトスクリプティングは一般的にネガティブと見なされていますが、私はそれが必要ないくつかの状況に遭遇しました。

私は最近、非常に限定的なコンテンツ管理システムの範囲内で作業していました。ページ内にデータベースコードを含める必要がありましたが、ホスティングサーバーには使用可能なものがありませんでした。私は自分のサーバーにいくつかの必要最低限​​のスクリプトを設定しました。当初は、AJAXを使用してスクリプトのコンテンツをCMSのテンプレートに直接インポートできると考えていました(したがって、動的画像、メニュー項目、CSSなどを保持します)。私は間違っていた。

オブジェクトの制限によりXMLHttpRequest、別のドメインからコンテンツを取得することはできません。だから私はiFrameを考えました-私はフレームのファンではありませんが、コンテンツの幅と高さに一致するフレームを作成して、ネイティブに見えるようにできると思いました。繰り返しになりますが、私はクロスサイトスクリプティングの「保護」によってブロックされました。確かにリモートファイルをiFrameにロードすることはできましたが、JavaScriptを実行して、ホストページまたはロードされたページ内でそのサイズを変更することはできませんでした。

この特定のシナリオでは、サブドメインをサーバーにポイントできませんでした。 また、サーバーからコンテンツをプロキシできるスクリプトをCMSサーバー上に作成できなかったため、最後に考えたのはリモートJavaScriptを使用することでした。

リモートJavaScriptが機能します。ユーザーがJavaScriptを無効にすると壊れますが、これは欠点です。しかし、それは機能します。リモートJavaScriptを使用する際に抱えていた「問題」は、document.write()コンテンツを出力するためにJS関数を使用する必要があることでした。JS以外の出力は、スクリプトエラーの原因になります。document.write()すべての行に使用することに加えて、コンテンツがエスケープされていることを確認する必要があります。そうしないと、スクリプトエラーが増えることになります。

私の解決策は次のとおりです。

私のスクリプトはGETパラメーター( "page")を受け取り、ファイル()を探し、{$page}.phpその内容を変数に読み込みました。ただし、含まれているスクリプトを実際に実行して(データベースの相互作用など)、すべての改行文字(\n)の最終コンテンツを削除してから、必要なすべての文字をエスケープするには、厄介なバッファリング手法を使用する必要がありました。最終結果は、元のスクリプト(JavaScriptを出力する)がサーバー上の「標準」のように見えるスクリプトにアクセスし、CMSテンプレート内に表示するためにそれらの標準出力をJavaScriptに変換することです。

この解決策は機能しますが、同じことを達成するためのより良い方法があるようです。完全に異なるドメインのコンテンツを含めることを目的として、クロスサイトスクリプティングを機能させるための最良の方法は何ですか?