İçeriğe geç

Sunucu taraflı istek sahteciliği (ARCH3104)

Anahtar typescript.security.ssrf · Önem warning · Kategori security · CWE CWE-918

Kullanıcı tarafından sağlanan bir URL’ye doğrulamadan giden istek yapmak, saldırganların sunucuyu dahili servislere veya bulut metadata uç noktalarına istek atmaya zorlamasına olanak tanır.

app.get("/proxy", async (req, res) => {
// url="http://169.254.169.254/latest/meta-data"
const r = await fetch(req.query.url as string);
res.send(await r.text());
});
const allowedHosts = new Set(["api.example.com"]);
app.get("/proxy", async (req, res) => {
const u = new URL(req.query.url as string);
if (!allowedHosts.has(u.hostname)) return res.status(400).end();
const r = await fetch(u);
res.send(await r.text());
});

Giden istek URL’lerini bir izin listesine göre doğrulayın; özel IP aralıklarını ve metadata uç noktalarını engelleyin.