問題タブ [input-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.
php - PDOステートメントを使用したPHPサニタイズ入力
重複の可能性:
PHPでSQLインジェクションを防ぐ方法は?
MySQLインジェクションを防ぐためにPDOプリペアドステートメントを使用していますが、ユーザー入力をサニタイズするためにさらに何かを行う必要がありますか?ユーザーには、自分の入力と「友達」の他の人の入力のみが表示されます。入力をサニタイズするために他に何かする必要がありますか?
魔法の引用が有効になっているとは思いませんし、ユーザーが私のサイトを台無しにする他の方法は考えられませんが、私はこれに慣れていないのでわかりません。
前もって感謝します!
php - アップロードされたファイル(またはテキストボックス経由のテキスト)にPHPコードが含まれているかどうかを確認するにはどうすればよいですか?
私はstackoverflowでこれに対する適切な答えを見つけることができません。しかし、おそらくそれは私が愚かであるだけです。
ユーザーがテキストファイルをアップロードできるユーザーフォームがあります。htdocsの外部に保存したり、ファイルの名前を変更したりするなど、賢明なことを行っていますが、アップロードされたファイルに有害な可能性のあるPHPスニペットが含まれているかどうかを確認するにはどうすればよいですか?また、テキストファイルとして保存されるテキストボックスがあり、ユーザーがその中にphpコードを送信したかどうかを確認したいと思います。
""をチェックするのと同じくらいばかげてい<?php
ますか?このチェックを役に立たなくするようなバイト形式でこれを書き直すことはできますか?
ファイルには入力の一部として有効な「<」および「>」文字が含まれている可能性があることに注意してください。これらをエスケープしたくないのは、データ処理アプリケーションがこのサニタイズされたフォームで機能しないためです。
php - PDOを使用せずにPHPのサニタイズを改善するにはどうすればよいですか?
SQLクエリで使用される前に文字列/変数をサニタイズするための短い関数を作成しました。
使用して呼び出されます:
文字列の長さを定義し、real_escape_stringとstrip_tagsを使用して文字列をクリーンアップしてから、substr()を使用して、返されるデータが長さの基準に一致することを確認します。
PDOを使用せずにこの消毒機能を改善する方法はありますか?
mysql - DBクエリのZF2サニタイズ変数
Zend Framework 2 でデータベース クエリを作成する場合、ユーザーが送信した値をどのようにサニタイズする必要がありますか? たとえば、次の SQL の $id
string - Matlab での比較のために文字列をサニタイズする
これは、ファイル記述子を手動でいじる代わりに、を考慮したthisからのフォローアップの質問です。evalc
以下に、サニタイズが不十分な例を示します。末尾の文字、すべての空白、すべての改行など、通常は予期しない事態を引き起こすものを削除したいのですが、これを行うためのサニタイズコマンドはありますか?
zend-framework - ユーザー入力をサニタイズするために、Zend リクエスト オブジェクトの getParams() メソッドを拡張する
ユーザー入力をフィルタリングする (タグなどのユーザー データをブラックリストに登録する) ことにより、Web アプリでのユーザー入力を確実にサニタイズしようとしています。基本的に、Zend は、開発者が要件と見なす場合はいつでもこれを具体的に行うことを提案しているため、ページ A にフォームがある場合は、フォーム データが取得された後にその pageAaction() でフィルタリングを行う必要があります。アプリ内のすべてのフォーム データは次のように取得されます。
さて、私の Web アプリでは、すべてのユーザー入力は、ブラックリストに登録されたフィールドに対してサニタイズする必要があります。フォームごとにブラックリストと比較するのではなく、明らかにコードを 1 か所に集中させたいと考えています。私の理解では、これは常にフォームデータを取得する場所であるため、_request オブジェクトの getParams() または getParam() メソッドで行う必要があります。
はいの場合、どうすれば同じことができますか? コアの Zend クラスに手を加えたり、独自の変更を加えたりしたくありません。
そうでない場合、コードを一元化するための最善の戦略は何ですか?
免責事項: Zend フォームは使用しておらず、代わりに独自のフォームをカスタム作成しています。
php - 適切なフォーム入力衛生
を使用してフォームから収集しているフォームフィールドがあります
次に、これを dataType "html" としてコントローラーに送信します
私のdataStringのvar_dumpは次のようになります(これまでのところ、メールアドレス、選択オプションなどが含まれます)
私の質問は次のとおりです。モデルにデータを送信する前に使用する必要があるフォーム衛生の適切な方法は何ですか? 特殊文字などを削除する必要があることはわかっていますが、使用すべきパッケージ化されたクラスはありますか?
データを次のように分割する必要がありますか
php - XSS を除外するが基本的な書式タグを許可する方法
エディターを使用して HTML 形式のコンテンツを入力できる Web サイトに取り組んでいます。
ただし、XSS インジェクションが気になります。エディターは Javascript を使用してクライアント側で情報をフィルタリングすることは明らかですが、クライアント側から何も信頼しないのが良い習慣であることを考えると、私はそれをほとんど信頼できません。
次のような特定のタグをホワイトリストに登録できるようにしたい:
ただし、XSS 攻撃に対して入力の安全なフィルターを実行します。
http://php.net/manual/en/function.strip-tags.phpの使用を検討しましたが、img タグが XSS ハッカーのお気に入りの 1 つであることに気付きました。
これを行う関数を作成することは可能ですか? それは安全でしょうか?
python - ユーザー入力パス名のサニタイズ
Windows で Python 2.6 を使用すると、パス名を引数として受け入れる必要がある関数があります。特定のパスが渡されると、問題が発生します。
私が収集しているの\n
は、「何もない」パスが新しい行として解釈され\t
、「テスト」パスがタブとして解釈されていることです。
パス名を出力すると、それが起こっているように見えます。
新しい行の代わりにタブを除いて、「テスト」パスについても同じです。
これまでに思いついたのは、パス名に\n
or\t
が含まれているかどうかを確認し、それに応じて処理することだけですが、確かにもっと良い方法があるはずです。
より良い方法は何でしょうか?
php - PHP コード $_POST からユーザー入力を消去する方法
私はこのPHPコードを持っています:
送信内容に関係なく、コードは常に「失敗」と出力されます。
空白または無効な入力を渡すと失敗するようにしたい。
また、入力を適切にクレンジングするにはどうすればよいですか?