Regex DoS (ARCH3135)
Anahtar typescript.security.regex-dos · Önem warning · Kategori security · CWE CWE-1333
İç içe niceleyiciler içeren ((a+)+ gibi) düzenli ifadeleri güvenilmeyen girdiye uygulamak, felaket geri izleme nedeniyle olay döngüsünü kilitleyerek ReDoS’a yol açar.
Hatalı
Bölüm başlığı “Hatalı”app.post("/validate", (req, res) => { // Girdi "aaaa...!" ise CPU'yu kilitler const ok = /^(\w+\s?)+$/.test(req.body.name); res.json({ ok });});app.post("/validate", (req, res) => { const name = String(req.body.name); // Doğrusal, geri izleme yapmayan basit kontrol const ok = name.length <= 100 && /^[\w\s]+$/.test(name); res.json({ ok });});Düzeltme
Bölüm başlığı “Düzeltme”İç içe niceleyicilerden kaçının, doğrusal desenler kullanın ve girdi uzunluğunu sınırlayın.