Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork108
A ssh server that knows who you are. $ ssh whoami.filippo.io
License
FiloSottile/whoami.filippo.io
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
An ssh server that knows who you are.
ssh whoami.filippo.ioED25519 key fingerprint isSHA256:qGAqPqtlvFBCt4LfMME3IgJqZWlcrlBMxNmGjhLVYzY.
RSA key fingerprint isSHA256:O6zDQjQws92wQSA41wXusKquKMuugPVM/oBZXNmfyvI.
When ssh tries to authenticate via public key, it sends the server all your public keys, one by one, until the server accepts one. One can take advantage of this to enumerate all the client's installed public keys.
On the other hand, GitHub allows everyone to download users' public keys (which is very handy at times). Ben Cox took advantage of that andbuilt a dataset of all GitHub public keys.
This is a pretty vanillagolang.org/x/crypto/ssh Go server that will advertise(publickey,keyboard-interactive) authentication. It won't accept any public key, but it will take a note of them. Once the client is done with public keys, it will trykeyboard-interactive, which the server will accept without sending any challenge, so that no user interaction is required.
Then it just lets you open a shell+PTY, uses the public keys and Ben's database to find your username, asks the GitHub API your real name, prints all that and closes the terminal.
All the interesting bits are inserver.go.
If this behavior is problematic for you, you can tell ssh not to present your public keys to the server by default.
Add these lines at the end of your~/.ssh/config (after other "Host" directives)
Host * PubkeyAuthentication no IdentitiesOnly yesAnd then specify what keys should be used for each host
Host example.com PubkeyAuthentication yes IdentityFile ~/.ssh/id_rsa # IdentitiesOnly yes # Enable ssh-agent (PKCS11 etc.) keysIf you want you can use different keys so that they can't be linked together
Host github.com PubkeyAuthentication yes IdentityFile ~/.ssh/github_id_rsaAbout
A ssh server that knows who you are. $ ssh whoami.filippo.io
Resources
License
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors4
Uh oh!
There was an error while loading.Please reload this page.