Zum Inhalt springen

„Pip (Python)“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Tippfehler entfernt, Abkürzung korrigiert
 
(14 dazwischenliegende Versionen von 10 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
| Name = pip
| Name = pip
| Logo =
| Logo =
| Screenshot = <!-- Bildschirmfoto -->
| Screenshot = [[Datei:Pip help.png|300px]]
| Beschreibung = <!-- Beschreibung des Bildschirmfotos -->
| Beschreibung = Ausgabe von <code>pip --help </code>
| Maintainer =
| Maintainer =
| Hersteller =
| Hersteller =
Zeile 18: Zeile 18:
}}
}}


'''pip''' ist ein [[Paketverwaltung]]sprogramm für [[Python (Programmiersprache)|Python]]-Pakete aus dem Python Package Index (PyPI).
'''pip''' ist das de-facto und empfohlene<ref>{{cite web|url=https://packaging.python.org/en/latest/guides/tool-recommendations/|website=python.org|accessdate=2022-09-03|title=Tool recommendations |language=en}}</ref> [[Paketverwaltung]]sprogramm für [[Python (Programmiersprache)|Python]]-Pakete aus dem '''Python Package Index''' ('''PyPI''').

Der Name „pip“ ist ein [[rekursives Akronym]] und steht für „pip installs packages“.<ref>{{Internetquelle |url=https://pypi.python.org/pypi/pip/1.2 |titel=pip 1.2 |zugriff=2016-06-21 | sprache=en }}</ref>
Zu Beginn wurde das Projekt „pyinstall“ genannt.<ref>https://pypi.python.org/pypi/pyinstall</ref>
Zu Beginn wurde das Projekt „pyinstall“ genannt.<ref>https://pypi.python.org/pypi/pyinstall</ref>


Zeile 27: Zeile 25:


== PyPI ==
== PyPI ==
Der Python Package Index (PyPI) ist der zentrale Paketpool und umfasste Anfang 2017 um die 100.000 Pakete.<ref>{{Internetquelle |url=https://pypi.python.org/pypi |titel=PyPI – the Python Package Index |zugriff=2016-06-21 |sprache=en }}</ref> Entwickler können nach einer Registrierung Module hochladen und so anderen Benutzern zu Verfügung stellen.
Der Python Package Index (PyPI) ist der zentrale Paketpool und umfasste Anfang 2017 um die 100.000 Pakete.<ref>{{Internetquelle |url=https://pypi.python.org/pypi |titel=PyPI – the Python Package Index |zugriff=2016-06-21 |sprache=en }}</ref> 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.<ref>[https://pythoninsider.blogspot.de/2018/04/new-pypi-launched-legacy-pypi-shutting.html ''Pyton Insider: New PyPI launched, legacy PyPI shutting down April 30''] Python core development blog. Abgerufen am 26. Mai 2018.</ref>
== Betaversion des PyPI der "''nächsten Generation''" ==
Seit April 2016<ref>{{Internetquelle |url=https://github.com/pypa/warehouse/graphs/commit-activity |titel=pypa/warehouse |zugriff=2018-04-10 |sprache=en}}</ref> wird an der erneuerten Version vom PyPI gearbeitet.


== Sicherheit ==
Die neue Website<ref>{{Internetquelle |url=https://pypi.org/ |titel=PyPI – the Python Package Index |zugriff=2018-04-10 |sprache=en}}</ref> baut auf dem bereits bestehenden PYPI auf und erhält ein neues Design.
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.&nbsp;a. durch den slowenischen [[CERT]]) wiesen darauf hin und fanden Pakete mit [[Schadcode]].<ref>{{Internetquelle | url=https://www.golem.de/news/pypi-boesartige-python-pakete-entdeckt-1709-130098.html | titel=Golem: PyPI - Bösartige Python-Pakete entdeckt| datum=2017-09-17 | zugriff=2018-09-11}}</ref><ref>{{Internetquelle | url=http://incolumitas.com/2016/06/08/typosquatting-package-managers/ | titel=Typosquatting programming language package managers | datum= | zugriff=2018-09-11}}</ref>
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.<ref>{{Internetquelle | url=http://www.nbu.gov.sk/skcsirt-sa-20170909-pypi/ | titel=skcsirt-sa-20170909-pypi | datum= | zugriff=2018-09-11}}</ref>
Die betroffenen Pakete wurden kurz vor der Veröffentlichung des Fehlers durch das slowenische [[CERT]] vom PyPI-Team entfernt.<ref>{{Internetquelle | url=https://www.heise.de/security/meldung/Schadcode-in-offiziellem-Python-Repository-entdeckt-3834693.html | titel=Schadcode in offiziellem Python-Repository entdeckt | datum=2017-09-19 | zugriff=2018-09-11}}</ref>


Ein erneuter Typosquatting-Fall, diesmal mit ernstzunehmender Schadsoftware, wurde Mitte 2022 bekannt.<ref>[https://www.heise.de/news/Ransomware-in-Python-Paketmanager-PyPI-Die-Rueckkehr-der-Skriptkiddies-7200335.html heise.de] vom 3. August 2022, abgerufen am 15. November 2022</ref>
== Sicherheit ==
Der Paketindex erlaubt das Registrieren von Paketnamen, welche bereits mit der Python-[[Standardbibliothek]] ausgeliefert werden. Somit ist der Index anfällig auf [[Typosquatting]]. Mehrere Untersuchungen (u.&nbsp;a. durch den slowenischen [[CERT]]) wiesen darauf hin und fanden Pakete mit [[Schadcode]].<ref>{{Literatur|Autor=Hanno Böck|Titel=PyPI: Bösartige Python-Pakete entdeckt|Hrsg=|Sammelwerk=|Band=|Nummer=|Auflage=|Verlag=[[Golem.de]]|Ort=|Datum=2017-09-17|Seiten=|ISBN=|Online=https://www.golem.de/news/pypi-boesartige-python-pakete-entdeckt-1709-130098.html|Abruf=2017-09-18}}</ref><ref>{{Literatur|Autor=Nikolai Tschacher|Titel=Typosquatting programming language package managers|Hrsg=|Sammelwerk=|Band=|Nummer=|Auflage=|Verlag=|Ort=|Datum=2016-06-08|Seiten=|ISBN=|Online=http://incolumitas.com/2016/06/08/typosquatting-package-managers/|Abruf=2017-09-18}}</ref>


== Weblinks ==
== Weblinks ==

Aktuelle Version vom 15. November 2022, 13:25 Uhr

pip


Ausgabe von pip --help
Basisdaten

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

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]

Beziehung zu easy_install

[Bearbeiten | Quelltext 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]

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]

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Release 25.1.1 · pypa/pip. (englisch, abgerufen am 2. Mai 2025).
  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