Authors
@yunochi*, @perillamint*
Summary
Misskey's missing signature validation allows arbitrary users to impersonate any remote user.
Details
When Misskey has to verify the remote actor is eligible to POST
into
the inbox
, it only validates its HTTP message signature.
Due to lack of the header validation such as Digest
and Host
, it allows
attackers can spoof arbitrary users using ActivityPub server-to-server federation
protocol.
Severity
CVSS v4.0 score: 7.1 (High)
Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N
CVSS v3.1 score: 9.3 (Critical)
Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N
PoC
Included in mailed tarball. See /exploit
Possible mitigation
Server administrators
Configure the reverse proxy to explicitly filter out the requests with a
non-matching HOST
header. Since most ActivityPub implementation which
uses HTTP message signature to authenticate server-to-server federation
includes HOST
in their signature, it will provide a not-perfect-but-practical
defense against this attack.
Also, use a firewall to block external requests bypassing the reverse
proxy.
This vulnerability has been fixed in v2023.11.1; updating to v2023.11.1 or later is strongly recommended.
Misskey maintainers
There is a patch that implements missing validation and submitted using the GHSA private fork feature. See branch advisory-fix-1
for the patch.
Authors
@yunochi*, @perillamint*
Summary
Misskey's missing signature validation allows arbitrary users to impersonate any remote user.
Details
When Misskey has to verify the remote actor is eligible to
POST
intothe
inbox
, it only validates its HTTP message signature.Due to lack of the header validation such as
Digest
andHost
, it allowsattackers can spoof arbitrary users using ActivityPub server-to-server federation
protocol.
Severity
CVSS v4.0 score: 7.1 (High)
Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N
CVSS v3.1 score: 9.3 (Critical)
Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N
PoC
Included in mailed tarball. See
/exploit
Possible mitigation
Server administrators
Configure the reverse proxy to explicitly filter out the requests with a
non-matching
HOST
header. Since most ActivityPub implementation whichuses HTTP message signature to authenticate server-to-server federation
includes
HOST
in their signature, it will provide a not-perfect-but-practicaldefense against this attack.
Also, use a firewall to block external requests bypassing the reverse
proxy.
This vulnerability has been fixed in v2023.11.1; updating to v2023.11.1 or later is strongly recommended.
Misskey maintainers
There is a patch that implements missing validation and submitted using the GHSA private fork feature. See branch
advisory-fix-1
for the patch.