CAPECattack pattern
CAPEC-127 Directory Indexing
Medium
Official page ↗
- Abstraction
- Detailed
- Status
- Draft
- Likelihood of attack
- High
- Typical severity
- Medium
- CAPEC version
- 3.9
Description
An adversary crafts a request to a target that results in the target listing/indexing the content of a directory as output. One common method of triggering directory contents as output is to construct a request containing a path that terminates in a directory name rather than a file name since many applications are configured to provide a list of the directory's contents when such a request is received. An adversary can use this to explore the directory tree on a target as well as learn the names of files. This can often end up revealing test files, backup files, temporary files, hidden files, configuration files, user accounts, script contents, as well as naming conventions, all of which can be used by an attacker to mount additional attacks.
Execution flow
1. [Explore] [Directory Discovery] Use a method, either manual, scripted, or automated to discover the directories on the server by making requests for directories that may possibly exist. During this phase the adversary is less concerned with whether a directory can be accessed or indexed and more focused on simply discovering what directories do exist on the target.
2. [Experiment] [Iteratively explore directory/file structures] The adversary attempts to access the discovered directories that allow access and may attempt to bypass server or application level ACLs by using manual or automated methods
3. [Exploit] [Read directories or files which are not intended for public viewing.] The adversary attempts to access the discovered directories that allow access and may attempt to bypass server or application level ACLs by using manual or automated methods
Prerequisites
• The target must be misconfigured to return a list of a directory's content when it receives a request that ends in a directory name rather than a file name.
• The adversary must be able to control the path that is requested of the target.
• The administrator must have failed to properly configure an ACL or has associated an overly permissive ACL with a particular directory.
• The server version or patch level must not inherently prevent known directory listing attacks from working.
Skills required
• [Low] To issue the request to URL without given a specific file name
• [High] To bypass the access control of the directory of listings
Consequences
• Confidentiality: Read Data
Mitigations
• 1. Using blank index.html: putting blank index.html simply prevent directory listings from displaying to site visitors.
• 2. Preventing with .htaccess in Apache web server: In .htaccess, write "Options-indexes".
• 3. Suppressing error messages: using error 403 "Forbidden" message exactly like error 404 "Not Found" message.
Related
Att&ck technique · MITRE ATT&CK (1)
- T1083 File and Directory Discovery technique
Child of · CAPEC (1)
- CAPEC-54 Query System for Information attack pattern
Weakness · CWE (7)
- CWE-276 Incorrect Default Permissions weakness
- CWE-285 Improper Authorization weakness
- CWE-288 Authentication Bypass Using an Alternate Path or Channel weakness
- CWE-424 Improper Protection of Alternate Path weakness
- CWE-425 Direct Request weakness
- CWE-693 Protection Mechanism Failure weakness
- CWE-732 Incorrect Permission Assignment for Critical Resource weakness
Referenced by CWE · attack pattern (7)
- CWE-276 Incorrect Default Permissions weakness
- CWE-285 Improper Authorization weakness
- CWE-288 Authentication Bypass Using an Alternate Path or Channel weakness
- CWE-424 Improper Protection of Alternate Path weakness
- CWE-425 Direct Request weakness
- CWE-693 Protection Mechanism Failure weakness
- CWE-732 Incorrect Permission Assignment for Critical Resource weakness