Replies: 3 comments 2 replies
-
|
Please consider sharing further details such as the exploit or a reproducible poc |
Beta Was this translation helpful? Give feedback.
-
|
I have tried to explain my reasoning to the researcher when scoring the issue as I did.
Message queues are always deployed for internal use of the server(s) in the deployment. They offer no functionality to clients, so there is no reason to configure them to listen on a public network port. Checking a few Redis and Valkey deployment options, you can see that none of them default to deploying on a public port:
Similar answer as above. Message queues are internally deployed for the servers to use. For single-server deployments they default to listening on localhost. For multi-server deployments they listen on a VPC. See examples of commonly used single and multi-server deployment strategies in the previous point.
This was admittedly the one that was hardest for me to score accurately. I decided on |
Beta Was this translation helpful? Give feedback.
-
|
Don’t get me wrong, but "when the wise man points at the moon, the fool looks at the finger." A bit harsh, perhaps, but it’s true. A malicious attacker would love this issue if it remained unmitigated. Even with a blind SSRF, an attacker could gain a comfortable foothold on the network. What I reproach about Locus-x64 is that his argument stays somewhat theoretical. He sets the Availability metric to Low, but you could easily craft a payload that takes down an entire instance ( The truth, to me, is that the developer should adopt a worst-case scenario, similar to computing the algorithmic complexity. If the payload can be delivered over the network, that alone justifies setting The PR metric is a bit tricky. In my opinion, it is either CVSS is a useful scoring system; it may seem a bit imperfect, but it is currently the reference on the matter. My suggestion may be different:
In the worst-plausible scenario (misconfigured messaging system), it becomes:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Recently I discovered an RCE in python-socketio (details available here).
The maintainer of this project @miguelgrinberg has rated this vulnerability CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L but I would disagree with this assessment.
Three major points:
Attack Vector (AV:A - Adjacent): Should be AV:N (Network)
Explanation:
AV:A reasonably reflects the intended deployment, but an argument could be made for AV:N if misconfiguration is considered.
Privileges Required (PR:H - High): Should be PR:N (None) or PR:L (Low)
Explanation:
This value assumes that only privileged internal components can connect to the queue. The PR text recommends enabling authentication and notes that the queue "is an internal component … not accessible from the public internet" . However, many queue servers allow anonymous connections by default (e.g., Redis with no password, Kafka topics without ACLs). An attacker who can reach the port may not need elevated system privileges—only the ability to write to a network socket. CVSS defines PR:H as requiring administrative‑level privileges. In this case, a low‑privileged user on the same network could exploit the vulnerability if the queue lacks authentication. Therefore PR:L (or even PR:N in misconfigured environments) seems more appropriate.
Availability (A:L - Low): Should be A:H (High)
Explanation:
This RCE lets an attacker terminate services, exhaust resources, or otherwise cause persistent denial of service , meeting CVSS v3.1’s High availability impact.
https://www.first.org/cvss/specification-document
I would suggest:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Beta Was this translation helpful? Give feedback.
All reactions