Coder Social home page Coder Social logo

saminfante / badssl.com Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chromium/badssl.com

0.0 1.0 0.0 6.57 MB

:lock: Memorable site for testing clients against bad SSL configs.

Home Page: https://badssl.com

License: Apache License 2.0

HTML 46.07% JavaScript 11.83% Makefile 24.91% Shell 1.30% CSS 14.95% Ruby 0.55% Dockerfile 0.40%

badssl.com's Introduction

Visit badssl.com for a list of test subdomains, including:

Server Setup

Stock Ubuntu VM, DNS A records for badssl.com. and *.badssl.com. pointing to the VM.

Testing and development

  1. Follow the instructions to install Docker.

  2. Clone into the badssl repo by running git clone https://github.com/chromium/badssl.com && cd badssl.com.

  3. In order to access the various badssl subdomains locally you will need to add them to your system hosts file. Run make list-hosts and copy and paste the output into /etc/hosts.

  4. Start Docker by running make serve.

  5. You can now navigate to badssl.test in your browser, and you should see a certificate error.

  6. The badssl root certificate is at certs/sets/test/gen/crt/ca-root.crt. In order to get the rest of the badssl subdomains working, you will need to add this to your machine's list of trusted certificates.

    • On macOS, drag certs/sets/test/gen/crt/ca-root.crt into the login section of the program Keychain Access. A BadSSL Root Certificate Authority entry should appear in the list. Double-click on this entry and select "Always Trust" from the drop-down menu next to "Secure Sockets Layer (SSL)." Close the window to save your changes.

      If you are already familiar with this process, you can instead run this command:

      security add-trusted-cert -r trustRoot -p ssl \
        -k "$HOME/Library/Keychains/login.keychain" certs/sets/test/gen/crt/ca-root.crt
  7. In order to preserve the client and root certificates even after running make clean, run:

cd certs/sets/test
mkdir -p pregen/crt pregen/key
cp gen/crt/ca-root.crt pregen/crt/ca-root.crt
cp gen/crt/client.crt pregen/crt/client.crt
cp gen/crt/client-ca-root.crt pregen/crt/client-ca-root.crt
cp gen/key/ca-root.key pregen/key/ca-root.key
cp gen/key/client.key pregen/key/client.key
cp gen/key/client-ca-root.key pregen/key/client-ca-root.key

Acknowledgments

badssl.com is hosted on Google Cloud infrastructure and co-maintained by:

Several public badssl.com certificates required special issuance processes. Most certificates were graciously issued for free, thanks to help from:

Various subdomains and test pages are also implemented by external contributors.

Disclaimer

badssl.com is meant for manual testing of security UI in web clients.

Most subdomains are likely to have stable functionality, but anything could change without notice. If you would like a documented guarantee for a particular use case, please file an issue. (Alternatively, you could make a fork and host your own copy.)

badssl.com is not an official Google product. It is offered "AS-IS" and without any warranties.

badssl.com's People

Contributors

april avatar bifurcation avatar chandra158 avatar christhompson avatar emilstahl avatar ericlaw1979 avatar estark37 avatar firefart avatar google-admin avatar greggles avatar lgarron avatar lilyanatia avatar madnight avatar metromoxie avatar ngyikp avatar nicktimko avatar prefixtitle avatar rsolomakhin avatar rugk avatar sashaperigo avatar sleevi avatar xhmikosr avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.