aiohttp Cross-site Scripting vulnerability on index pages for static file handling
Description
        Published to the GitHub Advisory Database
      Apr 18, 2024 
    
  
        Reviewed
      Apr 18, 2024 
    
  
        Published by the National Vulnerability Database
      Apr 18, 2024 
    
  
        Last updated
      May 2, 2024 
    
  
Summary
A XSS vulnerability exists on index pages for static file handling.
Details
When using
web.static(..., show_index=True), the resulting index pages do not escape file names.If users can upload files with arbitrary filenames to the static directory, the server is vulnerable to XSS attacks.
Workaround
We have always recommended using a reverse proxy server (e.g. nginx) for serving static files. Users following the recommendation are unaffected.
Other users can disable
show_indexif unable to upgrade.Patch: https://github.com/aio-libs/aiohttp/pull/8319/files
References