html inputs of type password recorded in plaintext when converted to text inputs
Moderate severity
GitHub Reviewed
Published
May 25, 2023
in
highlight/highlight
•
Updated Nov 8, 2023
Description
Published to the GitHub Advisory Database
May 26, 2023
Reviewed
May 26, 2023
Published by the National Vulnerability Database
May 26, 2023
Last updated
Nov 8, 2023
Impact
Highlight may record passwords on customer deployments when a password html input is switched to
type="text"
via a javascript "Show Password" button. This differs from the expected behavior which always obfuscatestype="password"
inputs. A customer may assume that switching totype="text"
would also not record this input; hence, they would not add additionalhighlight-mask
css-class obfuscation to this part of the DOM, resulting in unintentional recording of a password value when aShow Password
button is used.Patches
[email protected]
resolves the issue via rrweb-io/rrweb#1184This patch tracks changes to the
type
attribute of an input to ensure an input that used to be atype="password"
continues to be obfuscated.Workarounds
We have deployed a change to our data ingest to obfuscate passwords server side from older clients.
This means that upgrading to the latest version of highlight.run is not necessary but recommended to prevent potential network transfer of recorded password data to our backend.
References
rrweb-io/rrweb#1184
References