This is a rusty spare key left under the mat, not a blown-open front door
Tenable plugin 106458 is a configuration finding, not a product-specific RCE bug: a scanned SSL/TLS service still advertises one or more RC4 cipher suites. Any server or appliance version is effectively affected if its TLS stack or front-end config still allows RC4 during handshake negotiation; there is no single vulnerable software version range, and there is usually no one-click vendor patch because the decisive fix is to remove RC4 from the offered cipher list.
The vendor's MEDIUM label is directionally fair on paper, but in real enterprise risk terms this skews lower unless the service is both internet-facing and serving legacy clients that can still negotiate RC4. Real exploitation requires an attacker to sit on-path or passively capture traffic, force or observe RC4 negotiation, and collect very large numbers of encryptions of repeated plaintext; that is a lot more friction than a scanner finding implies. The real problem here is crypto hygiene and PCI scope, not broad, low-effort compromise.
4 steps from start to impact.
Enumerate RC4 support with nmap or testssl.sh
nmap --script ssl-enum-ciphers, testssl.sh, or equivalent scanner logic like Nessus plugin 106458. If RC4 is not in the offered suite list, the chain dies immediately.- Network reachability to the TLS service
- A service that actually advertises RC4 suites
- Many modern load balancers, CDNs, and hardened web tiers already removed RC4 years ago
- An internal-only service already implies post-initial-access or insider positioning
nmap ssl-enum-ciphers, and testssl.sh.Find a client stack that will still negotiate RC4
- A legacy client population or app integration that still offers RC4
- A path where the attacker can observe or influence those sessions
- Modern browsers and platforms generally refuse or omit RC4
- Many enterprises terminate TLS at hardened reverse proxies that block weak ciphers regardless of back-end app age
Capture a very large volume of repeated ciphertext
- On-path or passive sniffing position
- Repeated application traffic with stable secret material
- Sufficient session volume over time
- This is not unauthenticated one-packet exploitation
- Session volume requirements are high enough to eliminate most ordinary enterprise targets
Apply statistical plaintext recovery tooling
- Enough captured RC4-encrypted sessions
- Traffic patterns suitable for bias-based recovery
- Operational complexity is high compared with exploiting a modern memory corruption or auth bypass flaw
- The blast radius is often limited to the specific sessions and secrets exposed through the weak cipher
The supporting signals.
| In-the-wild status | No current high-confidence active exploitation signal for this scanner finding. The plugin itself says *no known exploits are available*, and the related RC4 CVEs are old, not a modern KEV-driven patch-now story. |
|---|---|
| Proof-of-concept availability | Academic attacks exist: AlFardan et al.'s *On the Security of RC4 in TLS*, Mantin's *Bar Mitzvah* work, and the public RC4 NOMORE project show the weakness is real. |
| EPSS | Not decision-grade here. This is a cipher-configuration finding rather than a single product CVE; EPSS on the historical RC4 CVEs does not map cleanly to whether *your* endpoint still negotiates RC4. |
| KEV status | No CISA KEV listing observed for the representative RC4 TLS issues CVE-2013-2566 and CVE-2015-2808. |
| CVSS vector | Tenable maps this class to CVSS v3 5.9 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N, which is telling: network reachable but high attack complexity and confidentiality-only impact. |
| Affected versions / products | Any TLS service that still advertises RC4 is affected, regardless of brand. This is not bound to one vendor release train; it is a policy/configuration problem across web servers, proxies, ADCs, mail services, and appliances. |
| Fixed version | No single patched version. The practical fix is to remove RC4 suites from the offered TLS configuration; distro or product updates may help, but the end state is a config baseline where RC4 is absent. |
| Scanning / exposure data | Discovery is easy; exploitation is not. Nessus, Qualys SSL/TLS checks, nmap, and testssl.sh find this reliably. Internet exposure is now mostly a legacy long tail because major browsers, CDNs, and modern standards bodies have already abandoned RC4. |
| Disclosure timeline | Representative public dates: CVE-2013-2566 on 2013-03-15, RFC 7465 prohibition in February 2015, and CVE-2015-2808 on 2015-03-31. |
| Researchers / reporting | Key public work came from Nadhem AlFardan, Daniel J. Bernstein, Kenneth G. Paterson, Bertram Poettering, Jacob C. N. Schuldt, and Itsik Mantin. |
noisgate verdict.
The decisive factor is attacker position and negotiation friction: this is only dangerous if an attacker can observe traffic and if a real client still agrees to RC4. That makes it a weak-crypto exposure with compliance weight, not a broadly weaponizable enterprise compromise path.
Why this verdict
- Requires more than reachability: the attacker needs on-path visibility or passive capture, not just an exposed port.
- Negotiation narrows the population: server-side RC4 support matters only when a real client still offers RC4, which modern mainstream clients usually do not.
- Exploit complexity is high: published attacks need repeated plaintext and very large numbers of captured encryptions, which is far from one-shot exploitation.
- Impact is confidentiality-only: no direct integrity or availability impact, and no clean path to code execution or host takeover.
- Still worth fixing for compliance and crypto hygiene: if the service is PCI-scoped or serving legacy systems, the business risk rises even though exploitability stays limited.
Why not higher?
This is not an auth bypass, RCE, or privilege escalation. The chain assumes a constrained attacker position, a shrinking client population that can still negotiate RC4, and a high-volume traffic collection requirement; those are compounding brakes on real-world exploitation.
Why not lower?
It should not be ignored because RC4 is formally prohibited in TLS by RFC 7465 and fails modern crypto expectations, especially in PCI-relevant environments. If a public-facing endpoint or payment-adjacent service still negotiates RC4, you have a real confidentiality weakness and a likely compliance finding even if the exploit path is awkward.
What to do — in priority order.
- Disable RC4 suites — Remove all RC4 cipher suites from the server, proxy, load balancer, and CDN policy. For a LOW verdict there is no SLA pressure, so do this in the next normal hardening change window; if the endpoint is PCI-scoped, close it as a compliance exception in that same cycle.
- Fence legacy clients — If an old dependency still needs weak crypto, isolate it behind a dedicated listener, VIP, or transitional reverse proxy rather than leaving RC4 available broadly. For LOW, treat this as backlog hygiene and complete it during planned modernization work, not emergency maintenance.
- Log negotiated ciphers — Turn on TLS handshake logging at the edge so you can prove whether RC4 is actually being used versus merely offered. That lets you identify the exact client populations blocking cleanup and resolve them in the next remediation cycle.
- Raise the minimum TLS baseline — Use a modern TLS profile that removes RC4 and other legacy ciphers in one pass, ideally at the central termination layer. For LOW, there is no separate mitigation deadline, so fold this into your normal standards rollout.
- A WAF does not fix negotiated cipher weakness; the problem exists below HTTP request inspection.
- MFA is irrelevant here because the issue is transport confidentiality, not authentication strength.
- Replacing the certificate alone does nothing; RC4 is a cipher-suite policy problem, not a certificate problem.
- EDR on the server will not meaningfully mitigate a network-side cryptographic weakness.
Crowdsourced verification payload.
Run this from an auditor workstation or scanning node that can reach the target service, not from the target host. Invoke it as ./check-rc4.sh example.com 443; it needs no privileges beyond network access, but it does require nmap with the ssl-enum-ciphers script available.
#!/usr/bin/env bash
# check-rc4.sh
# Detect whether a remote TLS service still advertises RC4 cipher suites.
# Usage: ./check-rc4.sh <host> <port>
# Exit codes:
# 0 = PATCHED
# 1 = VULNERABLE
# 2 = UNKNOWN / error
set -u
HOST="${1:-}"
PORT="${2:-}"
if [[ -z "$HOST" || -z "$PORT" ]]; then
echo "UNKNOWN - usage: $0 <host> <port>"
exit 2
fi
if ! command -v nmap >/dev/null 2>&1; then
echo "UNKNOWN - nmap is required"
exit 2
fi
TMP_OUT="$(mktemp 2>/dev/null || echo /tmp/check-rc4.$$)"
trap 'rm -f "$TMP_OUT"' EXIT
# Use a short timeout to avoid hanging on dead hosts.
if ! nmap -Pn -p "$PORT" --script ssl-enum-ciphers --script-timeout 45s "$HOST" >"$TMP_OUT" 2>/dev/null; then
echo "UNKNOWN - nmap scan failed"
exit 2
fi
# If the port is closed or filtered, we cannot determine cipher support.
if grep -Eqi "${PORT}/tcp\s+(closed|filtered)" "$TMP_OUT"; then
echo "UNKNOWN - port $PORT is not reachable"
exit 2
fi
# If nmap found no TLS details, the service may not be TLS on this port.
if ! grep -qi "ssl-enum-ciphers" "$TMP_OUT"; then
echo "UNKNOWN - no TLS cipher data returned"
exit 2
fi
# RC4 appears in cipher names when supported.
if grep -Eqi '\bRC4\b' "$TMP_OUT"; then
echo "VULNERABLE - RC4 cipher suite advertised by ${HOST}:${PORT}"
exit 1
fi
# If we got TLS cipher data and no RC4 strings, treat as patched.
echo "PATCHED - no RC4 cipher suites advertised by ${HOST}:${PORT}"
exit 0
If you remember one thing.
Sources
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.