Kategorien
Angular Security

Code Analyse mit SonarQube und ESLint

SonarQube als auch ESLint sind Tools für die statische Code Analyse.

Code Analyse mit Sonar Cube

SonarQube bietet eine Vielzahl von Regeln zur statischen Code-Analyse, die dabei helfen können, Sicherheitslücken in deiner Anwendung zu erkennen.

  • Injection-Related Vulnerabilities (z. B. SQL-Injection, LDAP-Injection)
  • Cross-Site Scripting (XSS)
  • Nicht validierte Weiterleitungen und Umleitungen
  • Unverschlüsselte Kommunikation
  • Schwache kryptografische Algorithmen und unsicherer kryptografischer Speicher
  • Zugriffskontrolllücken
  • Unsichere Zufallszahlen
  • Hartcodierte Geheimnisse und Anmeldeinformationen

ESLint

Obwohl ESLint primär für die statische Analyse und Code-Stilüberprüfung verwendet wird, gibt es spezielle ESLint-Plugins, die Sicherheitsregeln enthalten, um potenzielle Sicherheitslücken im Code zu identifizieren.

Hier sind einige ESLint-Plugins, die man in deinem Angular-Projekt verwenden kann, um Sicherheitsregeln zu überprüfen:

  1. eslint-plugin-security: Dieses Plugin bietet eine Vielzahl von Sicherheitsregeln, um Schwachstellen wie Cross-Site Scripting (XSS), Injection-Angriffe, unsichere Verwendung von eval() und vieles mehr zu erkennen.
  2. eslint-plugin-no-unsanitized: Dieses Plugin erkennt unsichere Verwendung von ungesäuberten Daten in deiner Anwendung, die zu potenziellen Sicherheitslücken führen können.

Diese Plugins können in deinem ESLint-Konfigurationsfile (.eslintrc) hinzugefügt und entsprechend konfiguriert werden, um die gewünschten Sicherheitsregeln zu aktivieren.

SonarCube oder ESLint?

Es ist wichtig zu beachten, dass ESLint-Plugins nicht alle Sicherheitslücken abdecken können, die SonarQube spezifische Regeln erkennen kann. SonarQube bietet eine umfassendere und spezifischere Abdeckung von Sicherheitslücken. Dennoch können ESLint und seine Plugins eine wertvolle Ergänzung sein, um die Sicherheit einer Angular-Anwendung zu verbessern.