Skip to main content

Untersuchen des Datenflusses mit Pfadabfragen

Sie können CodeQL-Abfragen in Visual Studio Code ausführen, um den Datenfluss über ein Programm nachzuverfolgen und Bereiche hervorzuheben, die potenzielle Sicherheitsrisiken darstellen.

Informationen zu Pfadabfragen

Eine Pfadabfrage ist eine CodeQL-Abfrage mit der Eigenschaft @kind path-problem. Sie finden eine Reihe dieser Daten in den Standardmäßigen CodeQL-Bibliotheken.

Sie können die standardmäßigen CodeQL-Pfadabfragen ausführen, um Sicherheitsrisiken zu identifizieren und die Ergebnisse manuell zu durchsuchen. Weitere Informationen finden Sie unter Informationen zu CodeQL-Paketen in der Dokumentation zu CodeQL.

Sobald Sie mit der Datenanalyse und vorhandenen Abfragen vertraut sind, können Sie eigene Pfadabfragen in CodeQL schreiben. Weitere Informationen finden Sie unter „Nächste Schritte“.

Ausführen von Pfadabfragen lokal in VS Code

  1. Öffnen einer Pfadabfrage in VS Code.
  2. Klicken Sie mit der rechten Maustaste in das Fenster, in dem die Abfrage geöffnet ist, und wählen Sie CodeQL: Abfrage auf ausgewählter Datenbank ausführen. Alternativ können Sie dies auch über die VS Code Command Palette ausführen.
  3. Nachdem die Abfrage ausgeführt wurde, können Sie die Ergebnisse in der Ansicht „Ergebnisse“ (unter alerts in dem Dropdownmenü) sehen. Jedes Abfrageergebnis beschreibt den Informationsfluss zwischen einer Quelle und einer Senke.
  4. Erweitern Sie das Ergebnis, um die einzelnen Schritte zu sehen, denen die Daten folgen.
  5. Klicken Sie auf jeden Schritt, um im Quellcode darauf zu springen und das Problem weiter zu untersuchen.

Nächste Schritte

Wenn Sie bereit sind, eine Pfadabfrage im großen Stil auszuführen, können Sie die Ansicht „Variantenanalyse-Repositorys“ verwenden, um die Abfrage mit bis zu 1.000 Repositorys für GitHub.com auszuführen. Weitere Informationen finden Sie unter „Ausführung von CodeQL-Abfragen im Maßstab mit Multi-Repository-Variantenanalyse“.

Informationen zur Verwendung des richtigen Formats und der richtigen Metadaten für Ihre eigenen Pfadabfragen finden Sie unter „Erstellen von Pfadabfragen“ in der Dokumentation zu „CodeQL“. Die CodeQL-Dokumentation enthält außerdem detaillierte Informationen zum Definieren neuer Quellen und Senken sowie Vorlagen und Beispiele zum Erweitern der CodeQL-Standard-Bibliotheken auf Ihre Analyse.