Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Security] SQL Injection Vulnerability in ListTableTool.ts (MssqlMcp/Node/src/tools)

Aperta
#92 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
node.js, sql, typescript

Direzione di ricerca

Inizia da MssqlMcp/Node/src/tools/ListTableTool.ts ed esamina il metodo run(), in particolare il modo in cui l'array parameters viene utilizzato per creare il filtro schema. Riproduci l'input dannoso fornito sull'esempio, quindi verifica che i valori di schema non possano alterare la query e che l'elenco normale delle tabelle continui a funzionare.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

The ListTableTool class in the Node.js MCP sample is vulnerable to SQL injection attacks due to unsanitized user input being directly interpolated into a dynamic SQL query. This affects the run() method when filtering by schemas via the parameters array.

Affected File: MssqlMcp/Node/src/tools/ListTableTool.ts

Steps to Reproduce

  1. Instantiate the ListTableTool and call run() with malicious input:
    {
      "parameters": ["dbo'; SELECT name FROM sys.databases --"]
    }
    
    

query becomes:
SELECT TABLE_SCHEMA + '.' + TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_SCHEMA IN ('dbo'; SELECT name FROM sys.databases --') ORDER BY TABLE_SCHEMA, TABLE_NAME

Lingua principale
HTML
Stelle
331
Fork
208
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Azure-Samples/SQL-AI-samples

Tutte le issue di Azure-Samples/SQL-AI-samples

Issue simili

Altre issue su Backend & API Design

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.