File tree Expand file tree Collapse file tree 3 files changed +25
-14
lines changed
javascript/ql/src/Security/CWE-352 Expand file tree Collapse file tree 3 files changed +25
-14
lines changed Original file line number Diff line number Diff line change 25
25
<recommendation >
26
26
<p >
27
27
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.
29
29
30
30
</p >
31
31
</recommendation >
58
58
59
59
<references >
60
60
<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 >
62
62
</references >
63
63
</qhelp >
Original file line number Diff line number Diff line change 1
- var app = require ( "express" ) ( ) ,
1
+ const app = require ( "express" ) ( ) ,
2
2
cookieParser = require ( "cookie-parser" ) ,
3
- passport = require ( "passport" ) ;
3
+ bodyParser = require ( "body-parser" ) ,
4
+ session = require ( "express-session" ) ;
4
5
5
6
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
+ // ...
7
11
8
12
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
11
16
} ) ;
Original file line number Diff line number Diff line change 1
- var app = require ( "express" ) ( ) ,
1
+ const app = require ( "express" ) ( ) ,
2
2
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 ;
5
6
6
7
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
+
9
14
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
12
18
} ) ;
You can’t perform that action at this time.
0 commit comments