問題 ActiveRecordクイズです。SQLインジェクション可能なのはどれでしょう? (Railsバージョンは7.1.3.4、複数回答あり) 1️⃣ User.find_by(id: params[:id]) 2️⃣ User.where("id = #{params[:id]}") 3️⃣ User.order("id #{params[:order]}") 4️⃣ User.exists?(params[:id]) 正解と解説 SQLインジェクション可能なのは 2️⃣ と 4️⃣ 1️⃣ User.find_by(id: params[:id]) エスケープ処理が入るため これは安全な呼び出しです。 Railsガイドにも引用があります。 Model.find(id)やModel.find_by_*(引数)といったクエリでは自動的にこの対策が適用されます。 2️⃣ User.wher