Skip to content

Commit

Permalink
Merge pull request #727 from tlsfuzzer/badge-fixes
Browse files Browse the repository at this point in the history
fix few URLs after migration to tlsfuzzer organisation
  • Loading branch information
tomato42 committed Nov 20, 2020
2 parents 5b32de5 + b6b1184 commit 5dcf52b
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 50 deletions.
50 changes: 25 additions & 25 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## Preparation for contributing

* You need a [GitHub account](https://github.com/signup/free)
* Submit an [issue ticket](https://github.com/tomato42/tlsfuzzer/issues) for
* Submit an [issue ticket](https://github.com/tlsfuzzer/tlsfuzzer/issues) for
your issue if there is none yet
* Describe the issue and include steps to reproduce if it's a bug, mention
the earliest version that you know is affected and the version you're using.
Expand All @@ -16,18 +16,18 @@
## Ways to contribute

* Look for issues in the
[projects](https://github.com/tomato42/tlsfuzzer/projects) page.
[TLS 1.3 coverage](https://github.com/tomato42/tlsfuzzer/projects/1) is the
[projects](https://github.com/tlsfuzzer/tlsfuzzer/projects) page.
[TLS 1.3 coverage](https://github.com/tlsfuzzer/tlsfuzzer/projects/1) is the
highest priority project now.
* Look for
[open issues](https://github.com/tomato42/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22),
[open issues](https://github.com/tlsfuzzer/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22),
ones that have
[maintenance](https://github.com/tomato42/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3Amaintenance)
[maintenance](https://github.com/tlsfuzzer/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3Amaintenance)
label and/or
[good first issue](https://github.com/tomato42/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
[good first issue](https://github.com/tlsfuzzer/tlsfuzzer/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
are good choices
* Report ideas for
[new test scripts](https://github.com/tomato42/tlsfuzzer/issues/new?template=New_test_script.md)
[new test scripts](https://github.com/tlsfuzzer/tlsfuzzer/issues/new?template=New_test_script.md)
to verify TLS implementations with
* Run static code analyses on tlsfuzzer, report issues they found
* Integrate them into CI or development scripts
Expand All @@ -39,7 +39,7 @@

### TL;DR

1. [Fork it](https://github.com/tomato42/tlsfuzzer/fork)
1. [Fork it](https://github.com/tlsfuzzer/tlsfuzzer/fork)
1. Clone it
* `git clone git@github.com:<your-github-nick>/tlsfuzzer.git`
* `cd tlsfuzzer`
Expand All @@ -49,7 +49,7 @@
* `pip2 install -r build-requirements.txt`
* `pip3 install -r build-requirements.txt`
1. Download tlslite-ng
* `git clone https://github.com/tomato42/tlslite-ng.git .tlslite-ng`
* `git clone https://github.com/tlsfuzzer/tlslite-ng.git .tlslite-ng`
* `ln -s .tlslite-ng/tlslite tlslite`
1. Verify installation
* `make test`
Expand All @@ -59,19 +59,19 @@
1. Commit your changes (`git commit -am 'Add some feature'`)
1. Push to the branch upstream (`git push origin my-new-feature`)
1. Create new
[Pull Request](https://github.com/tomato42/tlsfuzzer/pull/new/master)
[Pull Request](https://github.com/tlsfuzzer/tlsfuzzer/pull/new/master)

### Technical requirements

To be able to work on the code you will need few pieces of software installed.
The most important is the `python` interpreter. Some development dependencies
have additional restrictions on the versions used, so I recommend using Python
2.7 and Python 3.4 as the lowest versions (see
[`.travis.yml`](https://github.com/tomato42/tlsfuzzer/blob/master/.travis.yml)
[`.travis.yml`](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/.travis.yml)
if you want to setup development environment on different versions).
[Git client](https://git-scm.com/), [make](https://www.gnu.org/software/make/)
(though likely other `make` implementions will work too, scripts for
Windows are [planned](https://github.com/tomato42/tlsfuzzer/issues/22)),
Windows are [planned](https://github.com/tlsfuzzer/tlsfuzzer/issues/22)),
text editor and ability to install local python packages (ability to run
`pip`).

Expand Down Expand Up @@ -144,7 +144,7 @@ require use of package like
* Fork the tlsfuzzer project
* Clone to your local machine your fork: `git clone git@github.com:.../tlsfuzer.git`
* Download tlslite-ng:
* `git clone https://github.com/tomato42/tlslite-ng.git .tlslite-ng`
* `git clone https://github.com/tlsfuzzer/tlslite-ng.git .tlslite-ng`
* `ln -s .tlslite-ng/tlslite tlslite`
* Verify that test cases are runnable: `make test`
* In your cloned repository, create a topic branch for your upcoming patch
Expand Down Expand Up @@ -184,7 +184,7 @@ require use of package like
* Push your changes to a topic branch in your fork of the repository.
`git push origin <example-name>`
* Open a pull request to the original repository and choose the right original
branch you want to patch (that usually will be tomato42/master).
branch you want to patch (that usually will be tlsfuzzer/master).
* If you posted issues previously, make sure you reference them in the opening
commit of the pull request (e.g. 'fixes #12'). But _please do not close the
issue yourself_. GitHub will do that automatically once the issue is merged.
Expand Down Expand Up @@ -220,20 +220,20 @@ might have moved forward.
To update your copy of it, first add a "remote" that points to upstream repo:

```
git remote add tomato42 https://github.com/tomato42/tlsfuzzer.git
git remote add tlsfuzzer https://github.com/tlsfuzzer/tlsfuzzer.git
```

Get changes from it:

```
git fetch tomato42
git fetch tlsfuzzer
```

Update your local `master` branch:

```
git checkout master
git pull tomato42 master
git pull tlsfuzzer master
```

Upload the new `master` branch to your fork:
Expand All @@ -249,7 +249,7 @@ to undo those changes (search for `git reset`), or pull and rebase at the same
time (instead of just `git pull`):

```
git pull tomato42 master --rebase
git pull tlsfuzzer master --rebase
```

### Additional Resources
Expand All @@ -260,7 +260,7 @@ git pull tomato42 master --rebase
## tlsfuzzer testing

(not to be confused with testing _with_ (or _using_) tlsfuzzer, for that see
[USAGE.md](https://github.com/tomato42/tlsfuzzer/blob/master/USAGE.md)
[USAGE.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/USAGE.md)
document)

The testing of tlsfuzzer happens in three main steps:
Expand Down Expand Up @@ -315,21 +315,21 @@ When contributing patches please follow the following guidelines:
the [PEP 257](https://www.python.org/dev/peps/pep-0257/) style guides
* Code should not use platform specific extensions – should be runnable on
Linux, Windows and OSX (CI does not verify it, yet:
[#22](https://github.com/tomato42/tlsfuzzer/issues/22),
[#21](https://github.com/tomato42/tlsfuzzer/issues/21))
[#22](https://github.com/tlsfuzzer/tlsfuzzer/issues/22),
[#21](https://github.com/tlsfuzzer/tlsfuzzer/issues/21))
* When adding new functionality unit tests need to be provided with those
changes, see
[unit test checklist](https://github.com/tomato42/tlsfuzzer/wiki/Unit-test-checklist)
[unit test checklist](https://github.com/tlsfuzzer/tlsfuzzer/wiki/Unit-test-checklist)
for unit test requirements
* You can check if unittests actually cover the added code by looking at the
coveralls.io report for a given PR
* When creating new test scripts, use
[`test-conversation.py`](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-conversation.py)
[`test-conversation.py`](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-conversation.py)
and
[`test-tls13-conversation.py`](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-tls13-conversation.py)
[`test-tls13-conversation.py`](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-tls13-conversation.py)
as templates
* When creating new test scripts, consult
[Test script checklist](https://github.com/tomato42/tlsfuzzer/wiki/Test-script-checklist)
[Test script checklist](https://github.com/tlsfuzzer/tlsfuzzer/wiki/Test-script-checklist)
* New test scripts need to be added to `tests/tlslite-ng.json` and
`tests/tlslite-ng-random-subset.json` files (note: they are sorted
alphabetically)
Expand Down
34 changes: 17 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
[![Build Status](https://travis-ci.org/tomato42/tlsfuzzer.svg?branch=master)](https://travis-ci.org/tomato42/tlsfuzzer)
[![Build Status](https://travis-ci.org/tlsfuzzer/tlsfuzzer.svg?branch=master)](https://travis-ci.org/tlsfuzzer/tlsfuzzer)
[![Read the Docs](https://img.shields.io/readthedocs/tlsfuzzer)](https://tlsfuzzer.readthedocs.io/en/latest/)
[![Coverage Status](https://coveralls.io/repos/tomato42/tlsfuzzer/badge.svg?branch=master)](https://coveralls.io/r/tomato42/tlsfuzzer?branch=master)
[![Code Climate](https://codeclimate.com/github/tomato42/tlsfuzzer/badges/gpa.svg)](https://codeclimate.com/github/tomato42/tlsfuzzer)
[![Code Quality: Python](https://img.shields.io/lgtm/grade/python/g/tomato42/tlsfuzzer.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/tomato42/tlsfuzzer/context:python)
[![Total Alerts](https://img.shields.io/lgtm/alerts/g/tomato42/tlsfuzzer.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/tomato42/tlsfuzzer/alerts)
[![Coverage Status](https://coveralls.io/repos/tlsfuzzer/tlsfuzzer/badge.svg?branch=master)](https://coveralls.io/r/tlsfuzzer/tlsfuzzer?branch=master)
[![Code Climate](https://codeclimate.com/github/tlsfuzzer/tlsfuzzer/badges/gpa.svg)](https://codeclimate.com/github/tlsfuzzer/tlsfuzzer)
[![Code Quality: Python](https://img.shields.io/lgtm/grade/python/g/tlsfuzzer/tlsfuzzer.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/tlsfuzzer/tlsfuzzer/context:python)
[![Total Alerts](https://img.shields.io/lgtm/alerts/g/tlsfuzzer/tlsfuzzer.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/tlsfuzzer/tlsfuzzer/alerts)

[![Build history](https://buildstats.info/travisci/chart/tomato42/tlsfuzzer?branch=master&includeBuildsFromPullRequest=false)](https://travis-ci.org/tomato42/tlsfuzzer/builds)
[![Build history](https://buildstats.info/travisci/chart/tlsfuzzer/tlsfuzzer?branch=master&includeBuildsFromPullRequest=false)](https://travis-ci.org/tlsfuzzer/tlsfuzzer/builds)

# tlsfuzzer
Fuzzer and test suite for TLS (SSLv2, SSLv3, v1.0, v1.1, v1.2, v1.3) implementations.
Expand All @@ -24,7 +24,7 @@ and general standards conformity
You'll need:

* Python 2.6 or later or Python 3.3 or later
* [tlslite-ng](https://github.com/tomato42/tlslite-ng)
* [tlslite-ng](https://github.com/tlsfuzzer/tlslite-ng)
0.8.0-alpha37 or later (note that `tlslite` will *not* work and
they conflict with each other)
* [ecdsa](https://github.com/warner/python-ecdsa)
Expand All @@ -40,7 +40,7 @@ README files for details):

To get `pip` (if your python installation doesn't already have it) download
[get-pip.py](https://bootstrap.pypa.io/get-pip.py) and run
(or see [USAGE.md](https://github.com/tomato42/tlsfuzzer/blob/master/USAGE.md)
(or see [USAGE.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/USAGE.md)
for alternative configuration that does not require installation of packages):

```
Expand All @@ -58,7 +58,7 @@ pip install --pre tlslite-ng
Download the tlsfuzzer:

```
git clone https://github.com/tomato42/tlsfuzzer.git
git clone https://github.com/tlsfuzzer/tlsfuzzer.git
```

## Usage
Expand All @@ -72,7 +72,7 @@ After all dependencies are installed, make sure:
HTTP responses is optional)

Then you can run one of the tests in
[`scripts`](https://github.com/tomato42/tlsfuzzer/tree/master/scripts)
[`scripts`](https://github.com/tlsfuzzer/tlsfuzzer/tree/master/scripts)
directory, like so:

```
Expand All @@ -88,15 +88,15 @@ all the options given script supports), `-h` to specify the hostname or
IP address of the server-to-be-tested and `-p` to specify the port of the
service to be tested.

See [USAGE.md](https://github.com/tomato42/tlsfuzzer/blob/master/USAGE.md) for
See [USAGE.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/USAGE.md) for
more info and how to interpret errors and failures reported by scripts.

You can find mode detailed documentation for the project at
[tlsfuzzer.readthedocs.io](https://tlsfuzzer.readthedocs.io).

Using tlsfuzzer to test for timing side-channel attacks (Lucky13, padding
oracle attacks and timing-based Bleichenbacher oracle) is described in
the [TIMING.md](https://github.com/tomato42/tlsfuzzer/blob/master/TIMING.md)
the [TIMING.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/TIMING.md)
document.

## Server under test configuration
Expand All @@ -117,7 +117,7 @@ match the certificate sent by the server.

More detailed instructions, including how to build the different frameworks
from source, are available in the
[Server setup](https://github.com/tomato42/tlsfuzzer/wiki/Server-setup) wiki
[Server setup](https://github.com/tlsfuzzer/tlsfuzzer/wiki/Server-setup) wiki
page.

Example server configurations:
Expand Down Expand Up @@ -164,19 +164,19 @@ selfserv -d sql:./nssdb -p 4433 -V tls1.0: -H 1 -n localhost
### Advanced configuration
More advanced and complex configurations as well as description how to compile
the above servers from source is available on the wiki page
[Server setup](https://github.com/tomato42/tlsfuzzer/wiki/Server-setup).
[Server setup](https://github.com/tlsfuzzer/tlsfuzzer/wiki/Server-setup).

## Contributing

See the
[CONTRIBUTING.md](https://github.com/tomato42/tlsfuzzer/blob/master/CONTRIBUTING.md)
[CONTRIBUTING.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/CONTRIBUTING.md)
document for description how to set up your development environment, sanity
check the changes and requirements the changes need to follow.

You may also want to read the
[VISION.md](https://github.com/tomato42/tlsfuzzer/blob/master/VISION.md)
[VISION.md](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/VISION.md)
to learn more about the planned scope of the project.

Contributors are expected to follow the project's
[CODE OF CONDUCT](https://github.com/tomato42/tlsfuzzer/blob/master/CODE_OF_CONDUCT.md)
[CODE OF CONDUCT](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/CODE_OF_CONDUCT.md)
when interacting with other members of the community.
14 changes: 7 additions & 7 deletions USAGE.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ To run the scripts you will need 3 libraries:

* [six](https://github.com/benjaminp/six) ([PyPI](https://pypi.python.org/pypi/six))
* [ecdsa](https://github.com/warner/python-ecdsa) ([PyPI](https://pypi.python.org/pypi/ecdsa))
* [tlslite-ng](https://github.com/tomato42/tlslite-ng) ([PyPI](https://pypi.python.org/pypi/tlslite-ng))
* [tlslite-ng](https://github.com/tlsfuzzer/tlslite-ng) ([PyPI](https://pypi.python.org/pypi/tlslite-ng))

It's common that `six` is already installed, or is available from the operating
system repository.
Expand All @@ -35,11 +35,11 @@ install new python, and use it for the below commands, usually switching
In other words, if you have `six` already installed, the environment can be
prepared by running the following commands:
```
git clone https://github.com/tomato42/tlsfuzzer.git
git clone https://github.com/tlsfuzzer/tlsfuzzer.git
cd tlsfuzzer
git clone https://github.com/warner/python-ecdsa .python-ecdsa
ln -s .python-ecdsa/src/ecdsa/ ecdsa
git clone https://github.com/tomato42/tlslite-ng .tlslite-ng
git clone https://github.com/tlsfuzzer/tlslite-ng .tlslite-ng
ln -s .tlslite-ng/tlslite/ tlslite
```
Expand Down Expand Up @@ -106,7 +106,7 @@ To be able to read the error messages of `tlsfuzzer` scripts, it's necessary to
know a little about how it works internally.

The simplest test script is the
[test-conversation.py](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-conversation.py),
[test-conversation.py](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-conversation.py),
in it you will find a lot of boilerplate, and a single test scenario:
```
conversation = Connect(host, port)
Expand Down Expand Up @@ -407,14 +407,14 @@ pass with default configuration and other pass with `-a 0` option set, it makes
the server **vulnerable** to the Bleichenbacher attack). In general, the
workaround requires the server *not* to treat the Finished message specially,
so the alert sent *should* be the same as the one generated while running
[test-fuzzed-MAC.py](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-fuzzed-MAC.py).
[test-fuzzed-MAC.py](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-fuzzed-MAC.py).
Also note that if setting this option is necessary, it shows that the server is
not RFC compliant, which in turn, as you can see, makes testing it harder and
more complex.

While not testing for Bleichenbacher directly, the tests
[test-invalid-rsa-key-exchange-messages.py](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-invalid-rsa-key-exchange-messages.py)
and [test-truncating-of-kRSA-client-key-exchange.py](https://github.com/tomato42/tlsfuzzer/blob/master/scripts/test-truncating-of-kRSA-client-key-exchange.py)
[test-invalid-rsa-key-exchange-messages.py](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-invalid-rsa-key-exchange-messages.py)
and [test-truncating-of-kRSA-client-key-exchange.py](https://github.com/tlsfuzzer/tlsfuzzer/blob/master/scripts/test-truncating-of-kRSA-client-key-exchange.py)
perform checks related to RSA key exchange. Failures there may be a sign of
other problems.

Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
version="0.0.1",
author="Hubert Kario",
author_email="hkario@redhat.com",
url="https://github.com/tomato42/tlsfuzzer",
url="https://github.com/tlsfuzzer/tlsfuzzer",
description="TLS test suite and fuzzer.",
license="GPLv2",
packages=["tlsfuzzer"])

0 comments on commit 5dcf52b

Please sign in to comment.