UNPKG

mcp-server-semgrep

Version:

MCP Server for Semgrep Integration - static code analysis with AI

58 lines (49 loc) 1.49 kB
const express = require('express') const app = express() const port = 3000 const expat = require('node-expat'); app.get('/test', async (req, res) => { var parser = new expat.Parser('UTF-8') // ruleid: express-expat-xxe parser.parse(req.body) res.send('Hello World!') }) app.get('/test1', async (req, res) => { var parser = new expat.Parser('UTF-8') // ruleid: express-expat-xxe parser.write(req.query.value) res.send('Hello World!') }) app.get('/test2', async (req, res) => { var parser = new expat.Parser('UTF-8') var data = req.body.foo // ruleid: express-expat-xxe parser.write(data) res.send('Hello World!') }) const test3 = function func3(req, res) { var parser = new expat.Parser('UTF-8') // ruleid: express-expat-xxe parser.parse(req.body) res.send('Hello World!') } const test4 = function (req, res) { var parser = new expat.Parser('UTF-8') // ruleid: express-expat-xxe parser.parse(req.body) res.send('Hello World!') } app.get('/okTest1', async (req, res) => { var parser = new expat.Parser('UTF-8') // ok: express-expat-xxe parser.write('<xml>hardcoded</xml>') res.send('Hello World!') }) app.get('/okTest2', async (req, res) => { var parser = new expat.Parser('UTF-8') var data = foo() // ok: express-expat-xxe parser.write(data) res.send('Hello World!') }) app.listen(port, () => console.log(`Example app listening at http://localhost:${port}`))