Java Secure Socket Extension (JSSE) SKIP-TLS MITM Proxy - Metasploit


This page contains detailed information about how to use the auxiliary/server/jsse_skiptls_mitm_proxy metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.

Module Overview


Name: Java Secure Socket Extension (JSSE) SKIP-TLS MITM Proxy
Module: auxiliary/server/jsse_skiptls_mitm_proxy
Source code: modules/auxiliary/server/jsse_skiptls_mitm_proxy.rb
Disclosure date: 2015-01-20
Last modification time: 2020-05-30 10:27:48 +0000
Supported architecture(s): -
Supported platform(s): -
Target service / protocol: -
Target network port(s): -
List of CVEs: CVE-2014-6593

This module exploits an incomplete internal state distinction in Java Secure Socket Extension (JSSE) by impersonating the server and finishing the handshake before the peers have authenticated themselves and instantiated negotiated security parameters, resulting in a plaintext SSL/TLS session with the client. This plaintext SSL/TLS session is then proxied to the server using a second SSL/TLS session from the proxy to the server (or an alternate fake server) allowing the session to continue normally and plaintext application data transmitted between the peers to be saved. This module requires an active man-in-the-middle attack.

Module Ranking and Traits


Module Ranking:

  • normal: The exploit is otherwise reliable, but depends on a specific version and can't (or doesn't) reliably autodetect. More information about ranking can be found here.

Basic Usage


msf > use auxiliary/server/jsse_skiptls_mitm_proxy
msf auxiliary(jsse_skiptls_mitm_proxy) > show targets
    ... a list of targets ...
msf auxiliary(jsse_skiptls_mitm_proxy) > set TARGET target-id
msf auxiliary(jsse_skiptls_mitm_proxy) > show options
    ... show and set options ...
msf auxiliary(jsse_skiptls_mitm_proxy) > exploit

Required Options


  • HOST: The server address

Go back to menu.

Msfconsole Usage


Here is how the server/jsse_skiptls_mitm_proxy auxiliary module looks in the msfconsole:

msf6 > use auxiliary/server/jsse_skiptls_mitm_proxy

msf6 auxiliary(server/jsse_skiptls_mitm_proxy) > show info

       Name: Java Secure Socket Extension (JSSE) SKIP-TLS MITM Proxy
     Module: auxiliary/server/jsse_skiptls_mitm_proxy
    License: Metasploit Framework License (BSD)
       Rank: Normal
  Disclosed: 2015-01-20

Provided by:
  Ramon de C Valle <[email protected]>

Available actions:
  Name     Description
  ----     -----------
  Service  Run MITM proxy

Check supported:
  No

Basic options:
  Name      Current Setting  Required  Description
  ----      ---------------  --------  -----------
  FAKEHOST                   no        The fake server address
  FAKEPORT  443              no        The fake server port
  HOST                       yes       The server address
  PORT      443              yes       The server port
  SRVHOST   0.0.0.0          yes       The proxy address
  SRVPORT   443              yes       The proxy port

Description:
  This module exploits an incomplete internal state distinction in 
  Java Secure Socket Extension (JSSE) by impersonating the server and 
  finishing the handshake before the peers have authenticated 
  themselves and instantiated negotiated security parameters, 
  resulting in a plaintext SSL/TLS session with the client. This 
  plaintext SSL/TLS session is then proxied to the server using a 
  second SSL/TLS session from the proxy to the server (or an alternate 
  fake server) allowing the session to continue normally and plaintext 
  application data transmitted between the peers to be saved. This 
  module requires an active man-in-the-middle attack.

References:
  https://nvd.nist.gov/vuln/detail/CVE-2014-6593
  https://cwe.mitre.org/data/definitions/372.html
  https://www.smacktls.com/#skip
  https://www.smacktls.com/smack.pdf
  http://www.oracle.com/technetwork/topics/security/cpujan2015-1972971.html
  https://www-304.ibm.com/support/docview.wss?uid=swg21695474

Module Options


This is a complete list of options available in the server/jsse_skiptls_mitm_proxy auxiliary module:

msf6 auxiliary(server/jsse_skiptls_mitm_proxy) > show options

Module options (auxiliary/server/jsse_skiptls_mitm_proxy):

   Name      Current Setting  Required  Description
   ----      ---------------  --------  -----------
   FAKEHOST                   no        The fake server address
   FAKEPORT  443              no        The fake server port
   HOST                       yes       The server address
   PORT      443              yes       The server port
   SRVHOST   0.0.0.0          yes       The proxy address
   SRVPORT   443              yes       The proxy port

Auxiliary action:

   Name     Description
   ----     -----------
   Service  Run MITM proxy

Advanced Options


Here is a complete list of advanced options supported by the server/jsse_skiptls_mitm_proxy auxiliary module:

msf6 auxiliary(server/jsse_skiptls_mitm_proxy) > show advanced

Module advanced options (auxiliary/server/jsse_skiptls_mitm_proxy):

   Name       Current Setting  Required  Description
   ----       ---------------  --------  -----------
   VERBOSE    false            no        Enable detailed status messages
   WORKSPACE                   no        Specify the workspace for this module

Auxiliary Actions


This is a list of all auxiliary actions that the server/jsse_skiptls_mitm_proxy module can do:

msf6 auxiliary(server/jsse_skiptls_mitm_proxy) > show actions

Auxiliary actions:

   Name     Description
   ----     -----------
   Service  Run MITM proxy

Evasion Options


Here is the full list of possible evasion options supported by the server/jsse_skiptls_mitm_proxy auxiliary module in order to evade defenses (e.g. Antivirus, EDR, Firewall, NIDS etc.):

msf6 auxiliary(server/jsse_skiptls_mitm_proxy) > show evasion

Module evasion options:

   Name  Current Setting  Required  Description
   ----  ---------------  --------  -----------

Go back to menu.


References


See Also


Check also the following modules related to this module:

Authors


  • Ramon de C Valle

Version


This page has been produced using Metasploit Framework version 6.2.29-dev. For more modules, visit the Metasploit Module Library.

Go back to menu.