あなたのDBエントリを単に消毒しても問題ありません。 Railsはデフォルトでこれを行います。フレームワークを正しく使用するだけです。より多くの情報のためにこれをチェックしてください:あなたはまた、参考のため
<%=h possible_harmful_text %>
を行くことによってXSS攻撃を防ぐために持っている
Project.find(:all, :conditions => "name = '#{params[:name]}'")
:
Project.find(:all, :conditions => ["name = ?", params[:name]])
# or
Project.find(:all, :conditions => {:name => params[:name]})
ませTHIS:http://wiki.rubyonrails.org/howtos/security/sql_injection
は、これを行います:
クロスサイトスクリプティング(XSS)は、通常、他のユーザーが閲覧Webページ に 悪意のあるWebユーザーによるコードインジェクションを許可するWebアプリケーション で見つかったコンピュータセキュリティの脆弱性 の種類 です。 の例には、クライアントサイドスクリプトが含まれています。 悪用されたクロスサイトスクリプティング の脆弱性を攻撃者 が同じオリジンポリシーの などのアクセス制御をバイパスするために使用する可能性があります。この種類の脆弱性 は、強力なフィッシング攻撃とブラウザ の脆弱性を改ざんするために悪用されています。クロスサイトスクリプティングは、2007年のよう 脆弱性は、多くの場合、 攻撃の不正アクセスを 対象となることがあり、エンドユーザーに「すべてが 罰金に見える」中 の約80%であったウェブサイト上の盗難をすべて文書化し、セキュリティを を行って機密データの 、財務 の損失 (via wikipedia)
もちろん
SQLインジェクションは、アプリケーションの データベース層で発生したセキュリティ 脆弱性を悪用コードインジェクション 技術です。 ユーザーが 入力を間違ってフィルタリングすると、 文字列リテラルエスケープ文字の場合 がSQLステートメントに埋め込まれているか、またはユーザー の入力が厳密に入力されていないため、予期せず実行されます。 のより一般的なクラスのインスタンスは、 という脆弱性が発生する可能性があります。 言語が別の言語に埋め込まれていると、 SQLインジェクション攻撃として、SQLインジェクション攻撃も知られています( )。 1 (via wikipedia)
ウィキペディアから、私はそれを取る? ;) –
ありがとうございます^^私はすぐに参照を追加します – marcgg