問題タブ [sanitization]
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.
ruby-on-rails - Rails Sanitize: 安全 + 埋め込みの許可
ユーザーがビデオ、スライド共有などを埋め込むことができるようにするユーザー生成コンテンツ サイトを構築しています。十分な量の埋め込み可能なコンテンツ/html フォーマットを許可しながら、かなり優れたセキュリティ?
python - 安全な Python マークダウン ライブラリ
おそらくマークダウンを使用して、ユーザーがリッチテキストのコメントを残せるようにしたいと考えています。Reddit で使用されているライブラリをインストールしましたが、昨年発生した JavaScript インジェクション攻撃については、特に攻撃の詳細がまだはっきりしていないため、懸念されています。コメントのセキュリティについて心配する必要はありますか? reddit をダウンさせたのと同じ欠陥をチェックするためにシステムに入れることができるテスト文字列はありますか?
php - PHP でのユーザー指定の正規表現のサニタイズ
ユーザーが正規表現をテストできる Web サイトを作成したいと考えています (既に多数の表現が存在します...たとえば、http://www.pagecolumn.com/tool/pregtest.htm )。基本的に、ユーザーは正規表現といくつかのサンプル テキストを提供し、正規表現評価の結果が返されます。
PHP "preg_*" 関数を使用して、サーバー側で正規表現を評価したいと考えています。提供された正規表現をサニタイズする方法はありますか? 懸念すべきセキュリティの脆弱性は何ですか?
php - PHP: 表示される情報のセキュリティのベスト プラクティスは?
PHP では、パラメーター化されたクエリを使用することが SQL インジェクションを防ぐ最善の方法であることを知っています。
しかし、次のような他の目的に使用されるユーザー入力のサニタイズについてはどうでしょうか。
- ユーザーへの表示 (潜在的なクロスサイト スクリプティング ベクトル)
- 電子メールのアドレス指定またはメッセージ本文への入力
htmlentities()
データベース以外での使用をサニタイズする最善の方法はありますか? ここでベストプラクティスと見なされるものは何ですか?
sql - 入力衛生のベストプラクティス
私たちのチームは最近、データベースのロジックとデータレイヤーに取り組んでいます。データレイヤーにEntityまたはLinqtoSQLを使用することは承認されていません。それは主に手作業で作られました。SQLの多くは自動生成されます。これの明らかな低下は、取得と挿入の前に入力をサニタイズする必要があることです。
これを行うための最良の方法は何ですか?挿入、削除などの用語を検索することは、これを達成するための悪い方法のようです。より良い代替案はありますか?
ruby-on-rails - simple_format 使用時にビューに表示するための入力のサニタイズ
改行やリンクが表示されるようにコメントを表示する正しい方法を見つけようとしています。通常、h() で html をエスケープする場合にのみユーザー入力を表示する必要があることはわかっています。もちろん改行やリンクは表示されないので、simple_format と auto_link メソッドを見つけました。
私が今やっていることは: simple_format(santize(auto_link(comment.text)))
これはこれを行う正しい方法ですか? XSS 攻撃からまだ安全ですか?
ありがとう!エリック
regex - この正規表現を修正して特定の文字列を許可するにはどうすればよいですか?
この正規表現はAtwoodからのものであり、hrefとタイトル以外のアンカータグを除外するために使用されます。
特に一致する追加の属性を許可する必要があります:target ="_blank"。したがって、次のURLを許可する必要があります。
パターンを次のように変更してみました。
明らかに、私は正規表現をよく知りません。空白のターゲットを許可し、他のターゲットを許可しないように、パターンをどのように調整する必要がありますか?
asp.net - Asp.Net で QueryStrings をインターセプトして前処理する方法
登録 URL をメールでクライアントに送信します。一部の電子メール クライアントは、URL を
ユーザーがメールを自分自身に転送し、その時点でメールクライアントが元のメールを再フォーマットするときに発生する可能性があると思います(おそらく)
例えば
https://my.app.com/login.aspx?param=var
なる
https://my.app.com/login.aspx?param=var%20%3Chttps://my.app.com/login.aspx?param=var%3E
System.Web.HttpRequestValidationException: 潜在的に危険な Request.QueryString 値が検出されました
ユーザーが元の形式の URL にリダイレクトされるように、コードのどこでこれらのインスタンスをインターセプトし、URL をサニタイズする必要がありますか?
グローバル.asax? Page_Init? HttpHandler? パイプライン?
php - このフォーム入力にはどのくらいのサナタイズが必要ですか?
は
悪意のあるSQLインジェクションやその他の種類の攻撃を防ぐのに十分です。そうでない場合は、他に何を使用する必要がありますか?
PSユーザーが英数字、スペース、記号文字を含むユーザー名とパスワードを選択できるようにしたい(mysqlステートメントで使用される引用符やアスタリスクなどを除く)。
php - preg_match は入力サチナイゼーションで十分安全ですか?
私は新しいWebアプリ、LAMP環境を構築しています...すべてのテキストベースのフィールド(HTMLフィールドではなく、電話、名前)のユーザーの入力検証(もちろん+準備されたstmt)に対してpreg_matchが信頼できるかどうか疑問に思っています、姓など)。
たとえば、従来の「メール フィールド」の場合、入力を次のようにチェックすると、次のようになります。
SQL/XXS インジェクションに対して安らかに眠ることができますか?
私は正規表現を可能な限り制限的に書いています。
編集:すでに述べたように、私はすでに準備済みのステートメントを使用しています。この動作はテキストベースのフィールド(電話、電子メール、名前、姓など)専用であるため、HTMLを含めることはできません(HTMLフィールドの場合) 、私は HTMLpurifier を使用します)。
実際、私の使命は、regexp-white-list と一致する場合にのみ入力値を渡すことです。それ以外の場合は、ユーザーに戻します。
ps :: mysql_real_escape_strings のないものを探しています。おそらくプロジェクトは次の将来に Postgresql に切り替わるので、クロスデータベースの検証方法が必要です ;)