amazon-archives / certlint

X.509 certificate linter
Apache License 2.0
157 stars 42 forks source link

Catch bad punycode exceptions #40

Closed robstradling closed 7 years ago

robstradling commented 7 years ago

https://crt.sh/?d=51557332


$ ruby -I lib:ext bin/cablint 51557332.crt
/usr/local/lib64/ruby/gems/2.1.0/gems/simpleidn-0.0.7/lib/simpleidn.rb:116:in `decode': punycode_bad_input(1) (SimpleIDN::ConversionError)
        from /usr/local/lib64/ruby/gems/2.1.0/gems/simpleidn-0.0.7/lib/simpleidn.rb:255:in `to_unicode'
        from /home/rob/git/certlint/lib/certlint/generalnames.rb:184:in `block in dnsname'
        from /home/rob/git/certlint/lib/certlint/generalnames.rb:182:in `each'
        from /home/rob/git/certlint/lib/certlint/generalnames.rb:182:in `dnsname'
        from /home/rob/git/certlint/lib/certlint/generalnames.rb:214:in `lint'
        from /home/rob/git/certlint/lib/certlint/extensions/subjectaltname.rb:43:in `block in lint'
        from /home/rob/git/certlint/lib/certlint/extensions/subjectaltname.rb:41:in `each'
        from /home/rob/git/certlint/lib/certlint/extensions/subjectaltname.rb:41:in `lint'
        from /home/rob/git/certlint/lib/certlint/certextlint.rb:45:in `lint'
        from /home/rob/git/certlint/lib/certlint/certlint.rb:428:in `block in lint'
        from /home/rob/git/certlint/lib/certlint/certlint.rb:398:in `each'
        from /home/rob/git/certlint/lib/certlint/certlint.rb:398:in `lint'
        from /home/rob/git/certlint/lib/certlint/cablint.rb:48:in `lint'
        from bin/cablint:28:in `block in <main>'
        from bin/cablint:17:in `each'
        from bin/cablint:17:in `<main>'
pzb commented 7 years ago

Fixed in a series of commits ending in 7e04f4ff4a37a506ee32c72c7e6107aa770e4d00