質問: C++のsqlインジェクション対策が載っているサイトなどを探しているのですが なかなk見つかりません どなたかいいサイトまたは参考書がありましたら教えてくれたら嬉しいです よろしくお願いいたします
回答: ### SQLインジェクションとは何か そもそも SQL インジェクションとは何か、を知りましょう。 や にあるように、 * 動的に SQL を構築する作業において * 入力値をそのまま文字列結合することをしていた場合に * 文字列を工夫することで条件を無視させることができてしまう ような攻撃のことを指します。 ### 対策について 上記の発生条件を考えれば、その条件を満たさないことが SQL インジェクションへの対策となります。 つまり、 * 動的に SQL を構築するにあたり * 単純に文字列を結合するようなことを行わない これに尽きます。 そのために多くの RDBMS においては、プレースホルダという形で「SQL の中に出てくる一部だけを別のものに置き換える」方法を提供しているので、まずはそれをきちんと使うことです。 これについては RDBMS 毎に作法が異なりますし、プログラミング言語での実装についても RDBMS 毎に異なってきます。 C++ だからどうこう、ではない(どんな言語であっても同じであって、サンプルがあるかどうかに過ぎない)です。