this post was submitted on 22 Mar 2024
626 points (98.9% liked)

Technology

59374 readers
3846 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

The attack has been dubbed GoFetch: https://gofetch.fail/

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 10 points 7 months ago* (last edited 7 months ago)

So the attack is (very basically, if I understand correctly)

Setup:

  • I control at least one process on the machine I am targeting another process on
  • I can send data to the target process and the process will decrypt that

Attack:

  • I send data that in some intermediate state of decryption will look like a pointer
  • This "pointer" contains some information about the secret key I am trying to steal
  • The prefetcher does it's thing loading the data "pointed to" in the cache
  • I can observe via a cache side channel what the prefetcher did, giving me this "pointer" containing information about the secret key
  • Repeat until I have gathered enough information about the secret key

Is this somewhat correct? Those speculative execution vulnerabilities always make my brain hurt a little