Re:Multiple OS Vendors Release Security Patches After Misint...
by sillysaurus3 on Thursday May 10, 2018 @08:22AM
(#17038179)
Why can't there be automated test suites that catch unauthorized access issues before ship (if not before merge commit)?
Usually the search space is too large.
Re:Multiple OS Vendors Release Security Patches After Misint...
by rocqua on Thursday May 10, 2018 @09:47AM
(#17038777)
Isn't that what fuzzing is for?
Re:Multiple OS Vendors Release Security Patches After Misint...
by hedora on Thursday May 10, 2018 @10:49AM
(#17039302)
Concolic testing would probably catch it, but only if the person that implemented the hardware model for the theorem prover understood the Intel documentation, which seems unlikely.
Basic fuzzing probably wouldn’t catch this; as the other comments point out, the search space is probably too large, and the set of vulnerable executions is probably too small for an undirected random search.
Re:Multiple OS Vendors Release Security Patches After Misint...
by amluto on Thursday May 10, 2018 @10:15AM
(#17039007)
I’d be truly amazed if a fuzzer could have caught this one. You need to invoke debug syscalls with the right parameters and the do a magic two-to-three instruction sequence.
Re:Multiple OS Vendors Release Security Patches After Misint...
by learningto on Thursday May 10, 2018 @10:20AM
(#17039046)
It's what formal verification is for!
Re:Multiple OS Vendors Release Security Patches After Misint...
by simion314 on Thursday May 10, 2018 @09:23AM
(#17038582)
If you can't trust the CPU documentation how can you test that addition works? even if you could test all possible combinations of terms to add and verify the results there may be a hidden flag somewhere that when flipped will change how addition works.
Re:Multiple OS Vendors Release Security Patches After Misint...
by Tobba_ on Thursday May 10, 2018 @11:09AM
(#17039521)
On that subject, I'm curious whether there is any CPU out there that sets the overflow flag incorrectly when computing (-1) - n when n is the most negative number (which negates to itself, so implementing subtraction by simply negating the RHS and adding will screw up the flags).
Re:Multiple OS Vendors Release Security Patches After Misint...
by Vogtinator on Saturday May 12, 2018 @06:13PM
(#17056278)
The ARM ARM documents sub(left, right, no carry) as add(left, ~right, carry set), which is also the most straightforward implementation if you have to account for carry anyway.
Re:Multiple OS Vendors Release Security Patches After Misint...
by throwaway2048 on Thursday May 10, 2018 @08:32AM
(#17038223)
Your idea is akin to searching the space of unknown unknowns, By definition someone can not even begin to quantify the space of what you don't know you don't know.
Re:Multiple OS Vendors Release Security Patches After Misint...
by hedora on Thursday May 10, 2018 @11:08AM
(#17039513)
This mentality is why I like OpenBSD.
If they can’t sign off on the security/correctness of a pile of code, they delete it, even if it means losing functionality.
In this case, they simply didn’t invoke the incomprehensible instruction of doom.
Where was the security testing at the OS level? Why can't there be automated test suites that catch unauthorized access issues before ship (if not before merge commit)? If your vendor delivers an insecure product and you don't discover it, how much blame do you share?