MIT 6.5950 Secure Hardware Design – An open-source course on hardware attacks
255 points by imakwana 3 months ago | 19 comments- ignoramous 3 months agoIf you're looking for a quick overview, Satnam Singh who worked at Google on Silver Oak / OpenTitan, gave an interesting 50m talk related to his work: https://youtube.com/watch?v=ujmgPCIWuU4 / mirror: https://ghostarchive.org/varchive/ujmgPCIWuU4 [summary: https://g.co/gemini/share/07c6439e8a78 / mirror: https://archive.vn/51k4y]
OpenTitan (RISC-V based tamper-resistant open specification RoT/TPM/SE) themselves have a neat write-up on designing against hardware attacks: https://opentitan.org/book/doc/security/implementation_guide... / mirror: https://archive.vn/UqAVo
- imakwana 3 months agoThanks for sharing these links. Very interesting to explore this topic further.
I came across Satnam Singh's work first while learning about the Lava language/framework for FPGAs, glad to discover his more recent work.
- imakwana 3 months ago
- klop1 3 months agoI actually did these a while ago. Courses taught me a lot and have recommended it to friends since. Very grateful for the course team for making everything public :)
- Akhilmurali 3 months agoHey! I was curious how did you get access to the lectures? You said that the material is public, can you please help me locate the lecture vidoes?
- stavros 3 months agoI have the same question, I'd love to watch the presentations in my own time, but I don't want to sign up for something that will have strict deadlines, as my schedule doesn't allow that.
Does anyone know which kind of the two above this course is? I couldn't find that info.
- jprx 3 months agoYou can find PDFs of the lectures as well as the reading list here:
- jprx 3 months ago
- stavros 3 months ago
- Akhilmurali 3 months ago
- oytis 3 months agoSomewhat unrelated, but - is it just me or do other people notice too, that whenever a major university publishes course materials online, the instructors there are normally very young? It wasn't like that a while ago, e.g. when Coursera started, or it is not like that if you look at older MIT videos.
Does it reflect university teachers getting younger? Or younger teachers tend to give more effort to putting everything online? Or did my perception change with age?
- porridgeraisin 3 months agoYounger teachers get "out there" for the same class of reasons software developers today want to be more "out there" - website,twitter,etc - compared to the relatively quieter personal websites of the last generation.
- jprx 3 months agoPersonally, I learned programming when I was a kid by watching YouTube tutorials + reading random Internet sources. When helping build SHD, it was important to me that we "paid it forward" & made all our lab materials open for everyone to learn from.
Hopefully someone out there finds it useful!
- StefanBatory 3 months agoFrom my experience at uni, it was the young teachers that cared. Older ones would go through motions, teaching us what was the state of programming 20-30 years ago ;)
- porridgeraisin 3 months ago
- mettamage 3 months agoReminds me of hardware security at VUSEC Amsterdam :)
Good times!
- 3 months ago
- brcmthrowaway 3 months agoDoes this include Spectre?
- jprx 3 months agoYes!
Our labs include building your own real spectre attack against the kernel, bypassing ASLR and building ROP chains with various side channels, finding and exploiting backdoors in a RISC-V CPU by building a hardware fuzzer, and more.
(source: I designed the Spectre lab plus a few others)
All our labs are fully open source for anyone to try: https://github.com/MATCHA-MIT/SHD-StarterCode
If you give them a try, please do let us know what you think! We genuinely want these activities to be fun and approachable (we designed them like a big CTF) and welcome feedback from the community.
- SilverSlash 3 months agoAny plans to make lecture videos available as well?
- brcmthrowaway 3 months agoDo you support arm64e?
- jprx 3 months agoWe teach using Intel X86_64 CPUs for a variety of reasons
- Most academic research has been done on Intel systems, so it's easier for students reading papers to relate to their experiences in the labs
- X86_64 provides convenient cache flush and cycle measurement instructions in userspace
- Intel's strongly ordered memory model and cache inclusion policy makes cross-core side channels simpler to reason about
- Practically, it's easier to scale up server infrastructure on Intel (you can do most of the labs on inexpensive Intel-based Linux systems)
- For Rowhammer, our students attack one particular kind of DRAM that we have profiled and know works well with our machines
- Note that AMD's cache inclusion policy differs from Intel's- we only support Intel chips for now
Down the road I could see us moving to ARM for a few labs (perhaps a future PACMAN attack lab...?)
- jprx 3 months ago
- SilverSlash 3 months ago
- LPisGood 3 months agoIt starts with necessary background into cache side channels and covers transient execution attacks like Spectre.
- jprx 3 months ago
- oicu 3 months ago[dead]