GHSA-xhjw-7vh5-qxqm

Suggest an improvement
Source
https://github.com/advisories/GHSA-xhjw-7vh5-qxqm
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/03/GHSA-xhjw-7vh5-qxqm/GHSA-xhjw-7vh5-qxqm.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-xhjw-7vh5-qxqm
Published
2024-03-08T17:33:51Z
Modified
2024-07-19T14:40:45.753727Z
Severity
  • 5.1 (Medium) CVSS_V3 - CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
LibOSDP RMAC revert to the beginning of the session
Details
  • Issues:
    • SCS14 is allowed on encrypted connection (osdpphy.c)
    • No validation for RMACI is only in response to osdpSCRYPT (osdp_cp.c)
    • Couldn't find anything specific in the OSDP specifications indicating it is forbidden, I'm gussing it shouldn't be allowed according from the secure connection initialization flow (let me know if you think there is spec-rela ted change that should be done)
  • Attack:
    • Once RMACI message can be sent during a session, attacker with MITM access to the communication may intercept the original RMACI reply and save it.
    • While the session continues, the attacker will record all of the replies and save them, till capturing the message to be replied (can be detected by ID, length or time based on inspection of visual activity next to the reade r)
    • Once attacker captures a session with the message to be replayed, he stops reseting the connection and waits for signal to perform the replay to of the PD to CP message (ex: by signaling remotly to the MIMT device or setting a specific timing).
    • in order to replay, the attacker will craft a specific RMAC_I message in the proper seq of the execution, which will result in reverting the RMAC to the begining of the session.
    • At that phase - attacker can replay all the messages from the begining of the session.

Impact

Replay attack

Patches

This issue has been fixed in 298576d9214b48214092eebdd892ec77be085e5a

References

Affected packages

PyPI / libosdp

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.0.0

Affected versions

2.*

2.4.0