HNHacker News
TopNewBestAskShowJobs

Genbox

582 karma · joined July 25, 2011

My name is Ian (Denmark) and I do science, security, algorithms, software architecture and high-performance stuff.

I built Farseer Physics Engine 3.0, SimpleS3 and about 25 other open source projects. Check them out over at https://github.com/genbox

I am also the founder and director of Chronos, a platform for investigating large-scale security incidents using forensics techniques.

submissionscomments
Genbox··on A Twitter employee used an internal tool to turn off my 2-factor authentication
There is no evidence that a Twitter employee did these changes. In fact, the MO matches a hacked account that was sold on the dark web.
Genbox··on Mozilla, Microsoft yank TrustCor's root certificate authority
This is great. Gave me a good chuckle.
Genbox··on Estonia saved its citizens 820 years by moving public services online
Estonia has greatly embraced the digital identity through smart cards. They have been on the forefront of digitalizing governmental services.

Website: https://www.id.ee/en/

Timeline of implementations: https://e-estonia.com/story/

Github: https://github.com/open-eid

Genbox··on Dropbox acquires Boxcryptor assets to bring zero-knowledge encryption to storage
Data encryption can be decoupled from key encryption. Let's say I hash the content of a file, encrypt the file with its own hash, and then encrypt the hash with the user's password.

This way you can have deduplication of data, and only an attacker that knows the content of the file can decrypt the file, but since they already have the file, it does not matter.

Genbox··on Ask HN: What is the most impactful thing you've built?
Work: Building a cyber investigations platform that can collect and forensically analyze thousands of computers within an hour. Not due to big scale cloud systems or anything like that, but rather due to efficient and hand-tuned data structures. Today we collect and analyze more than 150.000 computers for cyber investigations pr. year. Everything ranging from fraud investigations to large-scale ransomware attacks.

Private: Spent a few years on building Farseer Physics Engine. Back in 2007 it was used by almost all 2D games for Xbox and Windows Phone. Then Unity took over in 2013.

