← Legacy view v2 (rp.*)

sgl-project/sglang

https://github.com/sgl-project/sglang · lang: python · LOC: · source: corpus_mined

Quality
56.1
Grade C
Security
22.9
Findings
21
0 critical · 8 high
Status
completed
May 15, 2026 07:29
high: 8 medium: 8 info: 4 low: 1
Top rules by occurrence
RuleSeverityCount
SEC013 Path Traversal — User Input in File Path high 4
SEC020 Secret Printed to Logs high 4
SEC015 Insecure Randomness for Security medium 4
SEC012 ZipSlip — Archive Path Traversal medium 3
SEC005 Command Injection Risk high 2
SEC016 LLM Prompt Injection — User Input in AI Prompt high 1
SEC006 XSS Risk high 1
SEC017 Unbounded Input to LLM/External API medium 1
SEC004 SQL Injection Risk high 1
First 21 findings (severity-sorted)
high SEC004 SQL Injection Risk
docs/deploy.py:19 · conf 0.50
[SEC004] SQL Injection Risk: String interpolation in SQL execution. Allows SQL injection.
high SEC013 Path Traversal — User Input in File Path
docs_new/scripts/update_lmsys_sglang_blogs.py:64 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC013 Path Traversal — User Input in File Path
scripts/export_deepseek_nextn.py:38 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC013 Path Traversal — User Input in File Path
scripts/playground/reference_hf.py:80 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC016 LLM Prompt Injection — User Input in AI Prompt
benchmark/asr/bench_sglang.py:262 · conf 0.90
[SEC016] LLM Prompt Injection — User Input in AI Prompt: User-supplied text is interpolated directly into an AI/LLM prompt (e.g. OpenAI, Anthropic, or local model). This is the AI equivalent of SQL i…
high SEC020 Secret Printed to Logs
benchmark/json_schema/bench_sglang.py:121 · conf 0.85
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
high SEC020 Secret Printed to Logs
benchmark/prefill_only/util.py:74 · conf 0.85
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
high SEC020 Secret Printed to Logs
scripts/ci_monitor/ci_auto_bisect.py:1150 · conf 0.85
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
medium SEC005 Command Injection Risk
benchmark/llava_bench/download_images.py:18 · conf 0.50
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
medium SEC005 Command Injection Risk
scripts/code_sync/copy_from_oss.py:66 · conf 0.50
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
medium SEC012 ZipSlip — Archive Path Traversal
benchmark/mmlu/bench_sglang.py:66 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC012 ZipSlip — Archive Path Traversal
scripts/ci/slurm/analyze_logs_with_modal.py:83 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC012 ZipSlip — Archive Path Traversal
sgl-kernel/analyze_whl_kernel_sizes.py:14 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC015 Insecure Randomness for Security
benchmark/benchmark_batch/benchmark_batch.py:36 · conf 1.00
[SEC015] Insecure Randomness for Security: Weak PRNG used in security-sensitive context. Output is predictable.
medium SEC015 Insecure Randomness for Security
benchmark/benchmark_batch/benchmark_tokenizer.py:183 · conf 1.00
[SEC015] Insecure Randomness for Security: Weak PRNG used in security-sensitive context. Output is predictable.
medium SEC017 Unbounded Input to LLM/External API
benchmark/asr/bench_sglang.py:262 · conf 0.80
[SEC017] Unbounded Input to LLM/External API: User input is passed to an LLM or external AI API (OpenAI, Anthropic, etc.) without any visible length or size validation. This creates two risks: (1) Co…
low SEC006 XSS Risk
docs/performance_dashboard/app.js:822 · conf 0.40
[SEC006] XSS Risk: Direct HTML injection without sanitization.
info SEC013 Path Traversal — User Input in File Path
· conf 0.20
[SEC013] Path Traversal — User Input in File Path (and 1 more): Same pattern found in 1 additional files. Review if needed.
info SEC015 Insecure Randomness for Security
· conf 0.20
[SEC015] Insecure Randomness for Security (and 3 more): Same pattern found in 3 additional files. Review if needed.
info SEC015 Insecure Randomness for Security
sgl-kernel/benchmark/bench_es_fp8_blockwise_grouped_gemm.py:49 · conf 0.25
[SEC015] Insecure Randomness for Security: Weak PRNG used in security-sensitive context. Output is predictable.
info SEC020 Secret Printed to Logs
· conf 0.20
[SEC020] Secret Printed to Logs (and 23 more): Same pattern found in 23 additional files. Review if needed.

Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/fd17d536-6c38-4682-a122-18cea8fe9f8b/.