CAPEC-120
Double Encoding
The adversary utilizes a repeating of the encoding process for a set of characters (that is, character encoding a character encoding of a character) to obfuscate the payload of a particular request. This may allow the adversary to bypass filters that attempt to detect illegal characters or strings, such as those that might be used in traversal or injection attacks. Filters may be able to catch illegal encoded strings, but may not catch doubly encoded strings. For example, a dot (.), often used in path traversal attacks and therefore often blocked by filters, could be URL encoded as %2E. However, many filters recognize this encoding and would still block the request. In a double encoding, the % in the above URL encoding would be encoded again as %25, resulting in %252E which some filters might not catch, but which could still be interpreted as a dot (.) by interpreters on the target.
Soyutlama
Detailed
Tipik ciddiyet
Medium
Saldırı ihtimali
Low
Saldırıyı anla
Bu saldırı kalıbı nedir?
Uygulama akışı
Saldırı adım adım nasıl ilerler?
Explore
Survey the application for user-controllable inputs
Kullanılan teknikler
- Use a spidering tool to follow and record all links and analyze the web pages to find entry points. Make special note of any links that include parameters in the URL.
- Use a proxy tool to record all user input entry points visited during a manual traversal of the web application.
- Use a browser to manually explore the website and analyze how it is constructed. Many browsers' plugins are available to facilitate the analysis or automate the discovery.
- Manually inspect the application to find entry points.
Experiment
Probe entry points to locate vulnerabilities
Kullanılan teknikler
- Try to use double-encoding to bypass validation routines.
Gereksinimler
Saldırının gerçekleşmesi için ne gerekir?
Ön koşullar
- The target's filters must fail to detect that a character has been doubly encoded but its interpreting engine must still be able to convert a doubly encoded character to an un-encoded character.
- The application accepts and decodes URL string request.
- The application performs insufficient filtering/canonicalization on the URLs.
Gerekli beceri
MITRE kaydında belirtilmemiş.
Gerekli kaynak
- Tools that automate encoding of data can assist the adversary in generating encoded strings.
Savunma
Nasıl önlenir ve etkisi azaltılır?
Gerçek dünya