問題タブ [esapi]
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.
logging - ログの ESAPI: ログ出力をエンコードする必要がありますか?
ロギングで一種のジレンマに陥っています。ESAPI.properties
ログのオプションを次のように設定しました。
私のアプリケーションで を呼び出す
ESAPI.getLogger(MyClass.class).info(Logger.USABILITY, true, message)
と、エンコードされた文字 (<、>、&、'、" などのいずれかがある場合) を含むメッセージが出力されます。
問題は、ログに出力するメッセージにこれらの文字が含まれており、上記の log.info 呼び出しによって、エンコードされたすべての文字でログがどのように表示されるかがおかしくなることです。
質問: 設定した場合LogEncodingRequired=false
(メッセージをそのまま出力する場合)、ログ ファイル (Web ブラウザーで表示可能) が XSS に対して脆弱になる可能性はありますか?
java - HDIV と ESAPI の違い
Spring MVC を使用して Web アプリケーションを開発する予定で、トップ 10 の OWASP 問題を解決するために使用するのに最適なライブラリを見つけようとしています。私は 2 つの HDIV と ESAPI を見に来ました。どなたか、それらの違いを理解するのを手伝ってください。
ご協力ありがとうございました。
jsp - esapi encodeForJavaScript 改行制限?
HTML と Javascript にレンダリングされるサニタイズ データを処理するために、Spring JSP プロジェクトに esapi を導入しました。使用する 1 つのフィールドはサードパーティの Web サービスによって設定され、結果を Javascript 変数に出力します。
問題は、WebService からの結果の末尾に改行文字が追加される場合があることです。encodeForJavascript は改行を処理する必要があると考えていましたが、代わりに上記のコードは次のようにレンダリングされます。
esapi は設計どおりに機能していますか? この問題に対処するための代替手段はありますか?
ありがとう。
javascript - ESAPI を使用して JavaScript DOM XSS を解決するには?
HP fortify Audit Workbench 3.80 を使用して、アプリケーションの脆弱性を評価しています。Fortify は、次の ExtJs JavaScript コードを重大な (「最悪の」) DOM XSS 脆弱性としてマークします。
response
AJAX リクエストから返されるレスポンスです。
Fortify 言います:
メソッド「processResponse」は、検証されていないデータを 100 行目で Web ブラウザーに送信します。これにより、ブラウザーが悪意のあるコードを実行する可能性があります。
問題とその理由を理解しています。私が知らないのは、ESAPIで入力をサニタイズする方法です。Java コードの問題には ESAPI を使用していますが、JavaScript でこの特定の問題を解決できるかどうかはわかりません。
この JavaScript ESAPI ライブラリ ESAPI4JS を見つけましたが、非常に高度なセキュリティ環境で作業しており、このライブラリにはまったくアクセスできません。
ESAPI を使用して応答をサニタイズするにはどうすればよいですか?
編集
ユーザー リクエストごとに完全な ajax リクエスト コードを追加しました。
java - javascriptでeaspiによって正規化されたデータを使用する方法
veracode で提案されているように、Esapi を使用してデータを正規化する方法。
コンソールに表示されるデータは
しかし、それはhtmlで次のようにレンダリングされます
示されているように、私の JavaScript はデータの理解に失敗し、失敗します。この問題を解決するにはどうすればよいですか。
java - 検証のための OWASP ESAPI パフォーマンスの問題
ESAPI 2.1.0 jar を使用して URL とクエリ文字列 (例: http://www.example.com/?keyword=<script>alert("hacking")</script>
request) を検証する Web アプリケーションがあります。doFilter メソッドで同じことを実現するために、基本フィルターを実装する新しいフィルター クラスを実装しました。
同じものに重大なパフォーマンスの問題が発生しています。以下の使用コード
例 1:
例 2: (以下も試してみました) main 関数を使用した簡単なプログラムを作成しました
上記のロジックを使用した場合のパフォーマンスへの影響を理解していただけますか? (例 1 と例 2) また、UNSAFE URL のパフォーマンスが大幅に低下することも確認しました。
java - SafeString の正規表現
組み込みの esapi バリデーターを使用しています。次のように定義されています。
私は正規表現にあまり詳しくありません。いくつか読んだ後、この式が英数字とスペースに一致していることを理解しました。
この式を拡張して、*、-()&+、および / を含めたいと思います。私は次のことを試みましたが、うまくいかないようです