ビデオ: [PS4] #12 PS4分解修理!!なおったぞ!なおした!奇跡! [電子工作] 2024
コードインジェクション回避の第1のルールC ++プログラムへの変換は、決して 、 は汎用入力言語インタープリターでユーザー入力を処理することはできません。 SQLインジェクションの一般的なエラーは、プログラムがユーザーの入力を常に受け入れられるかのように受け入れ、SQLクエリに挿入して処理するためにデータベースエンジンに渡すということです。例として、日付のユーザ入力を要求するプログラムがハッキングされる可能性があります。最も安全で最もユーザーフレンドリーなアプローチは、開始日と終了日を選択できるカレンダーのグラフィックをユーザーに提供することです。プログラムは、ユーザーがクリックした内容に基づいて日付を作成します。
yyyy / mm / dd <つまり、4桁の後にスラッシュと2桁の数字とスラッシュと2桁の数字が続きます。許容できる入力とみなされるべきものは何もない。 時々、あなたはそのフォーマットについて特定できません。ユーザーがフレキシブルテキストを入力できるようにする必要がある場合は、少なくとも特殊文字を避けることができます。たとえば、一重引用符または二重引用符を使用せずにSQLコードを挿入することはほとんど不可能です。 <! - 2 - >
less()記号を使用しないでHTMLタグを挿入することはできません。あるいは、ASCIIテキスト以外のものが許されないというアプローチをとることもできます:
//文字列 's'をチェックしてストレートASCII size_type off = sであることを確認します。 find_first_not_of( "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890_");このコードは文字列s
を検索して、文字A〜Zのいずれかではない文字を検索します(a〜z)。 、0〜9、またはアンダースコア。そのような文字が見つかると、プログラムは入力を拒否します。
<! - 3 - > ここに示すラテン文字のみを許可すると、英語の文字セット(アラビア語、中国語、ヘブライ語など)を使用しないような外国市場では使用できなくなります。ロシア語、ほんの数例を挙げると)。あなたは反対のアプローチをして、悪いキャラクターを探す必要があるかもしれません。