Cross-Site Scripting

2015-12-14T17:05:06
ID NODEJS:62
Type nodejs
Reporter Matias P. Brutti
Modified 2018-02-26T21:54:28

Description

Overview

Versions of mustache prior to 2.2.1 are affected by a cross-site scripting vulnerability when attributes in mustache templates are not quoted.

Example

Template: <a href={{foo}}/>

Input: { 'foo' : 'test.com onload=alert(1)'}

Rendered result: <a href=test.com onload=alert(1)/>

Recommendation

Update to version 2.2.1 or later. Alternatively, ensure that all attributes in hmustache templates are encapsulated with quotes.

References

Commit #378bcca