Skip to content

Instantly share code, notes, and snippets.

@nabla-c0d3
Created December 2, 2017 22:11
Show Gist options
  • Save nabla-c0d3/fc633194f7a8509a7e68c931f1fbc471 to your computer and use it in GitHub Desktop.
Save nabla-c0d3/fc633194f7a8509a7e68c931f1fbc471 to your computer and use it in GitHub Desktop.
from pympler import tracker
from sslyze.plugins.certificate_info_plugin import CertificateInfoScanCommand
from sslyze.server_connectivity import ServerConnectivityInfo, ServerConnectivityError
from sslyze.ssl_settings import TlsWrappedProtocolEnum
from sslyze.synchronous_scanner import SynchronousScanner
from sslyze.plugins.openssl_cipher_suites_plugin import Tlsv10ScanCommand
from sslyze.plugins.openssl_cipher_suites_plugin import Tlsv11ScanCommand
memory_tracker = tracker.SummaryTracker()
hostname = 'smtp.gmail.com'
try:
server_info = ServerConnectivityInfo(hostname=hostname, port=587,
tls_wrapped_protocol=TlsWrappedProtocolEnum.STARTTLS_SMTP)
server_info.test_connectivity_to_server()
client = server_info.get_preconfigured_ssl_connection()
except ServerConnectivityError as e:
# Could not establish an SSL connection to the server
raise RuntimeError('Error when connecting to {}: {}'.format(hostname, e.error_msg))
synchronous_scanner = SynchronousScanner()
command = CertificateInfoScanCommand()
command1 = Tlsv10ScanCommand()
command2 = Tlsv11ScanCommand()
for i in range(20):
memory_tracker.print_diff()
scan_result = synchronous_scanner.run_scan_command(server_info, command)
scan_result = synchronous_scanner.run_scan_command(server_info, command1)
scan_result = synchronous_scanner.run_scan_command(server_info, command2)
print('Run {} - {}'.format(str(i), scan_result.scan_command.get_cli_argument()))
memory_tracker.print_diff()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment