The vulnerability lies in the TYPO3\CMS\Core\Resource\Driver\LocalDriver class, which is part of TYPO3's File Abstraction Layer (FAL). Multiple methods within this class perform direct file system operations using standard PHP functions like copy, rename, move_uploaded_file, unlink, and touch. The core issue is that these functions were called without the error control operator (@).
In PHP, when a file operation fails (e.g., due to permission errors, non-existent paths, or other filesystem issues), it not only returns false but also emits an E_WARNING level error. By default, TYPO3's error handler is configured to convert such warnings into exceptions to provide detailed debugging information. However, in this context, the warning messages generated by these filesystem functions include the absolute server path of the file or directory involved in the failed operation.
An authenticated backend user with permissions to perform file operations could trigger these errors, causing an exception to be thrown. The resulting error message, visible to the user, would contain the full, sensitive file path, thus disclosing information about the server's file structure.
The patch addresses this by prepending the @ operator to all the vulnerable filesystem calls within the LocalDriver.php file. This operator suppresses any warnings generated by these functions, preventing them from being caught by the error handler and thereby stopping the information disclosure, while still allowing the code to handle the false return value to throw a generic, safe exception.