|
is my UltraSPARC II-based Sun server safe
|
# ? Jan 4, 2018 17:33 |
|
|
# ? May 22, 2024 12:24 |
|
i said before that there's 34c3 talks that explain the theory behind all of this but i've made a list: Microarchitectural Attacks on Trusted Execution Environments by Keegan Ryan (55:02) - great visual introduction to a variety of side-channel techniques, including improving the effectiveness and branch prediction attacks (sound familiar?) Everything you want to know about x86 microcode, but might have been afraid to ask by Benjamin Kollenda and Philipp Koppe (57:25) - think a microcode update will fix this all? have a talk on reversing microcode updates and implementing your own to get an idea of what's possible ASLR on the line by brainsmoke (44:14) - a feasible javascript-based attack on defeating aslr - must watch given how quickly the speaker reimplemented a poc for meltdown based off of pre-publication info
|
# ? Jan 4, 2018 18:34 |
|
i've been doing a bunch of reading this morning about this mess and the idea that you could write exploits for either meltdown or spectre in browser javascript seems kind of nonsensical to me based on what i've read, both of these exploits require allocating, writing, and/or reading memory directly in order to work, which simply isn't possible in browser javascript or any sort of similar managed environment. the descriptions and the example code all suggest that you'd need to be writing your exploit code in C or assembly or something similar, where the kernel itself is providing you memory access and not a VM or interpreter of some kind but then we also have google, mozilla, and microsoft all implementing mitigations in their browsers and i don't entirely understand why it would seem to me that these mitigations are to prevent meltdown/spectre attacks from outside the browser, by malicious executables, but the wording of the descriptions from these organizations suggests they're concerned about exploits running in the browser itself what am i missing here? am i actually just outright wrong, and you could write effective meltdown/spectre exploits in javascript? and if so, where did my understanding of the situation go awry?
|
# ? Jan 4, 2018 18:38 |
|
Cybernetic Vermin posted:googles poc for the branch predictor (spectre) case reads 1500 bytes/sec with 10-30 minutes setup, and seeing how all you need is 8-32 bytes for some cookie/certificate you can spend a fair few bytes to figure out where some interesting 32 bytes are figuring out where the interesting bytes are is typically why i want to leak a bunch of kernel memory, no? with aslr and kpti i can't know where anything is without either having control over the process (to read its /proc/maps) or dumping a lot of memory.... Luigi Thirty posted:is my UltraSPARC II-based Sun server safe not by design, but maybe accidentally -- no one is writing shellcode for sparc in this day and age on the other hand you probably have eight gazillion unpatched holes in solaris, unless you are paying $10k+ a year to oracle
|
# ? Jan 4, 2018 18:43 |
|
Heresiarch posted:i've been doing a bunch of reading this morning about this mess and the idea that you could write exploits for either meltdown or spectre in browser javascript seems kind of nonsensical to me meet: rowhammer.js meet: ASLR on the line or a meltdown poc that was removed from youtube (someone report-bombed it) to show that read-only doesn't mean useless: https://twitter.com/misc0110/status/948706387491786752
|
# ? Jan 4, 2018 18:45 |
|
iiuc the basic idea is that js array accesses do ultimately contain code like if (i < array_inline_length) result = array_storage[i], so while you have to defeat the aslr++ slide of ((char*) kernel_aslr_base - (char*) array_storage), that load can still be fooled into accessing arbitrary memory on the speculative path
|
# ? Jan 4, 2018 19:00 |
|
Notorious b.s.d. posted:figuring out where the interesting bytes are is typically why i want to leak a bunch of kernel memory, no? ASLR defeating Info leaks are extremely common and the early version of this work was against KASLR, putting a lot of reliance of ASLR this day in age is pretty risky. This is less about getting a kernel address so you can set up your rop gadgets and more "gently caress it give me those crypto keys without bothering to get exec"
|
# ? Jan 4, 2018 19:03 |
|
Heresiarch posted:i've been doing a bunch of reading this morning about this mess and the idea that you could write exploits for either meltdown or spectre in browser javascript seems kind of nonsensical to me executing javascript eventually involves turning it into machine code via a predictable process (the JIT compiler) so if you understand that process well enough (and most leading JIT compilers are open source) you can write javascript that it will transform into the machine code you want
|
# ? Jan 4, 2018 19:19 |
|
apseudonym posted:This is less about getting a kernel address so you can set up your rop gadgets and more "gently caress it give me those crypto keys without bothering to get exec" ok so how do i get those crypto keys? with meltdown, the answer is obvious -- just dump enough memory at 500 kb/s and you will find some good stuff at random. with the branch predictor exploit, i just don't get it
|
# ? Jan 4, 2018 19:23 |
|
Wiggly Wayne DDS posted:they just introduce abstractions - those abstractions still have to perform syscalls to alter memory and by understanding how they work you can use them as primitives, essentially ignoring the layer exists. haveblue posted:executing javascript eventually involves turning it into machine code via a predictable process (the JIT compiler) so if you understand that process well enough (and most leading JIT compilers are open source) you can write javascript that it will transform into the machine code you want fair enough
|
# ? Jan 4, 2018 19:28 |
|
Notorious b.s.d. posted:ok so how do i get those crypto keys? just how much entropy do you think there is in the kernel's aslr?
|
# ? Jan 4, 2018 19:50 |
|
Notorious b.s.d. posted:ok so how do i get those crypto keys? tbqh this is a good question, but not good enough to be terribly optimistic. as long as you can find *a* branch in the target (which may in fact be googles preprocessing 10-30 minutes) the exploit is pretty friendly, since you can start reading the values surrounding that and infer where you are, after which point you can start extracting pointers inside the kernel to get where you need to go, you only need that one jump-off and things seem to get pretty straightforward not at all impossible that you're right, but i wouldn't get too optimistic
|
# ? Jan 4, 2018 20:08 |
|
The_Franz posted:i was being sarcastic, but is ppc actually immune to these attacks or is it just a matter of nobody having checked? https://twitter.com/KateLibc/status/948979943999815680
|
# ? Jan 4, 2018 20:55 |
|
https://twitter.com/anthonypants/status/949004710500974592
|
# ? Jan 4, 2018 21:07 |
|
Jabor posted:just how much entropy do you think there is in the kernel's aslr? even if there were zero entropy in the aslr, even if aslr were turned off -- how do you predict the heap location of the thing you are interested in? bearing in mind your leak rate is measured in bytes per minute. guessing where the heap is, and then groveling the heap, is probably not a great choice.
|
# ? Jan 4, 2018 21:09 |
|
I installed the latest Windows updates on my Win 10 laptop, then did the verification steps as explained here: https://support.microsoft.com/en-gb/help/4073119/windows-client-guidance-for-it-pros-to-protect-against-speculative-exe Apparently I'm not safe because my hardware vendor (Toshiba) has not published a firmware update yet. Now, someone told me that in case of emergency, I can update the microcode using the process explained here: https://labs.vmware.com/flings/vmware-cpu-microcode-update-driver#summary Question for the knowledgeable people in this thread: is it safe to do that, or is it a terrible idea to go mess around with low-level stuff like that and better to just wait and see if Toshiba poops out an update soon?
|
# ? Jan 4, 2018 21:23 |
|
Notorious b.s.d. posted:even if there were zero entropy in the aslr, even if aslr were turned off -- how do you predict the heap location of the thing you are interested in? well, if you can read freely you follow the sequence of pointers that the kernel needs to have to find the value when it needs it itself. it is not like that in itself is very obscure
|
# ? Jan 4, 2018 21:27 |
|
wait wait hold on, roll back a few pagesAggressivelyStupid posted:Terry is in prison at the moment so it'll be a while, assuming templeOS even needs patched what? when did this happen?
|
# ? Jan 4, 2018 22:21 |
|
pipelined CPUs with branch predictors are also vulnerable to Spectre
|
# ? Jan 4, 2018 23:01 |
|
more information on the issues and mitigations: https://security.googleblog.com/2018/01/more-details-about-mitigations-for-cpu_4.html
|
# ? Jan 4, 2018 23:25 |
|
https://docs.google.com/spreadsheets/d/184wcDt9I9TUNFFbsAVLpzAtckQxYiuirADzf3cL42FQ/htmlview?sle=true#gid=0 Spreadsheet listing the status of AV vendors allowing the MS patch to install
|
# ? Jan 4, 2018 23:48 |
|
pseudorandom name posted:pipelined CPUs with branch predictors are also vulnerable to Spectre FOILED also
|
# ? Jan 4, 2018 23:53 |
|
lol. also how the hell did he manage to issue a cert for just under two months?
|
# ? Jan 4, 2018 23:58 |
|
60 days inclusive?
|
# ? Jan 5, 2018 00:00 |
|
infernal machines posted:lol. also how the hell did he manage to issue a cert for just under two months? Krankenstyle posted:60 days inclusive?
|
# ? Jan 5, 2018 00:02 |
|
Isn't that how let's encrypt rolls? And you're expected to automate cert renewal?
|
# ? Jan 5, 2018 00:03 |
|
Wiggly Wayne DDS posted:that's a 90 day cert... can't math, send help
|
# ? Jan 5, 2018 00:06 |
|
as a person that now works heavily with TLS, gently caress letsencrypt oh my goddddddddddddd
|
# ? Jan 5, 2018 00:07 |
|
Jonny 290 posted:as a person that now works heavily with TLS, how so?
|
# ? Jan 5, 2018 00:17 |
|
Jonny 290 posted:as a person that now works heavily with TLS, Wait, why are they bad?
|
# ? Jan 5, 2018 00:21 |
|
it is incredibly annoying and pissy to deal with customer letsencrypt poo poo when _they could just spend a few bucks and have us do all the TLS and it Just Works_ basically its kind of a mineshaft canary for Annoying Cheap Customer if youre ok with janitoring u own poo poo, go forth and go nuts
|
# ? Jan 5, 2018 00:22 |
|
2018 and sa does not support markdown
|
# ? Jan 5, 2018 00:23 |
|
Jonny 290 posted:it is incredibly annoying and pissy to deal with customer letsencrypt poo poo when _they could just spend a few bucks and have us do all the TLS and it Just Works_ Ah. OK, yes this is fine. I'm generally breaking all my own (personal) poo poo anyways.
|
# ? Jan 5, 2018 00:26 |
|
Wiggly Wayne DDS posted:more information on the issues and mitigations: quote:In response to the vulnerabilities that were discovered we developed a novel mitigation called “Retpoline” -- a binary modification technique that protects against “branch target injection” attacks. We shared Retpoline with our industry partners and have deployed it on Google’s systems, where we have observed negligible impact on performance. My vijda games... still fast???
|
# ? Jan 5, 2018 00:39 |
|
Don't you install the letsencrypt package for your distribution and let it Just Work by itself. That's what I did??
|
# ? Jan 5, 2018 00:47 |
|
Jonny 290 posted:it is incredibly annoying and pissy to deal with customer letsencrypt poo poo when _they could just spend a few bucks and have us do all the TLS and it Just Works_ They finally got certbot into CentOS 7 so I'm happy, a complete poo poo show before that though. Retarded Python dependencies that wipe out on a forced automatic upgrade.
|
# ? Jan 5, 2018 00:48 |
|
mrmcd posted:My vijda games... still fast??? Retpolines are for Spectre variant 2, the one where you fill the Branch Target Buffer with malicious prediction data in one process (or the same process, for JITs) and then invoke some trusted code to cause it to speculatively execute basically anything based the BTB and then measure the result. So your games are still fast because they're not going to update the game executable to mitigate this attack. edit: oh, and apparently the retpolines hack exist because the Indirect Branch Restricted Speculation microcode update is even worse on performance than the Page Table Isolation patch, and if you don't have a kernel ABI or have to worry about third-party device drivers you can just change the compiler to generate code that can't be exploited pseudorandom name fucked around with this message at 01:03 on Jan 5, 2018 |
# ? Jan 5, 2018 00:56 |
|
MrMoo posted:They finally got certbot into CentOS 7 so I'm happy, a complete poo poo show before that though. Retarded Python dependencies that wipe out on a forced automatic upgrade. All glory to the bash wrapper for that poo poo, it's still finicky as turbofuck, and about once a year I need to go fiddle with it. Still comes out to ever so slightly cheaper in $/hour * time spent for me than buying a cert, so
|
# ? Jan 5, 2018 02:00 |
|
aha we finally find out what https://twitter.com/taviso/status/919193639422537728 was about : https://bugs.chromium.org/p/project-zero/issues/detail?id=1389 win32k: Using SetClassLong to switch between CS_CLASSDC and CS_OWNDC corrupts DC cache
|
# ? Jan 5, 2018 02:23 |
|
|
# ? May 22, 2024 12:24 |
|
Wiggly Wayne DDS posted:aha we finally find out what Amazing.
|
# ? Jan 5, 2018 02:42 |