I'm sure the NSA is happy about unauthenticated initrds. I'd be very surprised if such manipulation was never used in practice.
3,927 karma · joined October 30, 2012
I'm sure the NSA is happy about unauthenticated initrds. I'd be very surprised if such manipulation was never used in practice.
Threema and Matrix are quite different. Matrix is a centralized / federated system where data is stored on the server. Threema uses a decentralized protocol, where data and metadata (including groups) are stored on the devices only. This has advantages and disadvantages, depending on your requirements.
At the price of 50k €, you're in the Tesla Model 3 range.
I also worked on a project once where unique IDs of objects could get quite large (because they were random u64 integers). Those IDs were serialized and sent to a browser. Sometimes two objects were viewed as "the same" in the browser application because their IDs were truncated by the floating point precision issue.
Try this:
>> const x = 288230376151711740;
>> x == x + 1
true
Or this: >> 2\*1024
Infinity
JS doesn't even have integers. It only has floats. JS is by far the worst language I know of when it comes to integer support.If you want a better example of arbitrary precision integers, try Python, for example.
(Disclaimer: I'm a contributor)
The cool thing about defmt is that it doesn't do string formatting in the program itself. The problem with logging is that many formatting operations - like formatting floats as strings - can be very expensive on small embedded microcontrollers, both the runtime cost as well as a big increase in binary size. Instead, defmt sends the memory representation of the logged values to the host (over an arbitrary transport like UART or RTT). The formatting / visualization of the logs is then handled on the host side.
This has the downside that you cannot simply connect a random serial console to your microcontroller for logging, because defmt uses its own non-plaintext format. But it has the huge advantage that you can do very efficient logging in the microcontroller firmware, and then visualize all those logs on your host with an appropriate client.
More details can be found in the article itself.
In the case of Apple, I agree. It doesn't make sense to use their ecosystem without trusting them fully.
However, in the case of Android / Google Play, right now the developers have the option to choose between APKs and App Bundles. Why take away that choice? If App Bundles are superior, then developers will choose that option freely. (Google Play is already really pushy when recommending to use App Bundles.)
If it's bound by the OS permission system and doesn't have full root, it might be able to replace apps with another version that is signed by a different key (using the "programmatic app installing" permission). However, that would wipe the app data and break app updates. Not even adb can replace an app with one that is signed by a different key without data loss (adb install -r). And I'm sure a lot of developers ask for this feature.
Apps that currently provide reproducible builds: Signal, Threema, Telegram. (Probably others as well.)
Colored emoji are working fine in my alacritty terminal. Here's my fontconfig file: https://github.com/dbrgn/dotfiles/blob/master/fonts.conf
However, it did manage to detect a rootkit on one of my system once (many years ago, when I used to phpMyAdmin, which had some kind of RCE). So it's better than nothing, and it would probably have detected the backdoor from the article (which does not even attempt to hide itself).
A package manager usually employs signatures. In that case, the problem could have been avoided (unless the signing process itself is also compromised, then you're out of luck).
Never automatically download any remote code without at least checking the checksum.
Their business model may be OK, it's just something that you need to be aware of (and a lot of people I've talked to aren't).
From the privacy policy:
---
We collect this information as you use the Site, Software, and/or Services:
- User Content. This consists of all text, documents, or other content or information uploaded, entered, or otherwise transmitted by you in connection with your use of the Services and/or Software. For more information about how we care for and protect your User Content, please see our User Trust Guidelines.