Live data from Hacker News

TinySSH is a small SSH server using NaCl, TweetNaCl

github.com

111–120 of 128 posts

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#111

I don't see anyone sensible replacing OpenSSH with anything else for two fundamental reasons: 1. OpenSSH has more eyes on it and more deployments than almost any other piece of non-OS/kernel software on the planet. By this stage in its life, it is very mature. Look at the vulnerability database, OpenSSH has not had a serious REMOTE vulnerability for a long time, all the recent vulnerabilities require the attacker to…

Bad reasons to trust code: * “Many __informal__ eyes have probably looked at it” * Lack of recent __number__ of (known) vulnerabilities * “Serious guys” (appeal to authority) I think you’re using short-hand, but perhaps the short-hand should be different. E.g. * A list of audits by date, independent organization, is provided __here__ which is evidence of review * The vulnerability acknowledgement, correction and rele…

> I think you’re using short-hand

Yes I was using short-hand.

Because you're the only one here trying to make the stupid argument that OpenSSH code is somehow not trustworthy.

Frankly, if you don't trust OpenSSH code for the reasons you suggest, then you should not be trusting any Operating System, whether BSD, Linux, Mac or Windows.

As I said, OpenSSH is used extensively, INCLUDING in security-critical environments, the sort of security-critical environments that you can be sure have done their homework, even if they don't publish it.

The simple fact of the matter is this:

Given the widespread global deployment of OpenSSH for DECADES now, if there were shortcomings in the code, you would have heard of it because we would be seeing BILLIONS of compromised endpoints.

Fact is, there aren't, unless you haven't bothered to update your system in the last decade.

So you can talk about fuzzing or whatever until you are blue in the face, but widespread global deployment is hard to beat, because that's REAL WORLD, failed attempts at finding zero-day exploits and all !

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#112

tinyssh is great. One use case for it that people may not know about: using it during Linux boot so you can remotely unlock encrypted drives. I have a headless NAS server that uses dm-crypt/LUKS under ZFS. When I update my kernel/ZFS I remotely reboot the server, wait a few seconds, and then ssh into a tinyssh powered encryption key prompt to unlock the drives. (I am immediately booted from ssh, as tinyssh exits.) I…

I thought that everyone has switched to Clevis + Tang for that? https://access.redhat.com/documentation/en-us/red_hat_enterp... It's fully automated and supposed to be much more secure. Has anyone got experience with it?

I've seen a bit about Clevis. Is there a major difference between using this, and systemd-cryptenroll?

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#113
post #84
post #44

Earlier quoted context omitted.

Question: when remotely unlock the boot disk via ssh, how do you make sure the boot has not been compromised and that you are not just sending the password to the bad guys? At some point I wanted to do something with utrablue [1], to work over network rather than Bluetooth, but then it was in go and I got lazy suddenly :) [1] https://github.com/ANSSI-FR/ultrablue

Isn’t there a host SSH key involved? The server itself may have been physically breached, and if so you can’t trust anything. But, if your host key matches, you should be confident that at least you’re logging into the correct machine (there was no IP takeover).

If the server was breached, what stops somebody from copying the host key to their new system.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#114
> State-of-the-art crypto: ssh-ed25519, curve25519-sha256, chacha20-poly1305@openssh.com

> Older standard: ecdsa-sha2-nistp256, ecdh-sha2-nistp256, aes256-ctr, hmac-sha2-256 removed in version 20190101

Bah! I've soured on ed25519 because two of the tools I depend on have lackluster support.

We have one tool that leverages Macbook TouchID as a hardware keystore, and it doesn't support ed25519, only ecdsa (I don't know whether this is a TouchID or a tool limitation, I suspect tool). The other is that recent versions of Gerrit, which leverages Apache SSH, will crash the SSH connection when presented with some ed25519 certificates, which is funny since Gerrit does not support certificates!

I really wish ed25519 was more widely and better supported, or that TinySSH supported ECDSA.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#115

I like this person's work. Check it out: https://github.com/janmojzis - tinyssh - TinySSH is a small server with less than 100,000 words of code. Language: C. Stars: 1.1k. Forks: 65. - acmeshell - Shell-style client for LetsEncrypt. Language: Python. Stars: 31. Forks: 6. - dq - Recursive DNS/DNSCurve server and command-line tool to debug DNS/DNSCurve. Language: C. Stars: 23. Forks: 1. - pstree - Unix process tree vie…

some of those look like spoofs?

How?

I guess perhaps to you they would.

But why don’t you check it out rather than writing a silly comment?

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#116

tinyssh is great. One use case for it that people may not know about: using it during Linux boot so you can remotely unlock encrypted drives. I have a headless NAS server that uses dm-crypt/LUKS under ZFS. When I update my kernel/ZFS I remotely reboot the server, wait a few seconds, and then ssh into a tinyssh powered encryption key prompt to unlock the drives. (I am immediately booted from ssh, as tinyssh exits.) I…

"tinyssh is great."

Agreed.

A static tinysshd works well for the small userlands I create.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#117
post #29

tinysshd doesn't implement unsafe features (such as password or hostbased authentication) Isn't password support useful for shared devices, like printers and routers? How would one enroll his personal keys on something like a car?

You wouldn't, because you wouldn't be SSH'ing in to a car. I would hope such things wouldn't even be possible.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#120
post #44

Earlier quoted context omitted.

Question: when remotely unlock the boot disk via ssh, how do you make sure the boot has not been compromised and that you are not just sending the password to the bad guys? At some point I wanted to do something with utrablue [1], to work over network rather than Bluetooth, but then it was in go and I got lazy suddenly :) [1] https://github.com/ANSSI-FR/ultrablue

What are the best options to solve this problem? It’s a hard problem imho for most threat models. If the booting machine has been compromised and i use my usb connected keyboard to enter the full disk encryption key I would run into the exact same issues, no?

Theoretically you could use secure boot with custom keys to ensure that your boot chain is not modified and you could use TPM for SSH host keys storage to ensure that it's not possible to copy them.
Post reply on HN