Improve server certificate validation in client
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- ruby
- Domain
- networking, security
Research direction
Start by tracing the client connection and the OpenSSL::SSL::SSLSocket#post_connection_check entry point mentioned in the issue. The work is complete when the client validates the server certificate hostname after the handshake, using the stated certificate fields, with a way to disable the check for testing.
Written by the indexing model from the issue text.
Description
The logstash-forwarder and filebeat certificate validation will also check the server certificate domain name. For openssl this check must be done by the library user after connecting to a server.
For FQDN validation of server certificate the client should use the servers certificate after the handshake (connect) to search for the domain name in the X.509 extension fields with fallback to the commonName field. This check is required to prevent potential man-in-the middle attacks.
The ruby openssl module already provides post_connection_check. But post_connection_check must be called by developer.
It should be possible to disable this check for testing purposes.
- Dominant language
- Ruby
- Stars
- 3
- Forks
- 17
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from elastic/ruby-lumberjack
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
elastic/ruby-lumberjack#27 · 1 reaction ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
elastic/ruby-lumberjack#26 · 1 comment ·
-
elastic/ruby-lumberjack#24 · 1 comment · 1 assignee ·
-
elastic/ruby-lumberjack#23 · 1 assignee ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
elastic/ruby-lumberjack#21 ·
All issues in elastic/ruby-lumberjack
Similar issues
-
user-reported
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Kong/developer.konghq.com#7316 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
TheOdinProject/curriculum#31408 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
notch8/utk_knapsack#148 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 78/100
Homebrew/homebrew-cask#288729 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100