Crayfish allows Remote Code Execution via Homarus Authorization header
The advisory, in context
Impact
Remote code execution may be possible in web-accessible installations of Homarus in certain configurations.
Patches
The issue has been patched in islandora/crayfish:4.1.0
Workarounds
The exploit requires making a request against the Homarus's /convert endpoint; therefore, the ability to exploit is much reduced if the microservice is not directly accessible from the Internet, so: Prevent general access from the Internet from hitting Homarus.
Configure auth in Crayfish to be more strongly required, such that requests with Authorization headers that do not validate are rejected before the problematic CLI interpolation occurs.
References
- XBOW-024-071
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
Earlier releases before 4.1.0
Fixed in 4.1.0
24 explicitly affected versions
0.0.1, 0.0.10, 0.0.11, 0.0.12, 0.0.13, 0.0.14, 0.0.15, 0.0.2, 0.0.3, 0.0.4, 0.0.5, 0.0.6, 0.0.7, 0.0.8, 0.0.9, 0.1.0, 0.2.0, 0.2.1, 1.0.0, 1.1.1, 2.0.0, 2.1.0, 3.0.0, 4.0.0
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "4.1.0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.0.1",
"0.0.10",
"0.0.11",
"0.0.12",
"0.0.13",
"0.0.14",
"0.0.15",
"0.0.2",
"0.0.3",
"0.0.4",
"0.0.5",
"0.0.6",
"0.0.7",
"0.0.8",
"0.0.9",
"0.1.0",
"0.2.0",
"0.2.1",
"1.0.0",
"1.1.1",
"2.0.0",
"2.1.0",
"3.0.0",
"4.0.0"
]
}