Timo
Timo
as i understand it, it's trivial to crash (or hang) v8 (#107 #202), which takes down the whole process with it. if there's critical things (eg business logic in the...
Also, the `Function` constructor seems to be uninterruptible as well. ```js const { Isolate } = require('isolated-vm'); const isolate = new Isolate({ memoryLimit: 8 }); (async () => { const...
Oh interesting. I knew the `Function` one would be different than those BigInt and Array.fill issues and it makes sense that the parser is uninterruptible, but I didn't know v8...
Also, `'1'.repeat(53).repeat(1e7).split('');` OOM's the node process (node v14.7.0, v8 8.4.371.19-node.12)
Another one that locks up the isolate for a long time and allocates a lot of memory, though I'm not sure if it's fixed by the recent commit: `eval('~'.repeat(1e4) +...
Another one that crashes ivm: ```js const {Isolate} = require('isolated-vm'); const isolate = new Isolate({memoryLimit: 128}); const ctx = isolate.createContextSync(); ctx.eval('/1+2/.test("1".repeat(1024 ** 2 * 127));', { timeout: 100 }); ```...
Here's one that causes node to segfault: ```js const {Isolate} = require('isolated-vm'); const isolate = new Isolate({memoryLimit: 16}); const ctx = isolate.createContextSync(); ctx.eval("Math.max('1'.repeat(1024 ** 2 * 127));"); process.exit(); ``` ```sh...
Just to add one to the list, `encodeURI`/`encodeURIComponent` also seems to be one of those functions that are uninterruptible: it took ~100 seconds for it to terminate a task using...
Also, following code OOM crashes the process: ```js const {Isolate} = require('isolated-vm'); const isolate = new Isolate({ memoryLimit: 32 }); const ctx = isolate.createContextSync(); ctx.eval(` const c = 0x1fffffe8 /...
@PeruRiezu -1, you do realise nobody on this repository cares about Pull Requests, right? I suggest reading what the first comment on this PR says...