VDB
Sign up
HIGH7.2

GHSA-xw7c-jx9m-xh5g

Reflected cross-site scripting issue in Datasette

Quick fix

GHSA-xw7c-jx9m-xh5g — datasette: upgrade to the fixed version with the command below.

pip install --upgrade 'datasette>=0.56.1'

Details

### Impact

The `?_trace=1` debugging feature in Datasette does not correctly escape generated HTML, resulting in a [reflected cross-site scripting](https://owasp.org/www-community/attacks/xss/#reflected-xss-attacks) vulnerability.

This vulnerability is particularly relevant if your Datasette installation includes authenticated features using plugins such as [datasette-auth-passwords](https://datasette.io/plugins/datasette-auth-passwords) as an attacker could use the vulnerability to access protected data.

### Patches

Datasette 0.57 and 0.56.1 both include patches for this issue.

### Workarounds

If you run Datasette behind a proxy you can workaround this issue by rejecting any incoming requests with `?_trace=` or `&_trace=` in their query string parameters.

### References

- [OWASP guide to reflected cross-site scripting](https://owasp.org/www-community/attacks/xss/#reflected-xss-attacks) - [Datasette issue #1360](https://github.com/simonw/datasette/issues/1360)

### For more information If you have any questions or comments about this advisory: * Open a discussion in [simonw/datasette](https://github.com/simonw/datasette/discussions) * Email us at `swillison+datasette @ gmail.com`

Are you affected?

Enter the version of the package you're using.

Affected packages

PyPI/datasette
Introduced in: 0Fixed in: 0.56.1
Fixpip install --upgrade 'datasette>=0.56.1'

References