Genbox··on The case against the Twitter apology and our culture of performed remorse
Eloquently described. News websites I used to frequent have become echo chambers with little tolerance for opposing perspectives. The willingness to discuss becomes a thing of the past and the term 'facts' has been twisted so much that it now means 'your opinion'.
Genbox··on GitHub CTO – Biggest architectural mistake was going full microservice
Jason Warner is no longer Github's CTO (since July 2021). He is now the Managing Director for Redpoint Ventures.
Genbox··on How fast is ASP.NET Core?
Dup of https://news.ycombinator.com/item?id=33592368
Genbox··on Cuckoo Filter: Practically Better Than Bloom (2014) [pdf]
Similarly, there is Binary Fuse Filters (https://arxiv.org/abs/2201.01174) [1]

The paper includes comparisons with Ribbon filter

[1] Graf, T. M., & Lemire, D. (2022). Binary Fuse Filters: Fast and Smaller Than Xor Filters. arXiv. https://doi.org/10.1145/3510449

Genbox··on pigz: A parallel implementation of gzip for multi-core machines
Kotlin does have exceptions[1]

[1] https://kotlinlang.org/docs/exceptions.html#java-interoperab...

Genbox··on AdaptOver: Persistent DoS and IMSI Extraction from 3.8km away
When you trigger an UE, does it happen from the cellular mobile device or the cell tower? I assume the mobile device.

In either case, I would imagine it requires a directional and high-gain setup to reach 3,8km. Does that not limit the potential of the attack vector on large scale?

Genbox··on Announcing KataOS and Sparrow
I've always said that computer science has a PR problem.

Formally verified applications is such a foreign concept to people that when you say "verified correct" they get skeptical and mistrust the whole concept.

Saying something is "secure" when it has been formally verified will be received with a grain of salt, but it is much easier to say than:

"we wrote a detailed specification that define the whole system via algebra, and then we let a theorem prover run all possible permutations of the specification It has now tested a billion edge-cases and we have reached a state where it no longer finds any deviation from the specification."

At least it is provable better than someone saying "it is secure because we think it is".

Genbox··on A Danish political party led by an AI
What is the process/oversight on changes in human politicians?
Genbox··on OneRNG – Open Hardware Random Number Generator
You are correct. However, history teaches us important lessons.

Back in the old days when cryptography was a weird concept nobody understood, we had the Linear Congruential Generator (LCG)[1] to generate pseudo random numbers. It looked random, so we used it.

Then some egghead said "give me a few outputs of your LCG and I can reverse it back to a seed"[2]. Oh damn! What do we do? The obvious solution: Reseed the RNG before you use it.

Then another egghead said "I've invented Mersenne Twister (MT). It is faster and more secure"[3]. So we switched to that. No need to reseed the RNG anymore!

But then someone said "We have broken MT. Take some numbers. Give it to this app, and it will give you the seed"[4]. And so we started to reseed the RNG again.

Today it is hash-chaining, XOR-shift and improved linear-feedback shift register algorithms.

Do you want to put your money on that we have now reached bug-free well-enough PRNGs that we no longer have fiddle with reseeding? It is a dangerous gamble. More than anything I wish we were clever enough to create robust, correctness proven and high-performance PRNGs so we could stop all this nonsense - but alas, here we are.

[1] https://academic.oup.com/comjnl/article/1/2/83/425243

[2] https://en.wikipedia.org/wiki/Marsaglia%27s_theorem

[3] http://www.math.sci.hiroshima-u.ac.jp/m-mat/MT/ARTICLES/mt.p...

[4] https://github.com/altf4/untwister

Genbox··on Microsoft’s out-of-date driver list left Windows PCs open to malware attacks
I largely concur with Raymond Chen's reasoning on the subject. However, there are two distinct factors Microsoft does not seem to realize as problems:

1. There has been a precedent in Windows to run everything as local administrator. Linux has always had the user vs. root paradigm, but Windows - at least in the client versions - has always just defaulted to administrative accounts.

2. Features designed to provide more fine-grained control of token privileges, such as UAC, process integrity, and virtualization, have been excluded from security bug bounties as being "not a real security boundary". This stance is somewhat counterintuitive and quite dangerous.

Combine those two with the fact that Microsoft never provided sane secure defaults for any of their software; it just goes to show that Microsoft is not concerned nor bothered with securing their software.

That shifts the issue of "don't run as admin, stupid" responsibility from the user to Microsoft to a large extent.

Genbox··on Compiler Explorer
Hi Matt. Thank you for such an excellent project.

I'm pretty sure you already know of sharplab.io. A lot of us C# devs prefer it over Compiler Explorer for a bunch of reasons, but the main one is really the speed.

My guess is that Sharplab gets it speed because it hooks directly into the JIT compiler itself. There is no overhead from touching disk or the linker.

Genbox··on Netflix’s ad tier will cost $6.99 a month and launch in November
HBO, Amazon Prime, Netflix, Disney+

Watch the same 3-4 series again and again. Never watch any of the featured content. It is not quality content.

Genbox··on The Nord Stream leaks are a wake-up call for countries with vulnerable pipelines
Very philosophical take on things.

> There are no immovable mountain. Everything is vulnerable, everything exists because it, or something esle, didn't break/transform it into something else.

Vulnerability is what humans would use do describe how something alive and conceptually "whole". It is something can can be exploited to inverse those properties. If we are all just matter in different configurations, in a universe full of matter in infinite combinations, "vulnerable" loses its meaning.

So perhaps, in the larger scale of things, nothing is truly vulnerable.

Genbox··on Have I Been Squatted?
A few things:

- You contact their hosting provider and report it.

- Check if the top-level domain registrar has a form for it and report it.

- If your trademark has been infringed, you can create a Uniform Domain Name Dispute Resolution Policy (UDRP) against the registrant [1]

- You setup DKIM, SPF and DMARC on your domain to avoid them from spoofing your domain.

[1] https://www.icann.org/resources/pages/filing-udrp-2013-05-21...

Genbox··on LastPass confirms hackers had access to internal systems for several days
I interpret "hacked" as "compromised". Suspicious activity and vulnerability reports don't meet that criteria. In that case, only 2015 and 2022 would qualify.

The activity in 2011 was never confirmed to be a breach. It was a overcautious response on LastPass's part after seeing an outlier in the logs. The investigating party gave a report saying they couldn't find anything, and the CEO later gave a statement saying they overreacted to an outliter out of an abundance of caution.

Genbox··on LastPass confirms hackers had access to internal systems for several days
My recollection says twice. However, the number of times a company tells the media it has had a breach does not correspond to the number of times data has been exfiltrated.

Notifying customers of a breach is a much more ethical approach than sitting on the information. In some countries it is even mandetory to report breaches to affected users, which I personally think is better than not doing it.

Genbox··on LastPass confirms hackers had access to internal systems for several days
> but that doesn't mean it wasn't, or even that evidence doesn't exist - right?

That is how it works. You can't prove a negative, so the data is not compromised until the investigation shows that it is.

The developer's credentials was compromised, but those credentials don't give access to the production databases where customer data is stored, then there is a good reason to assume no customer data was breached. Of course you still do due diligence and investigate anyway, just to be 110% sure.

Genbox··on Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs
Unless the TPM performs the cryptographic operations on the chip itself. TPM can do asymmetric crypto using a key in it's secure storage.

It would require Microsoft to use a different authentication scheme based on ephemeral signed tokens instead of OAUth to be beneficial for security. That is very unlikely to happen.

That scheme would also only reduce the access timeframe from whatever the OAuth token's lifetime is, to a timeframe constrained to the amount of time the computer (the key) is online.

Genbox··on Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs
> Hold on, can't the same attacker now read my access tokens out of ~/.mozilla/firefox or ~/.config/chromium?

You are correct. There is no such thing as "multiple OS-level controls". In Google Chrome on Windows, the cookies in question are stored in an SQLite database at '%localappdata%\Google\Chrome\User Data\Default\Network\Cookies'. The cookie is named TSAUTHCOOKIE and contains an authentication token.

There is the same level of protection on this file, as there is on the Microsoft Teams Cookies database.

Source: I build forensics investigation tools for a living.

Genbox··on Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs
The files in question[1] are only readable by the current user. That is the default for files stored in the user's folder. I just checked my own installation and the files does have the correct permissions.

Having tokens in clear text is not a serious security issue as long as the files cannot be accessed by anyone else.

The best way of storing credentials today is to either:

A. Use asymmetric cryptography and store the private keys in a non-exportable format like the Trusted Platform Module.

B. Use an API like the Data Protection API in Windows and store the secrets under "User scope". This encrypts the secrets with the user's logon password.

Only solution A above protects against malware running as the current user, however, the solution is also not very portable and technically difficult to maintain across platforms.

There is no way Microsoft (or any other software vendor on the market today) can truly protect against credential stealing if malware is running in the context of the user. The exception is solution A above, but even then the attacker would have brief access to the remote systems as long as the user is concurrently using those systems.

[1] https://www.vectra.ai/blogpost/undermining-microsoft-teams-s...

Genbox··on As EU is asked to mobilise all available energy, anger at Germany grows
> Of course we have to hope for technical advances to convert it to a more manageable form

What do you mean by that? Dry-cask storage is very manageable and have been used for decades.

> radioactive waste will have to be stored for a million years

Uranium-235 is a naturally formed isotope of uranium, and it has a half-life of 703 million years. In a nuclear reactor, U-235 is split into many different fission products such as Caesium-137, Caesium-135, Zirconium-93 and many others. The longest living fission product is Iodine-129, which has a half-life of about 1.57 million years.

In essence, we have high-radiation and high half-life isotopes naturally formed everywhere on earth. Once they are mined and burnt in a fission reactor, these stable isotopes are split them into many different isotopes, which last for a shorter amount of time. It is a little bit nonsense to say we need to store it for a million years. It would be the same as saying we currently need to store U-235 for 703 million years.

It is all about concentrations and the type of radiation that is emitted. Nuclear waste is not "a problem" - it is a process. Right not it is safe, relatively cheap and somewhat efficient.

Genbox··on Covid-19 Is Still Killing Hundreds of Americans Daily
Excess mortality is not a great measurement for this. Not only is there no clear standard for calculating it across the world, but there are also large errors associated with the data it is calculated from.

A lot of models do not take age distribution into account. For example, if you have a "boomer" generation that is transition into a high-risk-of-dying age group, then the projected number of deaths will be low and the deaths high, making it look like you have a lot of excess mortality.

Slightly more complex models that project the number of deaths from a larger timeframe (for example 5 years) minimize this kind of error, but there are still many more factors to take into account.

EuroMOMO is a European standard for calculating excess mortality. They calculate data variance and thresholds where the model would consider deaths outside of statistical error[1].

Across European 28 countries (420 million people) their model shows[2] a considerable amount of excess deaths in 2020, 2021 and 2022. So according to that model, the pandemic is very much still a present danger.

[1] https://www.euromomo.eu/how-it-works/methods/

[2] https://www.euromomo.eu/graphs-and-maps/

Genbox··on Tell HN: Latest Windows security update is locking all our computers
BitLocker does validation of the Platform Configuration Register (PCR) in the Trusted Platform Module (TPM). It does this to prevent a whole slew of exploitation techniques.

PCR banks 0 to 7 have well-defined values, so an accumulator in the TPM hashes the values and BitLocker uses the values as part of the encryption key derivation algorithm. If the PCR hash changes, the BitLocker key will become invalid.

However, BitLocker can have several "protectors" as they are called. One that is enabled by default is a "Recovery Key" protector, which is not protected by the TPM. It is a 48 digit password that must either be printed, stored on a non-encrypted medium (like an USB device) or uploaded to an Azure AD or Microsoft account.

Your colleagues must have enabled BitLocker themselves, as it is not enabled by default. They must also have been through the "backup recovery key" process, as BitLocker requires manual user interaction for this part.

It sucks when there is an update to PCR banks - and usually the update won't install if PCR7 binding is enabled - but users that enable advanced security features also have part of the responsibility to ensure they don't get locked out of their own systems.

Genbox··on Covid: Summary of lab-origin hypothesis
The laboratory leak could have happened anywhere between the first collection of a virus sample from bats in 2017 and up until the pandemic start in end of 2019. It is likely the virus was transmitted by personel from Wuhan Institute of Virology to Italy before the first doctors pushed the big panic button.
Genbox··on High speed Unicode routines using SIMD
I'm at the point where I can no longer see any reason to use UTF-16. UTF-8 is used everywhere today and constantly converting between the two is not only inefficient, but also introduce a risk of bugs/corruption.
← PreviousPage 4 of 7Next →