Live data from Hacker News

PuTTY 0.64 released, fixing a security hole

chiark.greenend.org.uk

31–40 of 43 posts

Re: PuTTY 0.64 released, fixing a security hole

#31
post #14

Earlier quoted context omitted.

I have to ask: how are the PGP keys verified?

Through the Web of Trust: https://en.wikipedia.org/wiki/Web_of_trust http://www.pgpi.org/doc/pgpintro/ http://www.rubin.ch/pgp/weboftrust.en.html Essentially: with cryptography, you aren't concerned about the transport , you're concerned about the crypto . Signatures of the source or binaries will tell you if they've been changed. Signatures on keys will tell you who trusts those keys . If someone you trust trusts a…

That's very thorough, thank you!

I understand all those things in general, but I don't know the specific mechanism by which my local PGP install recognizes who else trusts this PGP key. I grant you that if the key is protected from MITM then all is well. I just still don't know this part:

What mechanism do I use, I who have no prior encounter with that key and no existing PGP setup or connection to any web, to validate that key?

I'm sure this is just a lack of familiarity with PGPs web of trust implementation, but lacking this info, I too just opted to trust the plain HTTP download (until I switched to Cygwin/OpenSSH to make it a moot point anyway).

Re: PuTTY 0.64 released, fixing a security hole

#32
post #31

Earlier quoted context omitted.

Through the Web of Trust: https://en.wikipedia.org/wiki/Web_of_trust http://www.pgpi.org/doc/pgpintro/ http://www.rubin.ch/pgp/weboftrust.en.html Essentially: with cryptography, you aren't concerned about the transport , you're concerned about the crypto . Signatures of the source or binaries will tell you if they've been changed. Signatures on keys will tell you who trusts those keys . If someone you trust trusts a…

That's very thorough, thank you! I understand all those things in general, but I don't know the specific mechanism by which my local PGP install recognizes who else trusts this PGP key. I grant you that if the key is protected from MITM then all is well. I just still don't know this part: What mechanism do I use, I who have no prior encounter with that key and no existing PGP setup or connection to any web, to valida…

Never mind, I see a higher ranked comment got an answer to this. I see the concept of keys signing keys and gpg --list-sigs. (Still no idea who might be at the end of that chain that I could actually verify though.)

Re: PuTTY 0.64 released, fixing a security hole

#33
post #31

Earlier quoted context omitted.

Through the Web of Trust: https://en.wikipedia.org/wiki/Web_of_trust http://www.pgpi.org/doc/pgpintro/ http://www.rubin.ch/pgp/weboftrust.en.html Essentially: with cryptography, you aren't concerned about the transport , you're concerned about the crypto . Signatures of the source or binaries will tell you if they've been changed. Signatures on keys will tell you who trusts those keys . If someone you trust trusts a…

That's very thorough, thank you! I understand all those things in general, but I don't know the specific mechanism by which my local PGP install recognizes who else trusts this PGP key. I grant you that if the key is protected from MITM then all is well. I just still don't know this part: What mechanism do I use, I who have no prior encounter with that key and no existing PGP setup or connection to any web, to valida…

Generally, you'd need to have a match (or chain) between keys you do trust and those signing a given key.

In general, I fetch signatures of keys and may add some of these as partially trusted if they're very well known keys.

A bit of bash scripting that helps with this:

    gpg --list-sigs   | grep 'not found' |
        cut -c 13-22 | sort -u |
        xargs --max-args 10 gpg --recv-keys
xargs speeds the process by requesting multiple keys at a time. I think keeping that below 20 keys helps keep the keyservers happy. Sort + uniq eliminates duplicate requests of the same key.

You cannot run parallel processes as your local gpg instance cannot do concurrent updates to the keyring.

Re: PuTTY 0.64 released, fixing a security hole

#34
post #4

