問題タブ [antisamy]

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 に答える
1605 参照

java - TinyMce スタイル属性の AntiSamy

tinymce エディターから取得したテキストにアンチサミーを使用しています。

owaspantisam の「antisamy-tinymce-1.4.4.xml」ファイルを使用しています。(ポリシー ファイルとして)。

私の問題は、tinymce エディターから取得した文字列のすべてのスタイル タグ属性を破棄することです。例: テキストの一部が赤色で、他の部分に下線が引かれている場合、html をアンチサミーでクリーニングした後に取得される文字列はすべて同じ色になり、下線のスタイル属性のみが保存されます。他のスタイル属性を保存するにはどうすればよいですか?? スタイル属性を無視しないようにxmlを変更するのは面倒ですか?

前もって感謝します。

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

java - antiSamy をデプロイした後の ParserException エラー

antiSamiColdFusion プロジェクトで使用しています。次のように onApplicationStart() を介して antiSami をロードしています。

ダンプすると、antiSami オブジェクトが表示されますapplication.antiSami。ただし、次の行を追加すると:

local.result = application.antiSami.scan("some text", application.antiSamiPolicyPath);

この一般的なブラウザ 500 メッセージが表示されます。

Server Error, HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.

内部では、CFBuilder で次のエラーを見つけました。

"Error","web-4","06/14/11","15:27:04","80BBF6B60584F6D148A7DC2A12007C03","org/apache/batik/css/parser/ParseException The specific sequence of files included or processed is: C:\ColdFusion9\wwwroot\gamers\index.cfm, line: 25 "

このエラーの原因は何ですか?

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

java - Google コードから Java プロジェクトをコンパイルする手順

