問題タブ [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.
java - データベースからの ESAPI 検証プロパティ
デフォルトの validation.properties ファイルを使用する代わりに、ESAPI にデータベース テーブルから検証プロパティを読み取らせる方法はありますか?
spring - AccessReferenceMap の問題
OWASP の AccessReferenceMap を使用して、URL の ID を保護しています。問題は、難読化する ID のリストが特定の顧客に関連している場合です。これが私の構成です:
エンティティ アクセス マップ:
アクセスマップ:
ハイパーリンク マッピング:
だから、私が達成したいこと: trackAccessMap には、セット全体ではなく、顧客の関連 ID のみを入力する必要があります。顧客のログイン (および customerId セッション属性の設定) 後にこれらすべての Bean を初期化する方法は?
編集 1 : 追加コード:
トラックコントローラー:
centerColTracks.jsp
hyperlinkMapping.getTrackId(item) は、ログインした顧客にのみ関連する trackId (AccessReferenceMap から取得) のみを返す必要があります。つまり、hyperlinkMapping はログイン直後にインスタンス化する必要があります。
これを行う方法は 2 つあります。1. 返された後のアドバイスを含む AOP、または 2. ログイン後に HyperlinkMapping をインスタンス化できる SimpleUrlAuthenticationSuccessHandler を使用します。または、現在の実装で使用できますが、何かを忘れただけですか?
java - ESAPI を使用した DOM ベースの XSS の防止
OWASP によると、DOM セーフで HTML を動的に更新するには、次のことをお勧めします。
- HTMLエンコーディング、そして
- 次の例に示すように、すべての信頼できない入力をエンコードする JavaScript:
element.innerHTML = “<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>”;
サーブレットがユーザー入力 (AJAX 要求として受信) を受信し、データを処理し、要素の値を設定して (を使用してdocument.getElementById("elementID").innerHTML = data;
) DOM を動的に変更するために使用されるテキスト応答を送信する Web アプリケーションがあります。
DOM ベースの XSS を防ぐには、ESAPI エンコーダーを使用して HTML と JavaScript をエスケープする必要があります。
;
または、エンコードされていない文字列をストリームに書き込んでも安全ですか
xss - テキスト フィールドとテキスト領域のない Web ページは XSS の影響を受けませんか?
Web ページがユーザー入力用のドロップダウン、ラジオ ボタン、チェック ボックスなどで構成されている場合、テキスト フィールドとテキスト領域を避けて、信頼できないデータ (ユーザーが入力した悪意のある JavaScript) を回避します。そのような Web ページは XSS の影響を受けませんか? そうでない場合は、ESAPI を使用してそのようなアプリケーションを保護する方法を教えてください。