タグ付けされた質問 「sanitization」

13
最高のPHP入力サニタイズ関数は何ですか?
すべての文字列を通過させてサニタイズできる関数を考え出そうとしています。それから出てくる文字列がデータベースの挿入に対して安全になるようにします。しかし、そこには非常に多くのフィルタリング機能があり、どの機能を使用する必要があるのか​​わかりません。 空白を埋めるのを手伝ってください: function filterThis($string) { $string = mysql_real_escape_string($string); $string = htmlentities($string); etc... return $string; }
161 php  filter  sanitization 

18
単一引用符をエスケープし、単一引用符でユーザー入力を囲むことで、SQLインジェクションから保護できますか?
ユーザー入力を含むクエリを作成する場合、パラメーター化されたSQLクエリがユーザー入力をサニタイズするための最適な方法であることを理解していますが、ユーザー入力を取得して一重引用符をエスケープし、文字列全体を一重引用符で囲むと何が問題になるのでしょうか。これがコードです: sSanitizedInput = "'" & Replace(sInput, "'", "''") & "'" ユーザーが入力する一重引用符はすべて二重一重引用符に置き換えられます。これにより、ユーザーは文字列を終了できなくなります。そのため、セミコロンやパーセント記号など、ユーザーが入力する可能性のある他のすべてはすべて文字列の一部となり、コマンドの一部として実際には実行されません。 私たちはMicrosoft SQL Server 2000を使用しています。これは、単一引用符が唯一の文字列区切り文字であり、文字列区切り文字をエスケープする唯一の方法であると私は考えているため、ユーザーが入力するものを実行する方法はありません。 これに対してSQLインジェクション攻撃を仕掛ける方法は見当たらないが、もしこれが私のように弾丸であるとすれば、他の誰かがすでにそれを考えていて、それが一般的な慣行になるだろう。 このコードの何が問題になっていますか?このサニタイズ手法を超えてSQLインジェクション攻撃を取得する方法はありますか?この手法を利用するユーザー入力のサンプルは非常に役立ちます。 更新: このコードに対してSQLインジェクション攻撃を効果的に開始する方法はまだわかりません。一部の人々は、バックスラッシュが1つの単一引用符をエスケープし、もう1つを残して文字列を終了し、残りの文字列がSQLコマンドの一部として実行されるようにすることを提案しました。 MySQLデータベースですが、SQL Server 2000では、単一引用符をエスケープする唯一の方法(私が見つけたもの)は、別の単一引用符を使用することです。バックスラッシュはそれをしません。 また、単一引用符のエスケープを停止する方法がない限り、ユーザー入力の残りの部分はすべて1つの連続した文字列と見なされるため、実行されません。 入力をサニタイズするより良い方法があることを理解していますが、上記で提供した方法が機能しない理由を学ぶことに本当に興味があります。このサニタイズ方法に対するSQLインジェクション攻撃を実装する特定の方法を誰かが知っている場合は、ぜひご覧ください。

23
文字列をサニタイズしてURLとファイル名を安全にしますか?
特定の文字列を適切にサニタイズして、URLで安全に使用できるように(ポストスラッグのように)、ファイル名として安全に使用できる関数を考え出そうとしています。たとえば、誰かがファイルをアップロードするときに、名前から危険な文字をすべて削除したいと思います。 これまでのところ、私はこの問題を解決し、外部UTF-8データも許可する次の関数を考え出しました。 /** * Convert a string to the file/URL safe "slug" form * * @param string $string the string to clean * @param bool $is_filename TRUE will allow additional filename characters * @return string */ function sanitize($string = '', $is_filename = FALSE) { // Replace all weird characters with …

17
ファイル名の文字列サニタイザー
文字列をサニタイズし、ファイル名に使用できるようにするphp関数を探しています。誰かが便利なものを知っていますか? (書けますが、キャラクターを見逃してしまうのではないかと心配です!) 編集:Windows NTFSファイルシステムにファイルを保存します。
113 php  string  sanitization 

7
他のhtmlのないangularjs改行フィルター
改行文字(\n)をhtmlに変換しようとしていますbr。 あたりとしてGoogleグループでは、この議論は、ここで私が持っているものです。 myApp.filter('newlines', function () { return function(text) { return text.replace(/\n/g, '<br/>'); } }); そこでの議論はまた、ビューで以下を使用することをお勧めします: {{ dataFromModel | newline | html }} これは古いhtmlフィルターを使用しているようですが、今はng-bind-html属性を使用することになっています。 とにかく、これには問題dataFromModelがあります。元の文字列()のHTMLをHTMLとしてレンダリングしたくないのです。br'のみ。 たとえば、次の文字列があるとします。 7> 5の間、 私はまだここにhtmlなどを入れたくありません... 出力したい: While 7 > 5<br>I still don't want html & stuff in here... これを達成する方法はありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.