Of all the security post-mortems I’ve ever wanted to read, it’s sad I’ll probably never get to read this one and its tale of how a team of well-paid comfortable engineers got together and decided this patch was a good idea.
Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
51–60 of 322 posts
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#52User agents shouldn't exist any more. They serve only to help unsuspecting users be fingerprinted.
Mozilla/5.0 (...) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#53Of all the security post-mortems I’ve ever wanted to read, it’s sad I’ll probably never get to read this one and its tale of how a team of well-paid comfortable engineers got together and decided this patch was a good idea.
Engineer Alice: We should really fix this properly.
Manager: How sure are you that the proper fix won't break something else for $BIG_CUSTOMERS who are responsible for $OBSCENE percent of this product line's revenue?
Engineer Bob: Uh, ten percent on a good day? Do you remember the last time we applied a "simple" hotfix to this function? I almost had to sleep under my desk.
Manager: And we can just prevent it with an extra regex rule in the front end code?
Engineer Alice: ... Yes. irrepressibly existential sigh
Manager: How much QA effort to call this good?
QA Engineer: We can run through a cut-down version of the acceptance test suite in four or five hours.
Manager: And for the proper fix?
QA Engineer: Oh, hell, at least a week of stress testing to really be sure.
Manager: Add the regex rule.
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#54Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#55I don't see what the fuss is about. This is an effective mitigation, given that software can't just arbitrarily lie about its user agent.
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#56Of all the security post-mortems I’ve ever wanted to read, it’s sad I’ll probably never get to read this one and its tale of how a team of well-paid comfortable engineers got together and decided this patch was a good idea.
Having been involved in meetings where "stop ship" was the phrase of the day, I'd bet money that the following at least vaguely resembles a real conversation: Engineer Alice: We should really fix this properly. Manager: How sure are you that the proper fix won't break something else for $BIG_CUSTOMERS who are responsible for $OBSCENE percent of this product line's revenue? Engineer Bob: Uh, ten percent on a good day?…
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#57Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#58Earlier quoted context omitted.
They help you figure out if a user agent wants a mobile view of a page without Javascript... which is pretty useful.
We don't need user agents for that. There's an easy way to tell whether a visitor wants a cleaner view of a page, without Javascript: Yes.
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#59Source says they also did some input sanitizing along with blocking curl, and they had to make a new PoC to get around that. If I'm reading that right then this isn't really an issue, nothing wrong with defense in depth. Edit: >The update adds several filters to handle single quotes in user input. However, these filters can be evaded by specially crafted inputs. By providing the following string for the certificate's…
Speaking of filtering, the diff between the two exploits is: -"common_name=a'\$(ping -c 4 192.168.1.2)'b" +"common_name='a\$(ping -c 4 192.168.1.2)'b" and POST instead of GET (and kurl as the UA, of course). Does their fix specifically check for injection starting with `a'` ? And only works for GET requests? Mind-boggling... Edit: The new exploit also targets https instead of http. I would've said that surely that wo…
Re: Cisco Fixes RV320/RV325 Vulnerability by Banning “curl” in User-Agent
#60I don't see what the fuss is about. This is an effective mitigation, given that software can't just arbitrarily lie about its user agent.