Live data from Hacker News

An Analysis of CVE-2017-5638 – how Equifax was hacked

blog.gdssecurity.com

11–20 of 21 posts

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#11

I have yet to see any credible source pinpointing the CVE used to compromise the Equifax data (we all know it's in Struts, but which one was it?). Has something changed, or is this title clickbait?

>The attack vector used in this incident occurred through a vulnerability in Apache Struts (CVE-2017-5638), an open-source application framework that supports the Equifax online dispute portal web application.

https://www.equifaxsecurity2017.com

^ the official site, despite looking like a phish

There might be more to it, but this vulnerability was definitely used.

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#12

I have yet to see any credible source pinpointing the CVE used to compromise the Equifax data (we all know it's in Struts, but which one was it?). Has something changed, or is this title clickbait?

Note that the linked article isn't clickbait. It's an InfoSec description of how they dealt with the same vuln that hit Equifax. The article was written ~6 weeks before Equifax's stated timeline of attack.

To clarify your comment, Equifax did recently reveal[1] the specific vuln (CVE-2017-5638) in Apache Struts that was used during the ~May-July attack that caused the most headlines.

[1] https://investor.equifax.com/news-and-events/news/2017/09-15...

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#14
post #7

Earlier quoted context omitted.

This generic handler turns out to parse the unsanitized user input as OGNL markup The article is pretty dense and I don't understand this point. I can maybe understand why you'd want to parse the output of an exception message, but why would you ever want to be executing what you parse?

I don't know either, so I googled [OGNL] and the instant answer snippet was > OGNL stands for Object-Graph Navigation Language; it is an expression language for getting and setting properties of Java objects, plus other extras such as list projection and selection and lambda expressions. You use the same expression for both getting and setting the value of a property. Which makes it pretty clear.

I still don't get it. Why would you want to execute that kind of markup in an error handler?

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#15

Earlier quoted context omitted.

I don't know either, so I googled [OGNL] and the instant answer snippet was > OGNL stands for Object-Graph Navigation Language; it is an expression language for getting and setting properties of Java objects, plus other extras such as list projection and selection and lambda expressions. You use the same expression for both getting and setting the value of a property. Which makes it pretty clear.

I still don't get it. Why would you want to execute that kind of markup in an error handler?

Rendering the exception message into an output template for display perhaps.

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#16

I have yet to see any credible source pinpointing the CVE used to compromise the Equifax data (we all know it's in Struts, but which one was it?). Has something changed, or is this title clickbait?

Note that the linked article isn't clickbait. It's an InfoSec description of how they dealt with the same vuln that hit Equifax. The article was written ~6 weeks before Equifax's stated timeline of attack. To clarify your comment, Equifax did recently reveal[1] the specific vuln (CVE-2017-5638) in Apache Struts that was used during the ~May-July attack that caused the most headlines. [1] https://investor.equifax.com/…

Oh, yes, I understand that the linked article isn't clickbait - I was calling out the title specifically for that reason, because if Equifax hadn't confirmed the CVE, I think it would qualify as a clickbait title ;)

Thanks for the link, though, I somehow managed to miss that announcement.

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#17

Earlier quoted context omitted.

I don't know either, so I googled [OGNL] and the instant answer snippet was > OGNL stands for Object-Graph Navigation Language; it is an expression language for getting and setting properties of Java objects, plus other extras such as list projection and selection and lambda expressions. You use the same expression for both getting and setting the value of a property. Which makes it pretty clear.

I still don't get it. Why would you want to execute that kind of markup in an error handler?

To substitute variables in a localized error message template.

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#18
post #11

I have yet to see any credible source pinpointing the CVE used to compromise the Equifax data (we all know it's in Struts, but which one was it?). Has something changed, or is this title clickbait?

>The attack vector used in this incident occurred through a vulnerability in Apache Struts (CVE-2017-5638), an open-source application framework that supports the Equifax online dispute portal web application. https://www.equifaxsecurity2017.com ^ the official site, despite looking like a phish There might be more to it, but this vulnerability was definitely used.

This isn't the official site by the way.

https://news.ycombinator.com/item?id=15295146

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#19
post #18
post #11

Earlier quoted context omitted.

>The attack vector used in this incident occurred through a vulnerability in Apache Struts (CVE-2017-5638), an open-source application framework that supports the Equifax online dispute portal web application. https://www.equifaxsecurity2017.com ^ the official site, despite looking like a phish There might be more to it, but this vulnerability was definitely used.

This isn't the official site by the way. https://news.ycombinator.com/item?id=15295146

Nope. https://securityequifax2017.com/ is the site referenced in your linked article https://www.equifaxsecurity2017.com/ is the official site

Re: An Analysis of CVE-2017-5638 – how Equifax was hacked

#20

Earlier quoted context omitted.

I still don't get it. Why would you want to execute that kind of markup in an error handler?

To substitute variables in a localized error message template.

Does generating that substitute value imply launching a shell command?
Post reply on HN