{"id":13581088,"url":"https://github.com/WestpointLtd/tls_prober","last_synced_at":"2025-04-06T06:32:30.463Z","repository":{"id":29167153,"uuid":"32697681","full_name":"WestpointLtd/tls_prober","owner":"WestpointLtd","description":"A tool to fingerprint SSL/TLS servers","archived":false,"fork":false,"pushed_at":"2021-11-13T20:31:11.000Z","size":304,"stargazers_count":268,"open_issues_count":10,"forks_count":40,"subscribers_count":27,"default_branch":"master","last_synced_at":"2025-04-02T06:36:21.489Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"GLSL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WestpointLtd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-22T21:59:10.000Z","updated_at":"2025-02-23T12:32:59.000Z","dependencies_parsed_at":"2022-08-17T19:15:29.749Z","dependency_job_id":null,"html_url":"https://github.com/WestpointLtd/tls_prober","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WestpointLtd%2Ftls_prober","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WestpointLtd%2Ftls_prober/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WestpointLtd%2Ftls_prober/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WestpointLtd%2Ftls_prober/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WestpointLtd","download_url":"https://codeload.github.com/WestpointLtd/tls_prober/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247445652,"owners_count":20939952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T15:01:57.944Z","updated_at":"2025-04-06T06:32:29.975Z","avatar_url":"https://github.com/WestpointLtd.png","language":"GLSL","readme":"# TLS Prober\n\nTLS Prober is a tool for identifying the implementation in use by SSL/TLS\nservers. It analyses the behaviour of a server by sending a range of probes\nthen comparing the responses with a database of known signatures. Key features\ninclude:\n\n * Requires no knowledge of the server configuration.\n\n * Does not rely on the supported cipher suites (since administrators often\n   change those).\n\n * Successfully identifies openssl, schannel, Java (JSSE), wolfSSL (previously\n   CyaSSL), GnuTLS, MatrixSSL, mbedTLS (previously PolarSSL).\n\n * Supports both pure SSL/TLS protocols like HTTPS and those that use STARTTLS\n   such as SMTP and POP3.\n\n * Reslient against differences in the build options used by a given server.\n\n * Extensible - you can easily record the signatures of additional\n   implementations.\n\n# Installation\n\nClone the repository and the pytls submodule then run it!\n\n```\ngit clone https://github.com/WestpointLtd/tls_prober.git\ncd tls_prober/ \u0026\u0026 git submodule update --init\n```\n\nTLS Prober requires python and has been tested using python 2.7, it is\npossible it may work with earlier versions too.\n\nNote that the current implementation will not work on Windows since it makes\nuse of the select() system call which is not available on that platform.\n\n## Basic Usage\n\nUsing TLS Prober is as easy as:\n\n```\n./prober.py www.google.com\n```\n\nThe output is a sorted list of matches with the best match first, for example\nthe command above resulted in:\n\n```\nopenssl-1.0.1h default source build     15\nopenssl-1.0.1h default source build (no-ec)     15\nopenssl-1.0.1g default source build     14\nopenssl-1.0.1g default source build (no-ec)     14\n...\n```\n\n# Common Options\n\nThe most commonly used option is *-p* which allows you to specify an\nalternative port (the default is 443). You can also use *-s* to select a\nSTARTTLS mode, however generally the default mode of 'auto' will do the right\nthing.\n\nTLS Prober supports operation over a socks proxy (for example the one provided\nby SSH). To use this feature you must set the *socks_proxy* environment\nvariable, for example:\n\n```\nexport socks_proxy=localhost:1080\n```\n\n# Adding a Signature\n\nAdding a new signature is easy, simply run TLS Prober like this:\n\n```\n./prober.py -a 'ACME TLS version 1.0.0' www.example.com\n```\n\nThis will probe the server and add it to the fingerprint database. Please\nsubmit new fingerprints back so that they can be included in future releases.\n\n# Implementation\n\nFor details of the implementation see the [included paper](doc/tls_prober.md)\nin the doc directory.\n\n# Author\n\nTLS Prober was written by Richard Moore \u003crich@kde.org\u003e.\n\n# Credits\n\nThanks to my colleagues at Westpoint for comments and suggestions,\nparticularly Simon Ward. Thanks also to Daniel Molkentin and Peter Hartmann\nfor providing feedback.\n\n","funding_links":[],"categories":["GLSL","Network Tools","Tools","Network","Awesome Penetration Testing (\"https://github.com/Muhammd/Awesome-Pentest\")"],"sub_categories":["Transport Layer Security Tools","Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWestpointLtd%2Ftls_prober","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FWestpointLtd%2Ftls_prober","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWestpointLtd%2Ftls_prober/lists"}