Kind of off topic: Is there a secure way to download PuTTY? They are hosting on a http page. Though they provide RSA and DSA signatures how would I verify the signatures themselves? I'm kind of new to walking through trust paths. I don't even have any entry point too since nobody I know use public key encryption (I trust the Debian keys already though since I use their distro, maybe I can use that for a starting poin…

> Though they provide RSA and DSA signatures how would I verify the signatures themselves? Ideally, it goes something like this -- 1. Start with the master keys. Download them from their website & import them into your keyring. 2. Fetch signatures for those keys from some key servers. (E.g. gpg --recv-keys 6A93B34E). 3. Examine the signatures (E.g. gpg --list-sigs 6A93B34E). Do you trust anybody in that list to have…

[deleted]

Re: PuTTY 0.64 released, fixing a security hole

#35
post #22
post #18

Earlier quoted context omitted.

This bundles a version of cygwin.

Are there native builds that don't use cygwin?

The OpenSSH included with msysgit uses msys I think, but otherwise I don't think there's a native OpenSSH for Windows.

Re: PuTTY 0.64 released, fixing a security hole

#36
post #31

Earlier quoted context omitted.

That's very thorough, thank you! I understand all those things in general, but I don't know the specific mechanism by which my local PGP install recognizes who else trusts this PGP key. I grant you that if the key is protected from MITM then all is well. I just still don't know this part: What mechanism do I use, I who have no prior encounter with that key and no existing PGP setup or connection to any web, to valida…

Generally, you'd need to have a match (or chain) between keys you do trust and those signing a given key. In general, I fetch signatures of keys and may add some of these as partially trusted if they're very well known keys. A bit of bash scripting that helps with this: gpg --list-sigs | grep 'not found' | cut -c 13-22 | sort -u | xargs --max-args 10 gpg --recv-keys xargs speeds the process by requesting multiple key…

For those already using PGP, that sounds great. For me, who is not using PGP, my set of trusted keys is currently empty. So it is unverified.

Which, arguably, might be safer than being overly trusting of my "trusted CAs", which is verified by a flawed system.

I guess I'm still not thrilled wih my options overall, but thank you for your time explaining how to use PGP.

Re: PuTTY 0.64 released, fixing a security hole

#37
post #3

I used to be a huge PuTTY (or derative) user, but recently, I've switched to just using the normal OpenSSH command-line client within Cygwin and ConEmu. While PuTTY is nice, it lacks some features, like proxycommands and stuff which are standard in ~/.ssh/config. Things which can be taken along in a simple & portable fashion. No disrespect to PuTTY, but I just found myself not really needing it anymore.

I prefer XShell5. http://www.netsarang.com/products/xsh_overview.html

So is this just the PuTTY VT/ssh under the hood?

While I'm wary to start with, I'd probably be even warier if it weren't.

Re: PuTTY 0.64 released, fixing a security hole

#38
post #4

Kind of off topic: Is there a secure way to download PuTTY? They are hosting on a http page. Though they provide RSA and DSA signatures how would I verify the signatures themselves? I'm kind of new to walking through trust paths. I don't even have any entry point too since nobody I know use public key encryption (I trust the Debian keys already though since I use their distro, maybe I can use that for a starting poin…

> Though they provide RSA and DSA signatures how would I verify the signatures themselves? Ideally, it goes something like this -- 1. Start with the master keys. Download them from their website & import them into your keyring. 2. Fetch signatures for those keys from some key servers. (E.g. gpg --recv-keys 6A93B34E). 3. Examine the signatures (E.g. gpg --list-sigs 6A93B34E). Do you trust anybody in that list to have…

> 3. Examine the signatures (E.g. gpg --list-sigs 6A93B34E). Do you trust anybody in that list to have verified the ownership of the keys?

Well what if I don't know if I can trust them. Also I couldn't possibly verify them in person so I need to recursively walk through the signing keys to find a trusted signature. Isn't there an easy cli command for this? All I could find are online path finders.

Re: PuTTY 0.64 released, fixing a security hole

#39
post #18
post #16

Earlier quoted context omitted.

You can get SSH natively in the DOS command prompt by installing http://www.mls-software.com/opensshd.html I found it very useful for connecting to vagrant boxes.

This bundles a version of cygwin.

Indeed - I like being able to use SSH directly in the DOS prompt though.

Re: PuTTY 0.64 released, fixing a security hole

#40
post #36

Earlier quoted context omitted.

Generally, you'd need to have a match (or chain) between keys you do trust and those signing a given key. In general, I fetch signatures of keys and may add some of these as partially trusted if they're very well known keys. A bit of bash scripting that helps with this: gpg --list-sigs | grep 'not found' | cut -c 13-22 | sort -u | xargs --max-args 10 gpg --recv-keys xargs speeds the process by requesting multiple key…

For those already using PGP, that sounds great. For me, who is not using PGP, my set of trusted keys is currently empty. So it is unverified. Which, arguably, might be safer than being overly trusting of my "trusted CAs", which is verified by a flawed system. I guess I'm still not thrilled wih my options overall, but thank you for your time explaining how to use PGP.

The WoT is both PGP's strength and weakness. Lacking anything else, key security staff for various Linux distributions and key EFF members isn't a bad starting point for this. Assigning those "marginal" trust means that you'd have to have three of those signing a given key to trust it.
Post reply on HN