Info Call to SSL/TLS API

Description

List of all files shipped in the application.

Recommendation

This entry is informative, no recommendations applicable.

References
Technical details

Method com.sophos.nge.networksec.certpinning.HttpsSecCheck.a() calling method javax.net.ssl.HttpsURLConnection.setHostnameVerifier()


    private void a(javax.net.ssl.HttpsURLConnection p6, java.util.List p7)
    {
        try {
            String v0_0 = com.sophos.nge.networksec.certpinning.c.a();
            com.sophos.nge.networksec.certpinning.b v1_3 = javax.net.ssl.SSLContext.getInstance("TLS");
            javax.net.ssl.TrustManager[] v3_1 = new javax.net.ssl.TrustManager[1];
            v3_1[0] = v0_0;
            v1_3.init(0, v3_1, new java.security.SecureRandom());
            p6.setSSLSocketFactory(v1_3.getSocketFactory());
            p6.setHostnameVerifier(com.sophos.nge.networksec.certpinning.b.a());
            v0_0.a(p7);
            com.sophos.nge.networksec.certpinning.b.a().b();
        } catch (Exception v6_2) {
            com.sophos.smsec.core.smsectrace.d.d("NGEHSC", "TLS init failed", v6_2);
        }
        return;
    }

Method com.sophos.cloud.core.c.p.b() calling method javax.net.ssl.HttpsURLConnection.setHostnameVerifier()


    private void b(javax.net.ssl.HttpsURLConnection p6)
    {
        try {
            javax.net.ssl.SSLContext v1_0;
            com.sophos.cloud.core.c.k v0_3 = com.sophos.cloud.core.c.m.a(this.a);
            v0_3.b(this.c);
        } catch (Exception v6_1) {
            com.sophos.smsec.core.smsectrace.d.c("TM", "TLS init failed", v6_1);
            return;
        }
        if (this.b) {
            v1_0 = 0;
        } else {
            v1_0 = 1;
        }
        v0_3.a(v1_0);
        javax.net.ssl.SSLContext v1_2 = javax.net.ssl.SSLContext.getInstance("TLS");
        javax.net.ssl.TrustManager[] v2_0 = new javax.net.ssl.TrustManager[1];
        v2_0[0] = v0_3;
        v1_2.init(0, v2_0, new java.security.SecureRandom());
        p6.setSSLSocketFactory(v1_2.getSocketFactory());
        if (!this.b) {
            return;
        } else {
            p6.setHostnameVerifier(new com.sophos.cloud.core.c.k(0));
            return;
        }
    }

Method com.sophos.cloud.core.c.p.a() calling method javax.net.ssl.HttpsURLConnection.setHostnameVerifier()


    public void a(javax.net.ssl.HttpsURLConnection p6)
    {
        if (android.os.Build$VERSION.SDK_INT < 24) {
            try {
                javax.net.ssl.SSLContext v1_1;
                com.sophos.cloud.core.c.k v0_9 = com.sophos.cloud.core.c.l.a(this.a);
                v0_9.b(this.c);
            } catch (Exception v6_1) {
                com.sophos.smsec.core.smsectrace.d.c("TM", "TLS init failed", v6_1);
            }
            if (this.b) {
                v1_1 = 0;
            } else {
                v1_1 = 1;
            }
            v0_9.a(v1_1);
            javax.net.ssl.SSLContext v1_3 = javax.net.ssl.SSLContext.getInstance("TLS");
            javax.net.ssl.TrustManager[] v2_0 = new javax.net.ssl.TrustManager[1];
            v2_0[0] = v0_9;
            v1_3.init(0, v2_0, new java.security.SecureRandom());
            p6.setSSLSocketFactory(v1_3.getSocketFactory());
            if (this.b) {
                p6.setHostnameVerifier(new com.sophos.cloud.core.c.k(0));
            }
        } else {
            this.b(p6);
        }
        return;
    }

Method org.jsoup.helper.HttpConnection$Response.createConnection() calling method javax.net.ssl.HttpsURLConnection.setHostnameVerifier()


    private static java.net.HttpURLConnection createConnection(org.jsoup.Connection$Request p5)
    {
        java.net.HttpURLConnection v0_2;
        if (p5.proxy() != null) {
            v0_2 = p5.url().openConnection(p5.proxy());
        } else {
            v0_2 = p5.url().openConnection();
        }
        java.net.HttpURLConnection v0_3 = ((java.net.HttpURLConnection) v0_2);
        v0_3.setRequestMethod(p5.method().name());
        v0_3.setInstanceFollowRedirects(0);
        v0_3.setConnectTimeout(p5.timeout());
        v0_3.setReadTimeout((p5.timeout() / 2));
        if ((v0_3 instanceof javax.net.ssl.HttpsURLConnection)) {
            java.util.Map$Entry v1_7 = p5.sslSocketFactory();
            if (v1_7 == null) {
                if (!p5.validateTLSCertificates()) {
                    org.jsoup.helper.HttpConnection$Response.initUnSecureTSL();
                    java.util.Map$Entry v1_10 = ((javax.net.ssl.HttpsURLConnection) v0_3);
                    v1_10.setSSLSocketFactory(org.jsoup.helper.HttpConnection$Response.sslSocketFactory);
                    v1_10.setHostnameVerifier(org.jsoup.helper.HttpConnection$Response.getInsecureVerifier());
                }
            } else {
                ((javax.net.ssl.HttpsURLConnection) v0_3).setSSLSocketFactory(v1_7);
            }
        }
        if (p5.method().hasBody()) {
            v0_3.setDoOutput(1);
        }
        if (p5.cookies().size() > 0) {
            v0_3.addRequestProperty("Cookie", org.jsoup.helper.HttpConnection$Response.getRequestCookieString(p5));
        }
        java.util.Iterator v5_3 = p5.multiHeaders().entrySet().iterator();
        while (v5_3.hasNext()) {
            java.util.Map$Entry v1_20 = ((java.util.Map$Entry) v5_3.next());
            java.util.Iterator v2_7 = ((java.util.List) v1_20.getValue()).iterator();
            while (v2_7.hasNext()) {
                v0_3.addRequestProperty(((String) v1_20.getKey()), ((String) v2_7.next()));
            }
        }
        return v0_3;
    }