Refactor #23875
closedRemove login doesn't escalate privileges test
Description
In #4457 we introduced a change and two tests to verify the session does not leak session id via old session hash reference. Starting from Rails 4.0 the implementation used in tests (TestSession) was given a destroy
method (https://github.com/rails/rails/commit/7d624e0e8cfa3adffd8f475e3588d83f3b367c24#diff-600d5368b55e46ed961abb4295977ac3R254) which enables the session stack to use it instead creation of new hash instance (https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/http/request.rb#L349-L355). This should lead to regression in tests, but due to oversight in test assertion, it was never failing:
refute old_session.keys.include?(:user)
Method keys always return entries as strings, therefore this line never fired. The purpose of this ticket is to refactor this - simply by removing the two tests, because we already test presence of user session key in "sets the session user" test and call of reset_session
(which calls destroy
method) in "changes the session ID to prevent fixation" test.
Updated by Lukas Zapletal over 6 years ago
- Related to Bug #4457: CVE-2014-0090 - Session fixation, new session IDs are not generated on login added
Updated by The Foreman Bot over 6 years ago
- Status changed from New to Ready For Testing
- Pull request https://github.com/theforeman/foreman/pull/5679 added
Updated by Tomer Brisker over 6 years ago
- Translation missing: en.field_release set to 353
Updated by Lukas Zapletal over 6 years ago
- Status changed from Ready For Testing to Closed
- % Done changed from 0 to 100
Applied in changeset b71907ecc7bd80ccb6a1d3ea69d14a25934c1966.