New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ciphersurfer

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ciphersurfer

  • 1.4.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

ciphersurfer

ciphersurfer is a tool written for the early stages of a penetration test activities. While gathering information about an host, it's important to evaluate how strong is the cryptography applied to the HTTP traffic. This is the ciphersurfer goal.

The tool tries for every SSL protocols it supports to connect to the host with all ciphers saving the ones the server supports.

This information used with certificate key lenght and the list of supported protocols by the server it's used to evaluate how strong is the target HTTPS configuration. This gives the penetration test an information about how secure is the communication between clients and the target machine.

Some disclaimer

ciphersurfer performs neither of the followings:

  • denial of service attacks
  • cross site scripting or injection attempts
  • data manipulation or leakage

The requests the tool makes are just an HTTP GET / of target website to ensure the server accept an HTTP communication given a SSL protocol and cipher proposed by the client. No more. Really, ciphersurer won't hurt your webserver, nor your business.

If you don't trust this disclaimer, just check the source code.

Installing ciphersurfer

ciphersurfer is deployed as standard gem served by rubygems.

To install latest ciphersurfer stable release, just issue this command:

gem install ciphersurfer

If you want to install a pre release, such as a release candidate you can do it this way:

gem install ciphersurfer --pre

I recommend you to install rvm in order to have your gem binaries tool installed in your home directory, otherwise ciphersurfer will try to install itself in standard /usr/bin directory if no other flags are passed to gem command.

Using ciphersurfer

After ciphersurfer has been installed, using it it's very simple.

To evaluate secure communication with the target host test-this.com at the standard HTTPS port, you just give the tool the target name as option:

ciphersurfer test-this.com

As output you will see an evaluation for HTTPS test-this.com configuration. The evaluation scale is:

  • A: prime class HTTPS configuration. Servers handling very sensitive information
  • B: strong HTTPS configuration, suitable for must production servers
  • C: quite goot HTTPS configuration. If your web server is a private server and for development or testing purposes, it can be acceptable. If your server is exposed to the Internet, you want to improve your SSL configuration.
  • D: poor HTTPS configuration. Suitable only for development machines.
  • E: weak HTTPS configuration. You really don't want to have this score

If your HTTPS server is listening to a non standard port, you can supply the port number (e.g. 4433) this way:

ciphersurfer test-this.com:4433

You can also just listen ciphers supported by your web server instead of having an SSL evaluation:

$ ciphersurfer -l gmail.com 

"Evaluating secure communication with gmail.com:443"
"[+] accepted RC4-MD5"
"[+] accepted AES256-SHA"
"[+] accepted DES-CBC3-SHA"
"[+] accepted AES128-SHA"
"[+] accepted RC4-SHA"

Some theory behind ciphersurfer

SSLabs

For the SSL security evaluation, we use SSLabs document as reference.

OWASP Testing guide

ciphersurfer goal is to make tests described in the [Owasp Testing guide](https://www.owasp.org/index.php/Testing_for_SSL-TLS_(OWASP-CM-001\))

Contributing to ciphersurfer

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Copyright (c) 2012 Paolo Perego. See LICENSE for further details.

FAQs

Package last updated on 15 Oct 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc