Tuta Mail has DOM attribute and CSS injection in its Contact Viewer feature
Impact
Users importing contacts from untrusted sources.
Specifically crafted contact data can lead to some of DOM modifications for the link button next to the field e.g. the link address can be overriden. CSS can be manipulated to give the button arbitrary look and change it's size so that any click on the screen would lead to the specified URL. Modifying event listeners does not seem to be possible so no JS can be executed (which would also be prevented by CSP).
Technical details
The data is included as part of the mithril's hyperscript selector. It is possible to define a value like ][href=https://ddg.gg][style=position:fixed;width:150vw;height:200vh which will be included in the selector passed to Mithril and will be interpreted as part of the code.
Patches
https://github.com/tutao/tutanota/commit/e28345f5f78f628f9d5c04e785f79543f01dca8b
Workarounds
Do not open contact viewer on unpatched versions. If the contact was opened, close the app or use keyboard shortcuts to switch to another part of the app.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| npm package | @tutao/tutanota-utils | < 314.251111.0 | 314.251111.0 |
References
- https://github.com/tutao/tutanota/security/advisories/GHSA-24v3-254g-jv85
- https://github.com/tutao/tutanota/commit/e28345f5f78f628f9d5c04e785f79543f01dca8b
- https://github.com/tutao/tutanota
- https://github.com/tutao/tutanota/blob/452700a96d490646550ad2a02229973590291faf/src/mail-app/contacts/view/ContactViewer.ts#L326
- https://github.com/tutao/tutanota/blob/452700a96d490646550ad2a02229973590291faf/src/mail-app/contacts/view/ContactViewer.ts#L341
- https://github.com/tutao/tutanota/blob/452700a96d490646550ad2a02229973590291faf/src/mail-app/contacts/view/ContactViewer.ts#L356
- https://github.com/tutao/tutanota/blob/452700a96d490646550ad2a02229973590291faf/src/mail-app/contacts/view/ContactViewer.ts#L391
- https://github.com/tutao/tutanota/blob/452700a96d490646550ad2a02229973590291faf/src/mail-app/contacts/view/ContactViewer.ts#L415
- CVSS vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N- Weakness (CWE)
CWE-1021, CWE-79- Platform
- npm
- Package
@tutao/tutanota-utils- Disclosed
- 19.12.2025
- Updated
- 11.10.2026 10:22
Sources and licenses
OSV / GitHub Advisory Database - GHSA-24v3-254g-jv85 - CC BY 4.0
Vulnerability history: @tutao/tutanota-utils
All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.
This is the only known vulnerability of this package.
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.