Our Interesting Call with CTS-Labs
anandtech.com
anandtech.com
https://news.ycombinator.com/item?id=16595184
Trail of Bits --- which has a reputation in the field approaching "unimpeachable" --- confirmed a series of serious vulnerabilities. Whether there are real findings involved in this report isn't in question, and hasn't been since the day of the announcement, when Dan Guido from Trail of Bits confirmed that they'd reviewed and confirmed the finding.
It's ironic, or maybe it isn't, that after CTS-Labs published their findings in a manner basically optimized for innuendo than Anandtech has run a story that is basically composed of innuendo. Given how charged people's feelings about AMD seem to be, this is probably manna from heaven for them, and since CTS-Labs isn't publishing the full technical details, it'll be raining bread for them for many days to come.
I wouldn't care, except that after the original monster thread about the CTS-Lab announcement, it's become apparent that HN commenters have a very poor understanding of how vulnerability research actually works, and Anandtech is perpetuating some of those myths, like the idea that researchers invariably (or even routinely) arrange for CVE allocation when publishing new flaws.
If you'd found the same class of vulnerabilities in Intel SGX or the iPhone SEP, you'd have a contender for the top vulnerability discovery of the year; an almost-lock on the Pwnie.
I simply can't understand the people who are downplaying this other than by assuming that people love AMD so much that they don't want these to be severe vulnerabilities.
Do I think this will move the stock? No. I don't think an SGX break would hurt Intel much either.
Yep, you should consider them burned. Also make sure you stock up on tinfoil too as you’ll need to make sure the fresh replacement keys don’t get mind read from a distance.
</sarcasm>
In all seriousness, what part of this situation would lead you to think what you’re saying? There’s been good coverage of what it’d take to exploit these vulnerabilities, so I’m not sure what lead you to this line of reasoning.
* if yes, what are the ways that one could get root on that machine? Is it better or worse on the MBP?
* if not, are the keys stored in a place which is related to the secure processor?
And also: is there a reason why somebody could 1) know that you have keys on that machine 2) be interested in those keys 3) have the resources to conduct the attack?
In a nutshell, analyze your attack surface and model your threats.
When I say "pedestrian" vulnerabilities, what I mean is that most users should wait for the patch to come out and apply it, but otherwise not panic. It's definitely not Heartbleed-class "you need to have patched yesterday and, if you haven't, you're already compromised."
These reported errors, while quite severe for what i've been able to make out of the less-than-good paper, do not grant a primary mode of attack and do not provide a way of getting privileges. Just a way of keeping it forever and ever and ever and ever ...
Should be fixed and done properly, just get the fucking CVEs already and publish it ... It is highly likely that it's in some way applicable to other secure elements on other cpu's as well so a proper response is needed.
The basis of this is mostly you just saying it emphatically, as far as I can tell. Most real-world exploits rely on a combination of vulnerabilities. What's a sensible ranking of 'remote' over 'persistent'?
just get the fucking CVEs already
What does this really have to do with anything? It's hard to imagine anyone dealing with a real deployed system saying 'Well, since there is no CVE, this does not affect us at all".
That being said with their shady behaviour CTS-labs have managed the tour de force of overshadowing these vulnerabilities with their botched hit piece "reveal". Paradoxically AMD might end up receiving less backlash than they deserve for their shoddy work because the researchers tried to pull a quick scam out of it. Great job CTS-labs.
I mean, it's cool from a security research perspective, the PSP isn't just some random keyboard/HDD, but the severity seems overstated.
I'm saying that the inverse argument, that the vulnerabilities are "pedestrian" and not worth making noise about, is at least equally false.
Unfortunately, the day of the announcement, several people trafficked in opinions based on CTS-Labs white paper --- which any skilled reader knew immediately, just from the format, wasn't a technical explanation --- that these vulnerabilities were non-issues. If I see people repeating that notion, I'm going to point out: the equivalent vulnerability in the iPhone platform would be front-page news.
> "All exploits require the ability to run an executable as admin"
> "There is no immediate risk of exploitation of these vulnerabilities for most users."
> "These types of vulnerabilities should not surprise any security researchers; similar flaws have been found in other embedded systems that have attempted to implement security features."
Sounds pretty pedestrian.
Parse error. Did you mean "than systems that don't"?
"There is no immediate risk of exploitation of these vulnerabilities for most users. Even if the full details were published today, attackers would need to invest significant development efforts to build attack tools that utilize these vulnerabilities. This level of effort is beyond the reach of most attackers (see https://www.usenix.org/system/files/1401_08-12_mickens.pdf, Figure 1)
These types of vulnerabilities should not surprise any security researchers; similar flaws have been found in other embedded systems that have attempted to implement security features. They are the result of simple programming flaws, unclear security boundaries, and insufficient security testing." - https://blog.trailofbits.com/2018/03/15/amd-flaws-technical-...
ToB is right to say this, but it’s not at all uncommon for very serious security vulnerabilities to be “beyond the reach of most attackers.” Browse through Google Project Zero’s blog for examples.
> These types of vulnerabilities should not surprise any security researchers; similar flaws have been found in other embedded systems that have attempted to implement security features. They are the result of simple programming flaws, unclear security boundaries, and insufficient security testing.
Again, correct. However, that describes most serious security vulnerabilities. I’m a security researcher; at this point I’m nearly immune to astonishment about how bad simple programming errors can be. ToB is not insinuating the impact is small, they’re reminding the community that serious problems emerge from seemingly innocuous failures.
For example, I’ve actually witnessed a two-factor auth and password reset system utterly fail and compromise the login interface. A developer wrote “!= 404” instead of “== 200” for the status code handling logic. They forgot the 2fa microservice would return a “429” after five incorrect codes triggered the rate limiter. It was literally a one-line fix. Mistakes don’t get much simpler than that unless you make a typo or off by one error, but it still allowed every single user’s account to be arbitrarily compromised. These mistakes are extremely easy to make the lower down the stack you go.
There are reasonable arguments that encouraging this would reduce vulnerabilities, or at least make them more costly. I’m not sure I would bother raising those arguments as it’s likely to draw in anti-finance ideological ire, but they do exist. Activist short selling is not novel, nor is it even novel for activists to short sell on the weight of security vulnerabilities.
Either the flaws will get priced into the stock forecasting and cost of doing business in the industry or people won't care (there are strong indications it's the latter for these flaws).
It's the exact same for people that do this to alert on regular companies. Markets function efficiently when there is lots of accurate information. These people are exposing new information (either previously unknown or hidden by people with a vested interest), which allows the markets to function more efficiently afterwards (which might mean using better info to choose who not to trust with your data, etc). What they get out of it is the ability to execute on the new information slightly before everyone else.
This of course assumes the data is real. If it's not there is no public benefit, so it's just fraud. I was under the impression that at least some of the flaws were very trumped up, so it was a little complicated whether they did something wrong, but if most /all are real and cause make problems, then I guess I don't have much of a problem with what they've done even if I do think they've taken a slightly less safe route for the public in order to maximize money. Like freedom of speech is one of those things that I don't always like how it's used but I recognize the good far outweighs the bad.
That logic works for full vs. limited (or no) disclosure, but not for immediate vs. 90-day disclosure. In general, the incentive for a vendor with a reasonable embargo period is the same as without, because the effect on their reputation is the same. The only people differently affected are users, who are left more vulnerable for longer than they would have been. Even if one could argue that vendors deserve shaming for what might have been a simple mistake, users surely deserve better.
It's very easy for those who do not suffer the damage from their actions to rationalize their impulsive (or in this case venal) behavior, but that's just another kind of agency problem that people who fling economic jargon around should consider.
The assumption being that nobody else knows about the flaws? We can argue about how likely it is some other people knew about the flaw on a case by case basis, but a blanket statement that assumes that there was no risk while it was unreported is not accurately portraying the situation.
> Even if one could argue that vendors deserve shaming for what might have been a simple mistake, users surely deserve better.
I'm arguing that the risk that the companies exposed people to prior to the announcement (to a small degree), and the risk people may be exposed to after the announcement (to a large degree) are the incentive for someone doing this to take advantage of a short. Would I personally prefer less public risk through a coordinated exposure? Sure. Am I willing to state that it should be required? I don't think so, since that may greatly reduce the incentive of someone looking to do the investigative legwork. I think that's a net loss for the public, since the risk is still there, it's just reduced (since it's not widely known), but it will exist in that reduced state for a long period (possibly indefinitely).
When the choice is between an unknown risk (which can by high) for an indeterminate period or a semi-high risk for a short period (with the ability to mitigate risk as needed, since you know about it), I'll take the latter over the former.
Not nobody, but fewer. The information in a disclosure like this will focus a whole lot of miscreants' attention on something they might not have thought of before.
> that may greatly reduce the incentive of someone looking to do the investigative legwork
Now you're the one making assumptions. Most people don't need the incentive of an immediate crisis to do that legwork. Often, the mere fact that the bugs are real is enough, regardless of timelines. In most other cases, the fact that the clock is ticking is sufficient. If somebody has a proven track record of taking these things lightly then forcing their hand might be justified. Otherwise, you're essentially telling people you think they're lazy or negligent when you have no evidence of such. That's not a good way to start a collaborative process, in a situation where collaboration might be key to a timely fix.
Maybe then the industry could start taking QA, testing, static analysis and formal proofs seriously, instead of being done if there is any budget left, if at all.
Cleaning up their feed after an influx of fanatics (who shout fraud with no support and resort to personal attacks) seems reasonable.
I cannot dislike the way CTS-Labs has handle this? And I cannot question their motive behind this? Given other facts we have including questionable parties?
May I ask, is that what you are suggesting? Given also the numerous comment you have made in this post.
But that's really not the issue. The real problem is that their reveal was clearly meant to mislead. It's was a direct attack on AMD and probably more specifically AMD's stock. Technical details were hidden in the middle of a mediocre whitepaper, all the descriptions of the flaws appear much more critical than they really are. Meanwhile they took the time to make a fancy website and even a video so it's clearly not because of a lack of time or resources. I don't have any particular problem with them "0-day" the announcement but I do have many problems with this pretty obvious manipulation attempt.
Do you genuinely think that CTS-lab acted in good faith here and that the way they handled the disclosure was appropriate? Would you advise other security researchers to do the same thing, to make sure to reveal the vulnerabilities in a way that will cause as much damage as possible, even if it means resorting to good old FUD?
I think attempts to profit off stock swings caused by vulnerabilities are silly and based off a misunderstanding of what really causes stock prices to move.
But even if they weren't, I wouldn't care.
There are three things you can do with a vulnerability that I have a problem with:
1. You can actively exploit the vulnerability to harm people (or knowingly share it with people who do).
2. You can sell a vulnerability without due diligence to ensure it won't be used to harm others.
3. You can lie about having found a vulnerability.
Other than that, have at it.
You've made that quite clear, and it's fine for you to feel that way. But don't go around insulting anyone who thinks that some of those less-technical issues surrounding these vulnerabilities are worth talking about.
Let me sum this up: they're not working for you. You don't get to tell them what to do. If AMD wanted to protect their users, they'd quadruple their security verification budget. What do you think that budget is as a percentage of R&D costs at AMD? Take a guess.
You’re free to ignore or reject the ethical dimension of your work, but there is a word for that you can’t talk your way out of: unethical.
But then, this isn't exactly hidden in the case of CTS Labs. http://www.cts-labs.com/management-team
3 out of 4.
https://www.forbes.com/sites/richardbehar/2016/05/11/inside-...
https://en.wikipedia.org/wiki/Unit_8200#Companies_founded_by...
https://blog.trailofbits.com/2018/03/15/amd-flaws-technical-...
Possibly also relevant, previous HN discussion on another vulnerability on AMD's PSP, reported and fixed in December 2017 (but only disclosed in January 2018):
1. Can Ryzenfall and Fallout be exploited without code signed by AMD?
2. Can Masterkey be exploited even after disabling the PSP in the BIOS which AMD has allowed since January?
That is how I read the situation, anyway; I don't think these people who didn't contact AMD in advance are getting new code signed by AMD to run their exploit. If they have some means of getting AMD to sign anything they want, that's bigger news than any of the vulnerabilities they are currently talking about.
My read was that they're exploiting a flaw in some readily available, already signed-by-AMD code to load something new and behave badly. If that's the case, I don't see why the answer to (question 1) would be meaningful. If that's not the case, do you have a link to the explanation that claims getting new code signed by AMD is necessary?
YLZ: I think that it would have depended on the circumstances of how we found it, how exploitable it was, how reproducible it was. I am not sure it would be the case. Every situation I think is specific."
It’s legal. I’ve been hired to do it before.
I wouldn't be surprised if it's illegal somewhere in the world, but in the US, publishing factual information you have not signed away the right to publish via an NDA or similar contract is usually legal. I don't know that motive is ever involved as part of the test of determining whether or not you are allowed to write something.
I'm not a lawyer, this isn't legal advice.
1. https://arstechnica.com/information-technology/2017/02/high-...
Edit: Not truly fake news
I accept with basically no questions that the announcement was coordinated to enable a stock-shorting scheme. You might be interested to know: this isn't the first time that's happened. I don't care. I don't think these stock-shorting schemes work. I agree with Matt Levine: attempts to profit from stock declines are far from the worst things people can do with vulnerability research --- for instance, they could collude with vendors to withhold disclosure for months or years, which is something that happens.
Where I have problems:
* When AMD fanatics try to spin the confusion about the story into a claim that CTS-Labs didn't find anything, which we know now to be false.
* When anybody reacts to the confusion by announcing to Hacker News that there are immutable norms of vulnerability disclosure that were broken in this case, especially when those supposed norms are false and most especially when they assert obligations researchers have to vendors.
I just think if that’s your plan, you best not be bluffing and had better have something really good up your sleeve. I do have a problem with overstating your case and spreading FUD to try to make a quick buck off of at best B+ attempt.
>There is no immediate risk of exploitation of these vulnerabilities for most users. Even if the full details were published today, attackers would need to invest significant development efforts to build attack tools that utilize these vulnerabilities. This level of effort is beyond the reach of most attackers
Just because it doesn't impact you, or the majority of users, does not mean it is not a severe issue. The majority of users are quite likely to be of low interest to attackers wanting to exploit the secure coprocessor in the first place.
If you are worried about sophisticated attackers, and you are trusting a "secure coprocessor" with such an unspecified and undocumented interface as this, I'd argue that you have no reason to think that the tool you have chosen to defend against the threat you're worried about is adequate. Contrast a coprocessor with no documented security boundary (if I'm missing something on that front, please post a link!) against a traditional HSM. Sure, the latter have had some flaws too, historically, but the well-defined boundary is key to even being able to assess suitability. I've not seen any documentation of this coprocessor's interface/boundaries at all. Let alone any that approaches the level of detail you'd get with an HSM.
We’ve all publicly disclosed and written patches for countless security vulnerabilities in open source code that’s widely distributed with zero fanfare - not even a cve - because we realize the difference between a security bug and a world-stopping, corporation-killing security bug. And the arrogance of saying something along the lines of “if I gave them a day or a million years it wouldn’t matter because this bug is too big to fix,” is beyond comment.
At no point did I give RedHat 24 hours to patch something before coming out with a well-orchestrated PR campaign with the hype engine on overdrive. Just submit a patch, make sure they admit they’re wrong and will take the appropriate measures, and move on.
Now if they found a remote exploit that could let me run arbitrary code on any AMD processor even in a sandboxes environment... we’d be having a different discussion altogether.
Does that mean the stock should head to zero, like some crazy prop trading firm claimed they should? The fuck should I know? I am cynical about the impact vulnerabilities have on stock prices and don't think consumers generally care.
Anyone that is serious about security hopefully knows this.
(I have no skin in the AMD/Intel CPU game. Too many machines running both to bother. I can’t believe I have to say this on HN, it’s what I’d expect of [H]ard in 2004.)
Maybe this is going to be the next big thing thrown into Metasploit so it can be easily used to make persistent something that's effective on a variety of systems with a variety of environments and data while still being subtle enough to avoid having the infection vector code make it into every AV package out there, but I doubt it.
To me the use of this kind of exploit feels like a very fine needle. Very fine needles are very very useful in a lot of specific situations, but very fine needles scattered haphazardly around the environment are a very different thing.
One of those claims has to be false. If an attacker can shut the door behind them so to speak then it has to be possible for AMD to do the same.