LaurieWired Profile picture
Nov 4, 2024 4 tweets 2 min read Read on X
Linux has a new(ish) syscall you should know about.

mseal ("memory sealing") locks memory regions against modification. Many shellcode techniques are blocked since executable permissions can’t be added to sealed memory.

Here’s how it works: Image
mseal adds a VM_SEALED flag to memory regions, stopping attackers from using syscalls like mprotect and munmap to alter permissions or remap memory.

This hardens against common exploits by ensuring protected memory stays intact during runtime. Image
The syscall proved...controversial.

(read the linux mailing list on the subject, it's a doozy)

Linus criticized mseal's implementation as “nonsensical” for its inconsistent application of sealing rules across memory operations. Thankfully, they eventually came to a consensus. Image
mseal is now available in kernel 6.10+

To use it, apps need to seal sensitive memory regions via direct syscall invocation.

It's not an automatic process, but it's an interesting new tool that I hope to see more of, especially in highly targeted applications like web browsers Image

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with LaurieWired

LaurieWired Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @lauriewired

Mar 13
Ken Thompson, upon receiving the Turing award, wrote a terrifying paper.

“Reflections on Trusting Trust” illustrates a scenario of original sin.

Because the C compiler is written in C itself, a compromised compiler can self-replicate with no trace in source code. Image
If you can’t trust your compiler, you can’t trust any compiler you build with it either.

Sin in the family tree, no matter how distant, can propagate to your clean code even decades later.
This creates a recursive paradox. What if the tools used to validate a compiler, are themselves products of said compiler?

Source review never guarantees security. You have to verify the entire ancestry. Image
Read 4 tweets
Mar 10
In 1960s Soviet Russia, a computer network was proposed decades before the internet.

“ОГАС” had concepts of Cloud Computing, virtual currencies, and a data-driven economy.

At a cost of $300 million, 300k operators, and a 30-year rollout, it was killed by politics. ОГАС, National Automated System for Computation and Information Processing
Glushkov, the creator, envisioned technology as a tool for government optimization.

The claimed savings returns would be fivefold over a 15 year period.

Banks, factories, and offices hooked up to cities; with information further distilled to a central hub at Moscow. Image
But it didn’t stop there.

OGAS was not just a mere optimization system. Natural language processing would allow humans to communicate directly with computers.

Eventually, they sought to achieve a sort of “information immortality”; the upload of human minds.
Read 5 tweets
Mar 4
Modern Computing is only possible because Honeywell filed a lawsuit a few minutes early.

The invalidation of ENIAC’s patent in Honeywell vs Sperry Rand placed the invention of the digital computer into public domain.

Without it, the U.S could have easily lost tech dominance. Image
Sperry Rand wanted $2.3 Billion (inflation-adjusted) from Honeywell, for infringing on “arithmetic operations using electronic circuits”.

The ENIAC patent was so broad, they could legally demand royalties for *all* general-purpose electronic computers. Image
The industry of computing was at risk of complete monopolization.

Whoever filed first could influence jurisdiction.

Honeywell rushed to file a patent invalidation in Minnesota; more favorable to them.

Sperry was a few minutes slow, filing an infringement case in D.C. Image
Read 5 tweets
Mar 1
If most LLM output feels unimpressive, you probably dislike phatic communication, and prefer the anti-inductive.

Anti-inductive speech favors non-pattern-following responses that can’t be easily predicted...the anthesis of how LLMs function. Image
Most humans prefer phatic-speech, which likely explains the popularity of CBT as the safe “default” therapy.

If you can’t stand “therapist-talk”, you likely have a cognitive style that deprioritizes EQ.
In my own experience, anti-inductive enjoyers are overrepresented in CS-fields.

Perhaps this is why so many programmer-types are unimpressed by model advances tuned towards advancements in emotional subtlety.

Frankly, it's difficult for me to appreciate the phatic.
Read 4 tweets
Feb 10
How many tabs do you have open?

10? 50? 200+?

High numbers tell us a lot about personality. Memory offloading has always been a cognitive strategy; in the modern era it’s just more likely to happen in a browser instead of paper. Image
Tab hoarders fall into a few categories:

- Browser as external memory expansion
- Loss aversion / high anxiety
- High cognitive tolerance for parallel processing
- Zeigarnik effect abusers
The Zeigarnik effect is the tendency to remember and be more affected by incomplete tasks more than complete ones.

In small doses this can be an effective study strategy. Abuse of high-number open tabs creates persistent low-level tension until you resolve them. Bluma Zeigarnik
Read 5 tweets
Jan 28
Most hashing algorithms are designed to avoid collisions.

What if they weren’t?

Locality-sensitive-hashing (LSH) is a way to group similar inputs into the same “buckets” with high probability.

Collisions are maximized, not minimized. Image
As a malware researcher, I’m quite experienced with fuzzy hashing. LSH algorithms are a bit different.

LSH algos specifically reduce the dimensionality of data while preserving relative distance.

Think spam filters, copyright media detection, even music recommendations. Image
Building the initial hash tables (preprocessing) is quite computationally expensive, however the search phase is extremely fast.

FAISS by Meta, or ScaNN by Google are both good libraries to play with.

It’s trivial to get started in python, and both are GPU-accelerated. Image
Read 4 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(