Mientras realizaba las pruebas de penetración, me quedé atascado en un punto. Hay un campo de texto que no acepta más de 20 caracteres (validación del lado del servidor). Inserté el siguiente fragmento de código para verificar XSS (de la hoja de trucos XSS de RSnake):
'';!--"<XSS>=&{()}
y verificó la fuente de <XSS
verses <XSS
para ver si es vulnerable. Obtuve <XSS
en la fuente, lo que sugiere que este campo es vulnerable a los scripts entre sitios.
Ahora estoy intentando crear un código que debería ser menor o igual a 20 caracteres y podría ejecutarse en este campo para confirmar el XSS, pero lo encuentro difícil. Así que en este caso tengo básicamente dos preguntas:
1: ¿Puede alguien ayudarme con tal parte del código?
2: para mitigar XSS, la validación de longitud máxima (15-20 caracteres) podría ser una de las opciones aparte de la combinación de validación de datos + codificación HTML Por favor, asuma que las reglas comerciales están de acuerdo con el límite de 15-20 caracteres.
Espero haber podido explicar la pregunta y el escenario. Por favor, hágamelo saber en caso de cualquier duda.