プロジェクトでユーザー入力をサニタイズするために、AntiSamy ( http://code.google.com/p/owaspantisamy/ )というツールを使用しています。私はJavaを知りません。オブジェクトを作成し、そのメソッドを呼び出すだけで機能します。

最近、プロジェクトは Google コードで更新されましたが、ダウンロード パッケージ自体は更新されませんでした。更新されたコードをダウンロードして独自の JAR ファイルを作成し、プロジェクト内の既存のファイルを置き換えて、更新を利用する方法についての明確な指示を探しています。

Google コードのコード ブランチを見ると、フォルダーなどの項目が多く、どの部分が必要なのか、どのようなディレクトリ構成が必要なのかわかりません。

JARファイルに何を入れるべきか/これを行う方法を知っている人はいますか? 私は経験豊富なコーダーではないので、超技術的なことは何もお願いしません。

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

regex - YouTubeのURL-正規表現

antisamyポリシーファイルに次の設定があります:

古いYouTubeオブジェクト:

AntiSamy構成:

現在、iframeでの私の設定:

新しいYouTubeiframe:

iframeのコードは次のようになります。

次のような新旧のリンクを受け入れるように、正規表現をどのように変更しますか。

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

java - antisamy.jar/xml を使用すると、テキスト内のスクリプト/タグが削除される

XSS を防ぐために antisamy.xml と antisamy.jar を使用しています。そのため、テキスト ボックスにスクリプト タグを入力すると、それが切り捨てられ、タグ以外の他のテキストがデータベースに保存されます。

スクリプト/タグもデータベースに保存したいのですが、スクリプト/タグを適用しません。

たとえば、次のように入力します。jsp ページのテキスト ボックスに すべてをデータベースに保存したいのですが、UI でアラートを受け取るべきではありません。

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

classnotfoundexception - JBoss AS 7: xml-apis.jar 使用時のエラー

プロジェクトでアンチサミー jar を使用しています。クラス org.w3c.dom.Element は依存関係であり、xml-apis jar の下で見つかりました。

しかし、アプリを使用すると次のエラーが発生します: org.w3c.dom.Element from [Module "deployment.xxx.ear.antisamy-1.4.4.jar:main" from Service Module Loader]

クラスローダ地獄があると思いますが、必要なモジュールが見つかりません。

情報: 私のアプリは EAR で配布されており、anti-samy と xml-apis は私の EAR のルート ディレクトリにあります。私が使用するクラスは EJB モジュールにあり、MANIFEST ファイルにはこのクラスがあります。

【解決済み】

私の悪い。EAR のルートに jar を追加しました。したがって、jar を EAR の /lib ディレクトリに移動すると、すべて正常に動作します。

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

xml - Antisamy ポリシー xml をカスタマイズして、より多くの html および grails タグを許可する

私は grails でサニタイザー プラグインを使用しており、内部的にアンチサミー ポリシー xml を使用してサニタイズ ルールを UI 入力に適用しています。私が選択したポリシー xml は、javascript タグとコード、および < html > と < body > と < head > タグをフィルタリングする antisamy-myspace.xml です。

問題は、いくつかの grails タグ、特に次の 2 も拒否することです。

これらの 2 つのタグは検証に合格しません。バリデーターを通過させるか許可する必要があります。また、< html > および < body > および < head > タグを許可したいと考えています。

これらのタグを許可するようにアンチサミー ポリシー ファイルを変更するにはどうすればよいですか?\ よろしくお願いします

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

java - DOMParsingによるどのエンコーディング(Antisamy)

xssの脆弱性を防ぐために、新しいプロジェクトにantisamyを使用しています。このアプリケーションでは、ユーザーは単純な(ansiエンコードされた)Excelファイルでコンテンツをアップロードできます。一部のhtmlを挿入することは可能ですが、javascriptなどを挿入することはできません。

antisamyを使用して入力をスキャンすると、次のエラーが発生します。タグに処理できない属性が含まれていました。href属性の値は「https&#5 8;&#4 7;&#4 7; bla&#4 6; bla&#4 6; com&#4 7; bla&#47;...」でした。この値は、セキュリティ上の理由から受け入れることができませんでした。入力の処理を続行するために、タグをフィルタリングすることを選択しました。

あなたがそれを見ることができるように、私はエンティティにいくつかのスペースを追加しました。

(ただし、 https://bla.bla.com/bla/のようになります...)

コードを介してデバッグすると、「汚染されたHtml入力」とそのhref属性が正しいように見えます(したがって、Excelファイルのエンコードに問題はありません)。

antisamy-policyファイルは次のようになります。

また、正規表現パターンをテストしましたが、リンクは有効だと思いました。もちろん、htmlエンティティによってエンコードされている場合はそうではありません。

だから問題は何ですか?

よろしくお願いします


AntiSamyコードを少しデバッグしたところ、問題が発生しましたが、問題を解決できません。htmlentitiesは、検証後にantisamyによって追加されました(HTMLページに印刷する場合)。しかし、私の入力は、AntiSamyライブラリのorg.cyberneko.html.parsers.DOMFragmentParserによって、次のステートメントで解析されます。parser.parse(new InputSource(new StringReader(html))、dom); 私のタグでは、href属性に次のようなものが含まれています:https://bla.bla.com/bla?frame = Frameset [undefinable character] lang = en insted of https://bla.bla.com/bla?frame = Frameset&lang = en

したがって、アンパサンドがアンパサンドではなくなるというのは、エンコーディングの問題のようです。どのエンコーディングを使用すべきかをどのように見つけることができますか?

編集:キャラクターはE28CA9->⟨

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

json - HTML コントロールとリクエスト パラメータの XSS の問題

アプリケーションで XSS の問題を修正する必要があります。今、私は JSON と XSS を初めて使用します。攻撃には 2 つの方法があると思います。1 つ目は、HTML 入力コントロール (テキスト ボックス/エリアなど) を使用する方法と、URL に表示される要求パラメーター (GET) を使用する方法です。ここで何か不足している場合は提案してください。

AntiSamy (https://www.owasp.org/index.php/Category:OWASP_AntiSamy_Project) を使おうと思っています。HTMLコントロールの値を含むカスタムタグを作成することを考えています。

<input type="text" NAME="name" value="<mytag:xssclean><c:out value= escapeXml="false"/></mytag:xssclean>

このタグ クラスは実際にはアンチサミーを使用して HTML コンテンツをスキャンします。これらのパラメータをコントローラ クラスに送信し、最終的にデータベースに送信する前に、テキスト ボックス/領域に入力された悪意のある JavaScript コンテンツをエンコードしますか? それとも、コントローラ クラスからのコンテンツのみをエンコードして、jsp でレンダリングするのでしょうか?

これは正しいアプローチですか?java 側 (antisamy を使用した直接検証によるコントローラー クラス) と jsp (新しいタグを使用) で検証する必要があるのはいつですか?

さらに、HTML コントロールを備えたダイレクト フォーム フィールドを持たない jsp が多数ありますが、それらの構造は動的に作成され、jason 文字列が jsp に与えられます。jsp は単純に次のようになります。ここで、「値」には、html (html フィールドを含む) にレンダリングされる最終的な jason が含まれます。jason 文字列にアンチサミーを使用する XSS ソリューションを適用する必要がありますか、それとも jason データは XSS 攻撃からすでに安全であり、jason のテキストとして既に存在するようなものですか? json の場合、この問題はどこで解決すればよいですか?

0 投票する
3 に答える
809 参照

java - アンチサミーはSQLインジェクションを防ぎますか

XSS 攻撃の構成と防止を可能にする antisamy プロジェクトに出会う前に、私は独自のフィルターを作成しようとしていました。しかし、SQLインジェクション攻撃を防ぐために同じものを使用できるかどうか疑問に思っていましたか?

SQLインジェクション攻撃を防ぐためにアンチサミーを実装した人は誰でも、どうすれば前進できるか教えてください。