Live data from Hacker News

Multiple vulnerabilities in parameter parsing in Action Pack

groups.google.com

91–100 of 294 posts

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#91

I'm just commenting here so that people can have a central thread for love / hatred. ;-) But seriously. This is extremely critical, please upgrade!

Thank you Aaron and the rest of the Rails core team. We really appreciate the speed with which you addressed this!

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#92

Upgrade instructions: update your Gemfile and set the version you want. In my case: gem 'rails', '3.2.10' locally, run 'bundle update rails' which will update your Gemfile.lock check-in and deploy your code. If you are using capistranso, the default 'deploy' task should handle everything for you. Otherwise, run 'bundle update rails' on your production server.

The fixed version is 3.2.11

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#93

I'm just commenting here so that people can have a central thread for love / hatred. ;-) But seriously. This is extremely critical, please upgrade!

Getting continuous errors on deploy during the bundle stage like so: /usr/lib/ruby/1.9.1/rubygems/remote_fetcher.rb:215:in `fetch_http': bad response Not Found 404 (http://bb-m.rubygems.org/quick/Marshal.4.8/activesupport-3.2.11.gemspec.rz) Is this because rubygems.org is being nailed?

I'm getting exactly the same thing. Glad to know it's not just me.

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#94
post #89

I hope in consequence of this incident the Rails-team will build in an automatic security-update notification mechanism. I'd like my apps to poll rails.org (or whatever) every few minutes and by default shutdown hard when an incident like this is announced.

You can set up a system like Debian or Ubuntu to automatically install security updates.

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#95
post #44

As a newcomer to the Rails ecosystem all these posts of vunlerabilities and open doors leaves a bad taste in my mouth. God know I love programming in Ruby now, but is Rails really that insecure?

Who'd have thought it? Hugely dynamic language turns out to be difficult to audit or analyse for security issues. It was never about Java(C, C++) vs. Ruby despite what fanboys on either side made out. It was about conservative vs. devil-may-care. All that "convenience" and "it's so clean" came at the price of a whole load of code executed behind the scenes. You didn't write it, and the Gods of TDD preached that you d…

Here's a very, very similar exploit from last year... in a popular enterprise Java stack:

http://websec.wordpress.com/2012/01/04/multiple-vulnerabilit...

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#96

I'm just commenting here so that people can have a central thread for love / hatred. ;-) But seriously. This is extremely critical, please upgrade!

Could you confirm that upgrading to the fixed Rails versions means I don't have to add the line changing `ActionDispatch::ParamsParser::DEFAULT_PARSERS`? Or do I have to do both?

Thanks!

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#97
post #68

Earlier quoted context omitted.

> As a simple solution, one could pass a signed auth-hash of the fields generated by form_for, and the server could re-hash the fields submitted to ensure the form data you asked for is what you get (this solves the primary issue with attr_accessible). It does not solve the issue of javascript generated forms.

Sure, but as with all things, it could be turned off. The more I think about it, the more I like this idea. I may as well try it out and mock up a pull request.

If you turn it off then you're back to square one security-wise. Apps that have neither APIs nor JS are an increasingly small share these days. Also consider what is possible to sign. In most cases there will be some non-enumerable data in the field, leaving you with only being able to verify the field names, but there could be nested data and it seems like a 50/50 shot that whatever unforeseen vulnerability would not need to change the top-level params anyway. I don't think this would afford much of a security guarantee.

The only way to fix this by "more of a focus on security" would have been not to do clever things with parameters in the first place, but the clever things provide a lot of value, so the next best thing is security auditing and be on top of patching any vulnerabilities.

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#98

Upgrade instructions: update your Gemfile and set the version you want. In my case: gem 'rails', '3.2.10' locally, run 'bundle update rails' which will update your Gemfile.lock check-in and deploy your code. If you are using capistranso, the default 'deploy' task should handle everything for you. Otherwise, run 'bundle update rails' on your production server.

[deleted]

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#99

Earlier quoted context omitted.

> why isn't there more of a focus on security here? More compared to what, exactly? This vulnerability was responded to pretty damn quickly after it was reported, given that almost nobody is even paid to work on Rails. If you saw Aaron tweeting about "working over the weekend" a few days ago, well, now you know. That said, you mention attr_accessible in your post: that's gone as of the next release of Rails. Basicall…

If you've recently started a new Rails project (or are thinking about it), you should use strong_parameters right off the bat!

Why is strong_parameters not the only way? Rails is pretty opinionated in many other respects...

Re: Multiple vulnerabilities in parameter parsing in Action Pack

#100

Rails noob here... with this and the other vulnerability from a few days ago, do all you need to do is update your rails gem to become safe? Current version at time of my post is 3.2.11, if I'm using that am I safe or do I need to perform additional steps?

That is correct. The latest 3.1.10, or latest 3.2 series have this update. See the top of the linked notice:

Versions Affected: ALL versions Not affected: NONE Fixed Versions: 3.2.11, 3.1.10, 3.0.19, 2.3.15

Post reply on HN