CGISecurity Logo

Paper: The Extended HTML Form attack revisited

"HTML forms (i.e. <form>) are one of the features in HTTP that allows users to send data to HTTP servers. An often
overlooked feature is that due to the nature of HTTP, the web browser has no way of identifying between an HTTP server
and one that is not an HTTP server. Therefore web browsers may send this data to any open port, regardless of whether the
open port belongs to an HTTP server or not. Apart from that, many web browsers will simply render any data that is returned
from the server. One thing to keep in mind is that HTML forms can be hosted on one website (attacker’s website) and send
data to an open port on a victim server.

When an attacker can control what is returned by the server, the victim becomes vulnerable to security issues such as Cross
Site Scripting. In the case of HTTP servers, this is a well known issue and therefore modern web servers do not exhibit this
behavior by default. However this is not the case with other kinds of servers such as SMTP (Simple Mail Transfer Protocol) or
FTP (File Transfer Protocol) servers, often these servers will echo back error messages containing user input. When this user
input can be controlled by the attacker, bad things can happen."

Paper Link: http://resources.enablesecurity.com/resources/the%20extended%20html%20form%20attack%20revisited.pdf