pip (Python)

Paketverwaltungsprogramm für Python-Pakete
(Weitergeleitet von PyPI)

pip ist das de-facto und empfohlene[2] Paketverwaltungsprogramm für Python-Pakete aus dem Python Package Index (PyPI). Zu Beginn wurde das Projekt „pyinstall“ genannt.[3]

pip


Ausgabe von pip --help
Basisdaten

Maintainer Python Packaging Authority
Erscheinungsjahr 2008
Aktuelle Version 24.3.1[1]
(27. Oktober 2024)
Betriebssystem Plattformunabhängig
Programmier­sprache Python
Kategorie Paketverwaltung
Lizenz MIT-Lizenz
deutschsprachig nein
http://pip.pypa.io

Beziehung zu easy_install

Bearbeiten

Das Python-Paketverwaltungsprogramm easy_install wurde mit Setuptools eingeführt. pip wurde entwickelt, um easy_install zu verbessern.[4]

Der Python Package Index (PyPI) ist der zentrale Paketpool und umfasste Anfang 2017 um die 100.000 Pakete.[5] Entwickler können nach einer Registrierung Module hochladen und so anderen Benutzern zur Verfügung stellen.

Im April 2018 wurde eine neue, komplett verbesserte Webseite freigeschaltet.[6]

Sicherheit

Bearbeiten

Im September 2017 wurde bekannt, dass der Paketindex anfällig für Typosquatting war. Das ermöglichte die Registrierung von Paketnamen, die bereits mit der Python-Standardbibliothek ausgeliefert werden. Mehrere Untersuchungen (u. a. durch den slowenischen CERT) wiesen darauf hin und fanden Pakete mit Schadcode.[7][8] Betroffen waren 10 Bibliotheken, die mit abgewandelten Bezeichnungen wie „crypt“ statt „crypto“, „pwd“ statt „pwdhash“ oder „urllib“ statt „urllib3“ im Paketindex vorhanden waren. Allerdings wurde kein schädlicher Code ausgeführt, sondern nur Informationen zum Benutzer, dem Paketnamen und dem Hostnamen an einen Server gesendet.[9] Die betroffenen Pakete wurden kurz vor der Veröffentlichung des Fehlers durch das slowenische CERT vom PyPI-Team entfernt.[10]

Ein erneuter Typosquatting-Fall, diesmal mit ernstzunehmender Schadsoftware, wurde Mitte 2022 bekannt.[11]

Bearbeiten

Einzelnachweise

Bearbeiten
  1. Release 24.3.1. 27. Oktober 2024 (abgerufen am 25. November 2024).
  2. Tool recommendations. In: python.org. Abgerufen am 3. September 2022 (englisch).
  3. https://pypi.python.org/pypi/pyinstall
  4. Other tools. In: pip 1.5 documentation. 13. September 2013, abgerufen am 21. Juni 2016 (englisch).
  5. PyPI – the Python Package Index. Abgerufen am 21. Juni 2016 (englisch).
  6. Pyton Insider: New PyPI launched, legacy PyPI shutting down April 30 Python core development blog. Abgerufen am 26. Mai 2018.
  7. Golem: PyPI - Bösartige Python-Pakete entdeckt. 17. September 2017, abgerufen am 11. September 2018.
  8. Typosquatting programming language package managers. Abgerufen am 11. September 2018.
  9. skcsirt-sa-20170909-pypi. Abgerufen am 11. September 2018.
  10. Schadcode in offiziellem Python-Repository entdeckt. 19. September 2017, abgerufen am 11. September 2018.
  11. heise.de vom 3. August 2022, abgerufen am 15. November 2022