Rack :: Session :: Cookie 경고에 비밀 옵션이 제공되지 않습니까?


110

Fedora 17에서 Rails 3.2.3, Ruby 1.9를 실행 rails s하고 있습니다.를 실행할 때이 경고가 표시 되며 어떻게 수정합니까?

보안 경고 : Rack :: Session :: Cookie에 제공되는 비밀 옵션이 없습니다. 이는 보안 위협이됩니다. 제작 된 쿠키에서 발생할 수있는 악용을 방지하기 위해 비밀을 제공하는 것이 좋습니다. 이는 향후 버전의 Rack에서 지원되지 않으며 향후 버전은 기존 사용자 쿠키도 무효화합니다.


1
config / initializers / secret_token.rb에 값이 설정되어 있습니까?
Kashyap

Kashyap-예, 값이 설정되었습니다.
bigdaveyl 2012

Rails를 3.2.9에서 3.2.10으로 업그레이드 한 후에도 동일한 경고가 표시됩니다
AlexD

2
실제로이 경고는 어제 (2013 년 1 월 6 일) rubygems.org에서 릴리스 된 Rack 1.4.2에 추가되었지만 실제 커밋은 2012 년 3 월 18 일에 수행되었습니다.
AlexD

그래, 바로 오늘 나도 같은 경고를 받았습니다
Paritosh Piplewar

답변:



19

tehgeekmeisters 답변을 기반으로 한 토론을 읽으면 Rails가 의도 한 것과 다른 방식으로 Rack 쿠키를 사용하기 때문에이 경고가 나타납니다. 이 문제를 처리하는 방법과 해결 방법에 대한 최종 합의가있을 때까지 지금은이 경고를 무시해도됩니다.


17

이 문제는 방금 릴리스 된 Rails 3.2.11에서 해결되었습니다.

로그 : https://github.com/rails/rails/commits/v3.2.11

커밋 : https://github.com/rails/rails/commit/95fe9ef945a35f56fa1c3ef356aec4a3b868937c


1
@Dreyfuzz 3.2.11은 3.2.2보다 이후 버전입니다 (1.1이 아니라 11이므로). 따라서 Rails를 업그레이드하면 문제가 해결 될 수 있습니다.
Henrik N

네, 어떤 이유로 3.2.2가 3.2.20과 같은 십진수 표기법으로 생각했습니다. 내가 1 분 동안 블리딩 에지에 있다고 생각 했어!
Dreyfuzz 2013

16

rails 3.2.9-루비 1.9.3p125 (2012-02-16 개정 34643) [i686-linux]

안녕하세요 여러분, 다음이 저에게 효과적이었습니다.


/usr/local/lib/ruby/gems/1.9.1/gems/actionpack-3.2.9/lib/action_dispatch/middleware/session/abstract_store.rb
module Compatibility
          def initialize(app, options = {})
            options[:key]     ||= '_session_id'
            #fixed warning - SECURITY WARNING: No secret option provided to Rack::Session::Cookie.
            options[:secret] ||= Rails.application.config.secret_token
            super
          end
    end

2
이것은 "위로 투표"중 가장 적은 답변이지만, 다운 그레이드없이 호환성 문제없이 문제 를 실제로 해결하는 유일한 답변입니다 . 그것은 단지 성가신 메시지를 지 웁니다
Aleks

1
오히려 레일 코드를 패치하지 않습니다. 나는 이것이 릴리스에서 해결되는 것이 더 낫다고 생각합니다. 3.2.11로 업그레이드하는 것이 레일 코드를 수정하는 것보다 낫습니다.
allenhwkim 2013 년

6

랙 1.4.1로 다운 그레이드하면 당분간이 문제를 해결할 수 있습니다. 이것 에 대해 열린 문제가 있으며 방금 수정 한 것처럼 보이는 풀 요청 을 제출했습니다 . 어떤 경우 든 문제를 확인하면 문제가 해결 된 후 랙 1.4.2로 업그레이드 할 수 있습니다.

분명히 다른 문제 에서이 문제 를 해결하는 방법에 대한 논의가 진행 중 입니다. 1.4.1로 다운 그레이드하거나 무시하거나이 문제가 해결 될 때까지 자신의 수정 사항을 찾아야합니다 (그 경우에도 백 포트 됨).


5

Github https://github.com/rails/rails/issues/8789 에서 문제가 열렸습니다. . Rack 1.4.2가있는 Rails 3.2.10과 관련된 버그가 원인 인 것으로 보입니다. IMO, 문제가 해결 될 때까지 무시해도됩니다.

수정 :이 문제는 Rails 3.2.11에서 해결되었습니다.


3

레일이 3.2.13으로 업데이트되면이 질문을 해결할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.