操作
Code Review #965
完了Mass assignment security vulnerability
開始日:
2012/03/13
期日:
進捗率:
70%
予定工数:
説明
私の元のコードが悪いのですが、Mass assignment脆弱性があります。
@issue_template.attributes = params[:issue_template]
で値を設定すると、HTTPリクエストのパラメータにproject_idやauthor_idを勝手に追加して意図しないフィールドの値を書き換えられてしまいます。
修正方法としては、モデル側でRedmine::SafeAttributesをインクルードして書き換えてもよいフィールドを定義し、コントローラ側でattributes = の代わりにsafe_attributes =で値を設定すればよいと思います。以下の修正を参考にして下さい。
http://www.redmine.org/projects/redmine/repository/revisions/9140
操作