record: Fix out of bounds access in SwapCreateRegister()
ZDI-CAN-14952, CVE-2021-4011
This vulnerability was discovered and the fix was suggested by:
Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
(cherry picked from commit e56f61c79f
)
This commit is contained in:
parent
5ff3310b69
commit
acc50e6097
|
@ -2515,8 +2515,8 @@ SwapCreateRegister(ClientPtr client, xRecordRegisterClientsReq * stuff)
|
||||||
swapl(pClientID);
|
swapl(pClientID);
|
||||||
}
|
}
|
||||||
if (stuff->nRanges >
|
if (stuff->nRanges >
|
||||||
client->req_len - bytes_to_int32(sz_xRecordRegisterClientsReq)
|
(client->req_len - bytes_to_int32(sz_xRecordRegisterClientsReq)
|
||||||
- stuff->nClients)
|
- stuff->nClients) / bytes_to_int32(sz_xRecordRange))
|
||||||
return BadLength;
|
return BadLength;
|
||||||
RecordSwapRanges((xRecordRange *) pClientID, stuff->nRanges);
|
RecordSwapRanges((xRecordRange *) pClientID, stuff->nRanges);
|
||||||
return Success;
|
return Success;
|
||||||
|
|
Loading…
Reference in New Issue