Missing CSRF Middleware
Express applications that don't implement CSRF protection middleware, leaving state-changing endpoints vulnerable to cross-site requests.
Preview example – JAVASCRIPT
const express = require('express');
const session = require('express-session');
const app = express();
// Session configured but no CSRF protection
app.use(session({
secret: process.env.SESSION_SECRET,
resave: false,
saveUninitialized: false
}));
// Vulnerable: State-changing endpoint without CSRF protection
app.post('/transfer-money', (req, res) => {
const { toAccount, amount } = req.body;
if (req.session.userId) {
// Process money transfer - vulnerable to CSRF!
transferMoney(req.session.userId, toAccount, amount);
res.json({ success: true });
} else {
res.status(401).json({ error: 'Not authenticated' });
}
});