Today, we are open sourcing Tetragon after several years of development. eBPF-based Security Observability & Runtime Enforcement.
isovalent.com/blog/post/2022…
Correct. Nobody is disagreeing with this. But when an exploit has happened, what else do you want to do other than to stop the malicious code as quickly as possible?
the actually malicious code was ROP payload and you didn't (cannot) stop that with eBPF programs. everything else you claim to do is at the mercy of the exploit writer's incentives. we've seen this theme play out so many times over the decades...
Obviously when you have Kernel RW you’re free to do anything, the question is what APTs do with that. If they commonly chose to return to userspace as root, than this kind of policies has value. I doubt they try to disable eBPF programs at the moment
Maybe I misunderstood how Tetragon works, but it should be able to detect earlier when the close() syscall returns. They probably just used a policy that lets the demo play out a bit
Weird, for years Google employees have been dismissing RAP for being incompatible with XOM (despite the latter being pointless with CFI), now suddenly since their employer is pushing KCFI (which tries to be a wanna-be RAP), that concern suddenly vanished: lists.openwall.net/linux-har…
I will be talking tomorrow about branch predictors and SLS. If this topic is of interest to you, please join me at @hardwear_io webinar (it’s free). #TooManySlidesTooLittleTime
not only irrelevant but also wrong. TC is not just about doing arbitrary computation but also doing it on *the same tape*. many TC claims i saw in exploit literature fail at that part.
While ucode 0x22 (as released as part of our blog) fixes the processor bug mentioned therein, ucode 0x24 (released in February) reintroduces it 🤦♂️
Can somebody at Intel *pretty, please* hand the ucode devs a proper source code revision management tool? Thanks!
New blog post from @_minipli : Watch Your Step(ping): Atoms Breaking Apart
grsecurity.net/watch_your_st…
Join us on a deep dive into a customer-reported issue that ended up being an Intel Atom CPU bug unfixed on a specific stepping. A microcode update fixing the issue is provided.
no & no. the mechanism itself would work for userland (PKU can even do a coarse-grained version w/o kernel assistance) but rewriting all the intentional remote stack sharing code is too much work.
I covered the pros and cons of the different spatial & temporal memory safety solutions as part of my PhD candidacy presentation. You may want to check it out here (Slides: shorturl.at/muJKO, starting from slide #80 and List: cs.columbia.edu/~mtarek/file…).
sorry, can't see all the tweets (some are protected?), what's 'this'? :) also the time's got at least CFI wrong, it's 2002 (2003 for the public), not 2005.
Here comes my new blog article describing some more adventures (CVE-2021-26341) with AMD's branch predictor. This time it's kind of a funny story... grsecurity.net/amd_branch_mi…
Join us in Part 2 of @wipawel's research into AMD's branch predictor, starting with a story of his first day working with @opensrcsec analyzing a single byte change to RAP and ending up with a CVE for a new case of Straight-Line Speculation on call/jmp: grsecurity.net/amd_branch_mi…
Dirty Pipe is a nasty upstream Linux kernel vulnerability affecting Linux >= 5.8, found by Max Kellermann: dirtypipe.cm4all.com/ It allows writing to arbitrary read-only files, similar to DirtyCoW. #grsecurity backported the silent fix in all patches after February 22nd.
Today we present deep research from our @wipawel into the branch predictor of AMD CPUs and abusing its behavior to exploit Spectre v1 much more easily than previously understood, culminating in reproducing an arbitrary kernel mem leak PoC in only 3 days.
grsecurity.net/amd_branch_mi…
Today's #grsecurity beta patch integrates a new defense from @_minipli for a difficult class of vulnerability in the Linux kernel. It will be enhanced with a new GCC plugin in the near future. See the commit log for more information, or soon, an in-depth knowledge base article.
Indeed! Finding individual bugs is great, but systemic risk reduction requires eliminating entire classes of vulnerabilities. Has been true for a long time - some like @paxteam have been preaching it for decades. Took a long time for the industry to accept it... (1/2)
what i've been really 'preaching' (more like, showing by example :) is about stopping classes of exploit techniques, not so much fixing bug classes per se (it happened on the sidelines). the latter is harder 'cos there're much more of them than exploit techniques.
We provided a fix for the first issue and all necessary backports. The commit message that was provided directly to Linus mentioned "This fixes CVE-2022-22942", but this has been inexplicably removed from the upstream commit: git.kernel.org/pub/scm/linux…
after many years of procrastination, private (née unreadable) kstacks are about to graduate from PoC to production. not possible without some existing infrastructure we've developed for UDEREF and other features over a decade ago. payoff++ :)
While the first thing that comes to mind when thinking “kstack” is RANDKSTACK, the first hits on Google point to @jonoberheide’s Stackjacking (paid ads?). Curious about the new feature ;)
the goal is simple: a given cpu can access only the current kstack, #PF on everyone else's (modulo some complications when such 'foreign' kstack accesses are intended). basically this is similar to what you already have in userland between process stacks.