2014-04-07 1 views
1

코드 환경은 잠재적 인 크로스 사이트 스크립팅 문제에 대해 경고합니다. 여기 escapeHTML이 충분하지 않습니까?레일에서이 XSS 경고를 수정하는 방법

link_to(t(".button_text"), main_app.some_path(:id => (h(params[:id]))), :class => "btn") 
+0

대신 정수로 변환 하시겠습니까? ': id => params [: id] .to_i' – house9

+0

id는 불행히도 정수가 아닙니다. – usbsnowcrash

+0

어떤 버전의 레일을 사용하고 있습니까? 몇 년 전 레일 html_escape 메소드에서 유니 코드가 취약점을 벗어났습니다. 절대 Code Climate를 사용하지 않았지만이를 고를 수 있습니까? https://groups.google.com/forum/#!topic/rubyonrails-security/Vr_7WSOrEZU – photoionized

답변

1

컨트롤러에서 가져온 개체를 사용하여 경로 도우미로 전달하는 것은 어떻습니까?

def index 
    @some_object = SomeObject.find(params[:id]) 
    [...] 
end 

그런 다음이 개체를 사용하여 경로를 만드시겠습니까?

link_to(t(".button_text"), main_app.some_path(@some_object), :class => "btn") 
+0

이것은 정말 이상한 방법입니다. 쿼리 문자열에 있던 내용을 다음 페이지의 링크에 넣을 목적으로 전체 개체와 find 메서드를 만듭니다. – usbsnowcrash

관련 문제