sshmitm.tutorial.tutorials.host_key_verification package
Tutorial: Host Key Verification & CVE-2020-14145.
- class sshmitm.tutorial.tutorials.host_key_verification.HostKeyVerificationTutorial
Bases:
Tutorial- category: ClassVar[str] = 'Fundamentals'
- description: ClassVar[str] = 'Discover how SSH clients reveal their fingerprint state — and what CVE-2020-14145 exposes about first-time vs. returning connections.'
- docs: ClassVar[dict[str, str]] = {'Attack Scenarios': 'https://docs.ssh-mitm.at/audit_guide/attack_scenarios.html', 'CVE-2020-14145': 'https://docs.ssh-mitm.at/vulnerabilities/CVE-2020-14145.html', 'Client Audit': 'https://docs.ssh-mitm.at/audit_guide/client_audit.html', 'Logfile Inc. Assessment': 'https://docs.ssh-mitm.at/get_started/scenario.html', 'SSH Fingerprints': 'https://docs.ssh-mitm.at/audit_guide/fingerprint.html'}
- id: ClassVar[str] = '00-host-key-verification'
- lab_service_labels: ClassVar[dict[str, str]] = {'mock_port': 'web01.logfileinc.internal'}
- proxy_target
alias of
Web01
- requires: ClassVar[list[Requirement]] = [<sshmitm.tutorial._requirements.NoneAuthAccess object>]
- scenario
alias of
LogfileIncScenario
- steps: list[Step] = [Step(id='intro', title='What you will learn', content='', condition=<sshmitm.tutorial._conditions.TRUE object>, victim_action=None, command=None, copyable=[], hint_waiting='', hint_done='Introduction read. ✓'), Step(id='start-sshmitm', title='Start SSH-MITM', content='', condition=<sshmitm.tutorial._conditions.PortOpen object>, victim_action=None, command='ssh-mitm server --remote-host {proxy_target_address} --remote-port {mock_port} --listen-port {sshmitm_port}', copyable=[], hint_waiting='Waiting for SSH-MITM to start on port {sshmitm_port}…', hint_done='SSH-MITM is running on port {sshmitm_port}. ✓'), Step(id='first-connection', title='First connection — unknown fingerprint', content='', condition=<sshmitm.tutorial._conditions.All object>, victim_action=<sshmitm.tutorial._client_actions.SimulatedCVE2020Action object>, command=None, copyable=[], hint_waiting='Max is connecting… check the SSH-MITM terminal.', hint_done='Algorithm confirmed. ✓'), Step(id='return-connection', title='Return connection — cached fingerprint', content='', condition=<sshmitm.tutorial._conditions.All object>, victim_action=<sshmitm.tutorial._client_actions.SimulatedCVE2020Action object>, command=None, copyable=[], hint_waiting='Max is connecting again… check the algorithm in the SSH-MITM terminal.', hint_done='Tutorial complete. ✓')]
- tags: ClassVar[list[str]] = ['CVE-2020-14145', 'Host Key', 'TOFU', 'Key Exchange']
- title: ClassVar[str] = 'Host Key Verification'
- victim
alias of
MaxMorgan