Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix evil twin bug #54

Merged
merged 20 commits into from
Jun 13, 2016
Merged

fix evil twin bug #54

merged 20 commits into from
Jun 13, 2016

Conversation

rhansen
Copy link
Member

@rhansen rhansen commented Jun 13, 2016

See issue #29

rhansen added 20 commits June 5, 2016 04:40
Before, if there was no path to a trust anchor, verify_cert() set
*chainOK to false but returned success.  Now, verify_cert() simply
returns ERR_SCM_NOTVALID and there is no chainOK parameter.

An evil twin can make it appear as if there is a path to a trust
anchor, so there's no substantial difference between a certificate
without a path to a trust anchor and an invalid certificate with a
path to a trust anchor.
isRoot==1 implies that the cert is a trust anchor, which is not how
this variable is used.  Rename isRoot to already_verified to match its
actual semantics a bit better.
This makes it easier to follow the code.
and defer its declaration to discourage misuse
The OpenSSL docs say that X509_verify_cert() might return a negative
error code and recomments applications check for <= 0 when testing for
success.
This will make it easier to edit verify_cert() to fix the evil twin
bug.
to match verify_cert()
This will make it easier to edit verify_cert() to fix the evil twin
bug.
Given a starting SKI and subject, this function finds all
certification paths up to a trust anchor.  For each path it finds it
calls a callback to perform validation (or some other task).
find_cert_paths() walks all certification paths, so this change fixes
the evil twin bug.
@rhansen rhansen self-assigned this Jun 13, 2016
rhansen added a commit to rhansen/rpstir that referenced this pull request Jun 13, 2016
@rhansen rhansen merged commit 09697f0 into master Jun 13, 2016
@rhansen rhansen deleted the t.29.evil-twin branch June 13, 2016 23:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant