• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mitmproxy / netlib
95%
master: 60%

Build:
Build:
LAST BUILD BRANCH: v0.16
DEFAULT BRANCH: master
Repo Added 13 Dec 2013 05:26AM UTC
Files 350
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH hostname-validation
branch: hostname-validation
CHANGE BRANCH
x
Reset
  • hostname-validation
  • 0.10
  • appveyor
  • cert_chains
  • fix-py3-socket-peek
  • headers
  • http-models
  • http2
  • landscape
  • master
  • model-cleanup
  • modern-setuptools
  • proxy-refactor-cb
  • py3-headers
  • py3-peek
  • pypy
  • python3
  • remove_certffi
  • test
  • travis
  • travis-py3
  • update-cryptography
  • v0.12
  • v0.12.1
  • v0.13
  • v0.13.1
  • v0.14
  • v0.15
  • v0.15.1
  • v0.16

pending completion
496

push

travis-ci

Maximilian Hils
fix certificate verification

This commit fixes netlib's optional (turned off by default)
certificate verification, which previously did not validate the
cert's host name. As it turns out, verifying the connection's host
name on an intercepting proxy is not really straightforward - if
we receive a connection in transparent mode without SNI, we have no
clue which hosts the client intends to connect to. There are two
basic approaches to solve this problem:

 1. Exactly mirror the host names presented by the server in the
    spoofed certificate presented to the client.
 2. Require the client to send the TLS Server Name Indication
    extension. While this does not work with older clients,
    we can validate the hostname on the proxy.

Approach 1 is problematic in mitmproxy's use case, as we may want
to deliberately divert connections without the client's knowledge.
As a consequence, we opt for approach 2. While mitmproxy does now
require a SNI value to be sent by the client if certificate
verification is turned on, we retain our ability to present
certificates to the client which are accepted with a maximum
likelihood.

2755 of 2885 relevant lines covered (95.49%)

1.91 hits per line

Relevant lines Covered
Build:
Build:
2885 RELEVANT LINES 2755 COVERED LINES
1.91 HITS PER LINE
Source Files on hostname-validation
  • Tree
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
496 hostname-validation fix certificate verification This commit fixes netlib's optional (turned off by default) certificate verification, which previously did not validate the cert's host name. As it turns out, verifying the connection's host name on an intercepting pr... push 04 Nov 2015 10:26AM UTC Maximilian Hils travis-ci pending completion  
See All Builds (484)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc