| ▲ | akdev1l 18 hours ago | ||||||||||||||||
> hijack your ssh command so you'll touch it yourself, thinking you're authorizing something else than you actually are. That doesn’t do anything at all. 1. If the attacker is redirecting you to a different host then ssh will simply refuse to connect due to known_hosts (I guess they could have added to that file too, redirect you to a honeypot and then hopefully you’ll run “sudo” before realizing but then at that point just hijack “sudo” itself in the local machine) 2. If the attacker is trying to let you connect and eavesdrop your connection to still credentials then that also still doesn’t work as the handshake for ssh is not vulnerable to replay attacks The attacker could trick you into signing something I guess but then that still doesn’t do anything because secrets are not divulged at any point I guess if the yubikey is also used for `sudo` then your attack makes more sense, as the attacker could prompt you to authenticate a sudo request when you call the evil `ssh` | |||||||||||||||||
| ▲ | Liskni_si 18 hours ago | parent [-] | ||||||||||||||||
Okay let me elaborate how I envision that attack to work: 1. attacker wants to use your yubikey-backed ssh key, let's say for running ssh-copy-id once with their own key so they can gain access to your server 2. thus they need to trick you into touching the key when they run that command 3. the best way to trick you is to wait until you do something where you'd normally need to touch that key yourself 4. so they alias ssh to a script that detects when you're trying to connect to this server yourself, and invoke ssh-copy-id instead, which prompts you to touch the yubikey and you do 5. spit out a reasonable looking error (something that makes you think "bloody DNS, it's always DNS, innit" or something silly like that); then they undo the alias so you succeed on the next try and suspect nothing | |||||||||||||||||
| |||||||||||||||||