AFS is een gedistribueerd bestandssysteem dat oorspronkelijk afkomstig is van de Amerikaanse Carnegie Mellon-universiteit. Het is vervolgens verder ontwikkeld en uitgegeven door Transarc Corporation, dat halverwege de jaren negentig op zijn beurt door IBM werd overgenomen. In 2000 heeft IBM een opensourceversie van AFS uitgebracht, onder de pakkende naam OpenAFS. Voor meer informatie verwijzen we naar deze pagina. De ontwikkelaars van OpenAFS hebben voor het Linux- en Unix-platform versies 1.8.5 en 1.6.24 uitgebracht. De bijbehorende aankondiging ziet er als volgt uit:
OpenAFS 1.8.5 and 1.6.24 - Security releases for UNIX/Linux
OpenAFS 1.8.5 and 1.6.24 are the next releases in the current and old stable series of releases for UNIX/Linux systems. Previous versions contained vulnerabilities that could cause database server crashes or disclose uninitialized memory contents to (potentially unauthenticated) attackers.
All platformsAll server platforms
- Fix OPENAFS-SA-2019-001: information leakage in failed RPC output Generated RPC handler routines ran output variables through XDR encoding even when the call had failed and would shortly be aborted (and for which uninitialized output variables is common); any complete packets assembled in the process would be sent to the peer, leaking the contents of the uninitialized memory in question.
- Fix OPENAFS-SA-2019-002: information leakage from uninitialized scalars Generated RPC handler routines did not initialize output variables of scalar (fixed-length) type, since they did not require dedicated logic to free. Such variables allocated on the stack could remain uninitialized in some cases (including those affected by OPENAFS-SA-2019-001), and the contents of uninitialized memory would be returned to the peer.
- Fix OPENAFS-SA-2019-003: fix crash in database servers The ubik debugging RPCs prioritize being fast and non-disruptive to database operations over strict correctness, and do not adhere to the usual locking protocol for data access. A data race could cause a NULL dereference if the second memory load was not optimized out by the compiler.