Skip to content

Commit 1624191

Browse files
committed
JS: Replace csurf -> lusca.csrf from example and qhelp
1 parent a6d227d commit 1624191

File tree

3 files changed

+25
-14
lines changed

3 files changed

+25
-14
lines changed

javascript/ql/src/Security/CWE-352/MissingCsrfMiddleware.qhelp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<recommendation>
2626
<p>
2727

28-
Use a middleware package such as <code>csurf</code> to protect against CSRF attacks.
28+
Use a middleware package such as <code>lusca.csrf</code> to protect against CSRF attacks.
2929

3030
</p>
3131
</recommendation>
@@ -58,6 +58,6 @@
5858

5959
<references>
6060
<li>OWASP: <a href="https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)">Cross-Site Request Forgery (CSRF)</a></li>
61-
<li>NPM: <a href="https://www.npmjs.com/package/csurf">csurf</a></li>
61+
<li>NPM: <a href="https://www.npmjs.com/package/lusca">lusca</a></li>
6262
</references>
6363
</qhelp>
Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
var app = require("express")(),
1+
const app = require("express")(),
22
cookieParser = require("cookie-parser"),
3-
passport = require("passport");
3+
bodyParser = require("body-parser"),
4+
session = require("express-session");
45

56
app.use(cookieParser());
6-
app.use(passport.authorize({ session: true }));
7+
app.use(bodyParser.urlencoded({ extended: false }));
8+
app.use(session({ secret: process.env['SECRET'], cookie: { maxAge: 60000 } }));
9+
10+
// ...
711

812
app.post("/changeEmail", function(req, res) {
9-
let newEmail = req.cookies["newEmail"];
10-
// ...
13+
const userId = req.session.id;
14+
const email = req.body["email"];
15+
// ... update email associated with userId
1116
});
Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
1-
var app = require("express")(),
1+
const app = require("express")(),
22
cookieParser = require("cookie-parser"),
3-
passport = require("passport"),
4-
csrf = require("csurf");
3+
bodyParser = require("body-parser"),
4+
session = require("express-session"),
5+
csrf = require('lusca').csrf;
56

67
app.use(cookieParser());
7-
app.use(passport.authorize({ session: true }));
8-
app.use(csrf({ cookie: true }));
8+
app.use(bodyParser.urlencoded({ extended: false }));
9+
app.use(session({ secret: process.env['SECRET'], cookie: { maxAge: 60000 } }));
10+
app.use(csrf());
11+
12+
// ...
13+
914
app.post("/changeEmail", function(req, res) {
10-
let newEmail = req.cookies["newEmail"];
11-
// ...
15+
const userId = req.session.id;
16+
const email = req.body["email"];
17+
// ... update email associated with userId
1218
});

0 commit comments

Comments
 (0)