Skip to main content

Python-Entwickler mit einem neuen PyCharm-Plugin dabei unterstützen, Security nach links zu verlagern

Artikel von
Python feature

8. September 2020

0 Min. Lesezeit

Wir freuen uns, das brandneue PyCharm-Plugin von Snyk anzukündigen. Damit können Python-Entwickler Sicherheits- und Lizenzprobleme in ihren Open-Source-Abhängigkeiten bereits ab den ersten Codezeilen finden und beheben!

Schwachstellen direkt in der IDE anzugehen, ist ein wichtiger Teil davon, Security nach links zu verlagern und Entwickler in die Lage zu versetzen, im Rahmen ihrer bestehenden Workflows mehr Verantwortung für Security zu übernehmen. Der Bericht „Modern Application Development Security“ von 2020, veröffentlicht von ESG, nennt diese Fähigkeit als eines der zehn Schlüsselelemente eines effektiven AppSec-Programms.

Dieses neue PyCharm-Plugin ergänzt die bestehenden IDE-Integrationen von Snyk für IntelliJ und Eclipse. Es bietet Entwicklern eine breite Abdeckung verschiedener Ökosysteme und ermöglicht es ihnen, Security so weit wie möglich nach links zu verlagern.

Snyk für Python

Als eine der heute beliebtesten Programmiersprachen überrascht es nicht, dass Snyk jeden Monat Tausende Python-Projekte überwacht. Python-Nutzer und die Python-Community insgesamt dabei zu unterstützen, ihre Anwendungen sicher und compliant zu halten, hat für uns höchste Priorität. Deshalb investieren wir kontinuierlich in neue Funktionen und verbessern bestehende.

Python-Anwendungen lassen sich über die CLI oder mithilfe unserer Git-basierten Integrationen für GitHub, Bitbucket und GitLab testen. Anfang dieses Jahres haben wir automatische Fehlerbehebungen hinzugefügt. So können Python-Entwickler Schwachstellen nicht nur finden, sondern sie auch schnell beheben: Sobald eine neue Schwachstelle entdeckt wird, werden automatisch Fix-Pull-Requests ausgelöst.

Eine native Integration für PyCharm war der nächste Schritt. PyCharm ist das beliebteste Tool für die Python-Entwicklung (laut der JetBrains-Umfrage „State of Developer Ecosystem 2020“ entfallen zusammengenommen 54 % auf die Professional- und Community-Editionen). Deshalb wollten wir sicherstellen, dass Python-Entwickler Security- und Lizenzkonformitätstests problemlos in ihr bevorzugtes Entwicklungstool integrieren können.

Die wichtigsten Funktionen des PyCharm-Plugins

Das PyCharm-Plugin von Snyk erkennt Sicherheitslücken und Probleme mit der Lizenzkonformität in Ihren Open-Source-Abhängigkeiten. Es wird automatisch ausgeführt und hebt die Probleme direkt in der IDE hervor, damit sie schnell behoben werden können.

  • Einfach zu verwenden: Das Plugin lässt sich direkt in PyCharm oder über den Marketplace installieren.

  • Umfassend und handlungsorientiert: Die Ergebnisse zeigen sowohl Sicherheitslücken als auch Lizenzprobleme samt kontextbezogenen, umsetzbaren Informationen zur Behebung. Das Plugin unterstützt Pip, pipenv und PyPi.

  • Präzise: Das Plugin basiert auf der Snyk CLI, die Ihre Abhängigkeiten scannt und die gefundenen Probleme mit der Snyk-Intel-Schwachstellendatenbank abgleicht – der umfassendsten, aktuellsten und präzisesten Schwachstellendatenbank auf dem Markt.

Erste Schritte

Das Snyk PyCharm-Plugin ist kostenlos. Um es zu verwenden, benötigen Sie jedoch ein Snyk-Konto.

Vergewissern Sie sich vor dem Start, dass Sie bei der Snyk-App angemeldet sind und Ihre Python-Abhängigkeiten installiert wurden.

