https://svnweb.freebsd.org/base?view=revision&revision=36816...
1,632 karma · joined March 25, 2016
https://svnweb.freebsd.org/base?view=revision&revision=36816...
No keyboard, no trackpad, no GPU drivers (besides an unaccelerated framebuffer, setup and left by iBoot). There's some indication of Wi-Fi support, as it's a Broadcom FullMAC device (brcmfmac on Linux). But yeah, I'd say unusable without a USB hub and a myriad of external devices. Again, said as much in the article.
"Later, in January 2002, Caldera International (now SCO Group) relicensed (but has not made available) several versions under the four-clause BSD license."
https://en.wikipedia.org/wiki/Ancient_UNIX
Nobody is going after a v7 Unix port, the sources for ancient Unix are widely distributed on TUHS (The Unix Heritage Society, tuhs.org) and such.
Combined with OS security features like pledge(2) on OpenBSD, which has separate sendfd/recvfd promises, and unveil(2), an unprivileged process can have its access to the filesytem and other system attack surfaces (system calls, ioctls) removed completely or restricted and only be able to act on file descriptors passed by a privileged parent.
https://man.openbsd.org/pledge.2
https://man.openbsd.org/unveil.2
A skeleton example of a common style for OpenBSD privsep daemons, which uses 3 processes
https://github.com/krwesterback/newdctl
https://github.com/krwesterback/newd
This uses OpenBSD's imsg(3) API, an abstraction around the underlying Unix sendmsg/SCM_RIGHTS functionality, along with other IPC abstractions.
https://man.openbsd.org/imsg_init.3
This driver is I believe part of the common codebase that AMD upstreamed to the Linux kernel, it's shared with its proprietary driver on other platforms.
On OpenBSD, all processes of chromium, including the main browser process are tightly pledged and unveiled by default, write access to the users home directory is limited to only a few paths (~/Downloads), and a few config directories. As a consequence, users are rather forcibly taught safer usage pattern of copying files into the unveiled paths when uploading, which as Bob Beck alludes to in his slides below, is a reasonable compromise to every website having access to your ssh keys.
https://www.openbsd.org/papers/bsdcan2019-unveil/mgp00022.ht...
https://github.com/openbsd/ports/tree/master/www/chromium/fi...
Yeah, this isn't going to fly for OpenBSD, which doesn't have ABI stability, programs are expected to use libc. Program for the API, not the ABI. The author is clever, but misguided.
Unlike with yours, no decryption script is required, gnupg can decrypt them as-is.
$ gpg --output decrypted.img --decrypt <model><ver>.gpg.img
binwalk can handle the rest.
It looks like they mainly did this for verification, as there is an RSA public key embedded on the device. It unfortunately does make it nearly impossible to flash any modified firmware such as OpenWRT, which is very frustrating. I say nearly as I haven't fully investigated the models that I own. Some routers have a emergency recovery flash method that may bypass the PGP check, I recall older D-Link models having a web flasher integrated into u-boot.
Once all of those platforms have a more recent OpenSSH, you can ssh-add -K to add keys to your SSH agent.
EDIT: I see it now.
OpenSSL offers some additional APIs for certain TLS 1.3 features, but are hardly mandatory.
https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.1.1-...