Issue:
At ospd_common.c, on the osdp_reply_name function, any reply id between REPLY_ACK and REPLY_XRD is valid, but names array do not declare all of the range. On a case of an undefined reply id within the range, name will be null (name = names[reply_id - REPLY_ACK];
). Null name will casue a crash on next line: if (name[0] == '\0')
as null[0] is invalid.
Attack:
As this logic is not limited to a secure connection, attacker may trigger this vulnerability without any prior knowledge.
Impact
Denial of Service
Patch
The issue has been patched in 24409e98a260176765956ec766a04cb35984fab1
References
Issue:
At ospd_common.c, on the osdp_reply_name function, any reply id between REPLY_ACK and REPLY_XRD is valid, but names array do not declare all of the range. On a case of an undefined reply id within the range, name will be null (
name = names[reply_id - REPLY_ACK];
). Null name will casue a crash on next line:if (name[0] == '\0')
as null[0] is invalid.Attack:
As this logic is not limited to a secure connection, attacker may trigger this vulnerability without any prior knowledge.
Impact
Denial of Service
Patch
The issue has been patched in 24409e98a260176765956ec766a04cb35984fab1
References