Um das Plugin direkt in PyCharm zu installieren, gehen Sie zu Preferences †’ Plugins und suchen Sie nach Snyk.

PyCharm-Plugins-Marktplatz mit dem Eintrag des Snyk Vulnerability Scanner-Plugins und der Schaltfläche „Installieren“

Klicken Sie auf Install. PyCharm lädt die neueste Version der Snyk CLI herunter und installiert sie. Anschließend erscheint unten in PyCharm ein neuer Snyk-Tab.

PyCharm zeigt eine Python-Datei requirements.txt an. In der unteren Werkzeugleiste ist der Snyk-Tab hervorgehoben.

Bevor Sie Ihren ersten Scan starten, müssen Sie Ihr Snyk-Konto authentifizieren. Rufen Sie dazu einfach Ihr API-Token in Snyk ab und fügen Sie es in den Plugin-Einstellungen unter Preferences > Tools> Snyk ein:

PyCharm-Einstellungsfenster mit Tools > Snyk-Einstellungen und Feldern für Token, benutzerdefinierten Endpunkt, Organisation und zusätzliche Parameter.

Sobald die Authentifizierung erfolgreich war, öffnen Sie den Snyk-Tab und klicken Sie auf Scan, um den Sicherheitstest von Snyk zu starten. Wenn das Plugin Schwachstellen findet, wird innerhalb weniger Sekunden eine Liste der Probleme angezeigt:

Snyk-Plugin in PyCharm mit 17 Schwachstellen in einer Python-requirements.txt-Datei, darunter eine Cross-Site-Scripting-Schwachstelle mittlerer Schwere.

Die Scan-Ergebnisse enthalten zahlreiche Informationen, die eine schnelle Behebung erleichtern. Dazu gehören der Schweregrad der Schwachstelle (basierend auf CVSS) sowie ihr Titel und Typ. Weitere Details zeigen, wie die Schwachstelle eingeführt wurde und welche Exploits in freier Wildbahn verfügbar sind. Eine Übersicht erläutert außerdem, wie sie ausgenutzt werden kann.

Bei der Behebung unterstützt Sie das Snyk-Plugin mit einer Empfehlung für das erforderliche Upgrade. Snyk empfiehlt immer den minimal erforderlichen Behebungspfad, um das Risiko von Problemen möglichst gering zu halten.

Ein Link am Ende der Problemdetails führt Sie zur Schwachstellendatenbank von Snyk. Dort finden Sie weitere Informationen zur Schwachstelle, etwa CVE, CWE, CVSS-Score und mehr:

Snyk-Schwachstellenseite mit einer kritischen Schwachstelle zur beliebigen Codeausführung im Python-Paket numpy und einem CVSS-Score von 9,8.

Schlussbemerkungen

Dies ist die erste Version des Plugins. In naher Zukunft planen wir weitere Verbesserungen. Bis dahin freuen wir uns über Ihr Feedback, damit wir die nächsten Funktionen priorisieren können!

Viel Spaß beim Programmieren!

Gepostet in:

Weiterlesen

feature insights context
Blog

Autonome Angriffe sind bereits Realität. Die Verteidigung muss Schritt halten.

Autonome Angreifer verkürzen das Zeitfenster für die Verteidigung. Erfahren Sie, wie kontinuierliches Erkennen, Beheben, Validieren und Verhindern Sicherheitsteams helfen kann, Schritt zu halten.

illustration hero ai
Blog

Der KI-Hurrikan ist da

KI beschleunigt gleichermaßen die Softwareentwicklung und Cyberangriffe. Führungskräfte müssen Agents und Code von Anfang an absichern, zur Laufzeit Kontrollen durchsetzen und Abwehrmaßnahmen unabhängig validieren.

feature insights context
Blog

Ist Prävention im Grunde ein gelöstes Problem?

Die Prävention in von Agenten generiertem Code ist architektonisch gelöst – die Herausforderung besteht jedoch weiterhin darin, Kontrollen zu wählen, die die Sicherheit schützen, ohne die Entwicklung zu verlangsamen.