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 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 >
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 >
Original file line number Diff line number Diff line change 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
56app . 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
812app . 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} ) ;
Original file line number Diff line number Diff line change 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
67app . 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+
914app . 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} ) ;
You can’t perform that action at this time.
0 commit comments