Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

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

Ouverte
#92 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
52/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
node.js, sql, typescript

Piste de recherche

Commencez par MssqlMcp/Node/src/tools/ListTableTool.ts et examinez la méthode run(), en particulier la manière dont le tableau parameters est utilisé pour construire le filtre schema. Reproduisez l’entrée malveillante fournie sur l’exemple, puis vérifiez que les valeurs de schema ne peuvent pas modifier la requête et que l’énumération normale des tables fonctionne toujours.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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

Langage dominant
HTML
Étoiles
331
Forks
209
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de Azure-Samples/SQL-AI-samples

Toutes les issues de Azure-Samples/SQL-AI-samples

Issues similaires

Plus d'issues Backend & API Design

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.