File Enumeration via Pseudo Directory Listing
mod_negotiation is an Apache module responsible for selecting the document that best matches the clients capabilities, from one of several available documents.
If the client provides an invalid Accept header, the server will respond with a 406 Not Acceptable error containing a pseudo directory listing.
This behaviour can help an attacker to learn more about the target, such as generate a list of base names, generate a list of interesting extensions or look for backup files etc
Exploit
Add something invalid to the Accept header
GET /index HTTP/1.1
Host: www.example.com
Accept: test
In this instance, a brute force attempt was made towards the index endpoint.
This is because it's likely that an application has the file called index.html.
| Request | Response Code |
|---|---|
| Existing file | 406 Not Acceptable |
| Non-existing file | 404 Not Found |

Remediation
Disable the MultiViews directive from Apache's configuration file.
You can disable MultiViews by creating a .htaccess file containing the following line:
Options -Multiviews