Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.3.18.15 #3

Open
wants to merge 50 commits into
base: 2-3-lts
Choose a base branch
from
Open

2.3.18.15 #3

wants to merge 50 commits into from

Conversation

pierrel
Copy link

@pierrel pierrel commented Feb 6, 2016

foobear and others added 30 commits July 3, 2014 13:39
Also adds a test to ensure SQL injection is not possible via range
queries (Rails 2.3 is not affected, was CVE-2014-3483 for 4.x)
XML documents that are too deep can cause an stack overflow, which in
turn will cause a potential DoS attack.

CVE-2015-3227

Conflicts:
	activesupport/lib/active_support/xml_mini.rb

Conflicts:

	activesupport/lib/active_support/xml_mini/jdom.rb
	activesupport/lib/active_support/xml_mini/rexml.rb
…ent with excessive depth (CVE-2015-3227)

Conflicts:

	activesupport/test/xml_mini/jdom_engine_test.rb
	activesupport/test/xml_mini/rexml_engine_test.rb
…r when parsing an XML document with excessive depth (CVE-2015-3227)

Conflicts:

	activesupport/test/xml_mini/jdom_engine_test.rb
kratob and others added 20 commits June 25, 2015 15:20
…memory leak in Mime::EXTENSION_LOOKUP (only affected 2.3)
…when the association has allow_destroy: false

This test is all we can do for Rails 2.3 in regard to
[CVE-2015-7577] Nested attributes rejection proc bypass in Active Record.

In Rails 3+ you could skip over a :reject_if proc when the nested association
had :allow_destroy => false and you're updating an existing record with :_destroy => 1.
This might be used to change a record that the developer considers to be off limits
due to the :reject_if condition.

However, the Rails 2.3 API defines that :reject_if is never called for existing records,
only for new records. Hence the developer cannot trust in any protection from :reject_if
for existing record.

The only (slightly awkward) test we can write for Rails 2.3 is that new records with
:_destroy => true are immediately destroyed, even if :allow_destroy is false.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants