[過去ログ] スレ立てるまでもない質問はここで 159匹目 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
175
(4): デフォルトの名無しさん [sage] 2022/02/24(木) 12:35:41 ID:6X2WQPLr(1) AAS
SQLに文字列投げる前のバリデーションに使う正規表現で鉄板なの教えてください
英数字記号で、クォーテーションとかSQLだと危ないやつは弾く感じの
199: デフォルトの名無しさん [sage] 2022/02/24(木) 22:03:05 ID:82W7j8jp(6/6) AAS
>>175
文字列を連結して、SQL 文を作ると、SQL injection される

だから、Ruby on Rails では、O/R マッパーを使う。
place holder を使って、? の所に、変数を埋め込む
206
(2): 175 [sage] 2022/02/25(金) 10:56:25 ID:cHKC+7di(1/2) AAS
>>175
ワイ175やけど結局みんな手探りなのね
プレースホルダは当然やるけど、予約語のバリデーションは独自でやってるんやね
(出来ればDBにアクセスする前、バインド(prepare)する前に、アプリで弾きたい)
210
(2): 175 [sage] 2022/02/25(金) 11:59:13 ID:cHKC+7di(2/2) AAS
>>208
208(1): デフォルトの名無しさん [sage] 2022/02/25(金) 11:43:57 ID:SuduBg90(1) AAS
>>206
どんなGUIか知らないけどフリーキーワードをちまちま入れないといけない時点でもう使いづらい。
動的にチェックボックスや候補ワードが先回りして出るくらいでないと。
キーワードを投げたはいいがヒット0とか、今どきはダサいよ。
>>209
209(1): デフォルトの名無しさん [sage] 2022/02/25(金) 11:44:18 ID:Ttq2k6xT(1) AAS
>>206
プレースホルダ使っててなんのためにバリデーションしてるんだ?
変なデータが入るのが嫌と言うならそれは要件次第だろとしか言えないし
問い合わせフォームとか応募フォームなんだけど、
こないだbot投稿に遭ってとりあえずreCapchaは入れて止めた
だけど、いくつかはDBまでSQL文がtextとしてinsertされちゃったんよねw(where〜とかが名前とかのカラムに入った)

じゃあなんかのバリデーションするかってことで普通はどうするかな、て
219
(1): 175 [sage] 2022/02/25(金) 16:50:08 ID:ilyzPMTz(1) AAS
>>218
218(1): デフォルトの名無しさん [sage] 2022/02/25(金) 16:30:52 ID:VyHl6qUM(1) AAS
>>210
これってSQLに値を渡したい場合、文字列結合ではなくプレースホルダだけ書いておいてパラメータとして与えましょうという初歩の話じゃないの?
いやその後のハナシで
バリデーションとかエスケープとかサニタイズしても、
結局文字列としてInsertされるから、それを防ぎたいってハナシ
氏名:selectさんとかそういうデータが出来るのを防ぐのどうしてるのかなて

まあDBに限るハナシでもないけど
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.041s