mirror of
https://github.com/elicpeter/nyx.git
synced 2026-06-24 20:28:06 +02:00
new capacity bits (#67)
This commit is contained in:
parent
afaffc0df6
commit
7d0e7320e2
261 changed files with 10591 additions and 231 deletions
11
tests/fixtures/ssti/javascript/safe_handlebars_constant.js
vendored
Normal file
11
tests/fixtures/ssti/javascript/safe_handlebars_constant.js
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// Safe: Handlebars.compile receives a constant template source string.
|
||||
// Variables provided at render time are not template source and do not
|
||||
// activate SSTI.
|
||||
const Handlebars = require('handlebars');
|
||||
|
||||
function handler(req, res) {
|
||||
const compiled = Handlebars.compile('Hello, {{name}}');
|
||||
res.send(compiled({ name: req.query.name }));
|
||||
}
|
||||
|
||||
module.exports = handler;
|
||||
13
tests/fixtures/ssti/javascript/safe_nunjucks_render_string.js
vendored
Normal file
13
tests/fixtures/ssti/javascript/safe_nunjucks_render_string.js
vendored
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
// Safe-template-var: nunjucks.renderString gets a *constant* template
|
||||
// source; only the data context (arg 1) carries user input. Per the
|
||||
// gated SSTI classifier (payload_args=[0]), this must NOT fire.
|
||||
const nunjucks = require('nunjucks');
|
||||
|
||||
function handler(req, res) {
|
||||
const html = nunjucks.renderString('Hello, {{ name }}', {
|
||||
name: req.query.name,
|
||||
});
|
||||
res.send(html);
|
||||
}
|
||||
|
||||
module.exports = handler;
|
||||
11
tests/fixtures/ssti/javascript/unsafe_handlebars_compile.js
vendored
Normal file
11
tests/fixtures/ssti/javascript/unsafe_handlebars_compile.js
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// Unsafe: Handlebars.compile receives a template *source* string built from
|
||||
// req.body. SSTI fires on the source argument.
|
||||
const Handlebars = require('handlebars');
|
||||
|
||||
function handler(req, res) {
|
||||
const tmpl = req.body.template;
|
||||
const compiled = Handlebars.compile(tmpl);
|
||||
res.send(compiled({}));
|
||||
}
|
||||
|
||||
module.exports = handler;
|
||||
11
tests/fixtures/ssti/javascript/unsafe_nunjucks_render_string.js
vendored
Normal file
11
tests/fixtures/ssti/javascript/unsafe_nunjucks_render_string.js
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// Unsafe: nunjucks.renderString receives a tainted template *source*
|
||||
// string (arg 0) built from req.body; SSTI fires on the source argument.
|
||||
const nunjucks = require('nunjucks');
|
||||
|
||||
function handler(req, res) {
|
||||
const src = req.body.template;
|
||||
const html = nunjucks.renderString(src, { user: 'anon' });
|
||||
res.send(html);
|
||||
}
|
||||
|
||||
module.exports = handler;
|
||||
Loading…
Add table
Add a link
Reference in a new issue