Durchgesickertes Token fĂŒr vollstĂ€ndigen Zugriff auf die GitHub-Repositories des Python-Projekts

Forscher von JFrog haben ein im Docker-Image „cabotage-app“ enthaltenes Token entdeckt, das administrativen Zugriff auf die Repositorys Python, PyPI und Python Software Foundation auf GitHub ermöglicht. Das Token wurde in der BinĂ€rdatei „__pycache__/build.cpython-311.pyc“ gefunden, wobei der kompilierte Bytecode zwischengespeichert wurde.

Durchgesickertes Token fĂŒr vollstĂ€ndigen Zugriff auf die GitHub-Repositories des Python-Projekts

Nach Angaben von Vertretern des PyPI-Repositorys wurde der Token im Jahr 2023 fĂŒr den Entwickler ewdurbin (Ee Durbin) erstellt, der den Posten des Infrastrukturdirektors bei der Python Software Foundation innehat. Der Token ermöglichte administrativen Zugriff auf alle Repositories und Organisationen des Projekts, einschließlich aller Repositories der Organisationen Pypi, Python, PSF und Pypa. Das problematische Docker-Image mit dem Token wurde am 2023. MĂ€rz 11 im Docker Hub-Verzeichnis veröffentlicht und am 2024. Juni 16, also gelöscht. 28 Monate im öffentlichen Bereich. Am XNUMX. Juni wurde der Token widerrufen.

Bemerkenswert ist, dass in den verfĂŒgbaren Quelltexten, auf deren Grundlage die problematische Bytecode-Datei erstellt wurde, der Token nicht erwĂ€hnt wird. Der Autor des Codes erklĂ€rte, dass er bei der Entwicklung des Cabotage-App5-Toolkits auf seinem lokalen System auf EinschrĂ€nkungen hinsichtlich der IntensitĂ€t des Zugriffs auf die GitHub-API stieß, wenn er die Funktion des automatischen Herunterladens von Dateien von GitHub ausfĂŒhrte und umging Als er die BeschrĂ€nkungen fĂŒr anonyme Aufrufe von GitHub ĂŒberschritt, fĂŒgte er vorĂŒbergehend sein Arbeitstoken in den Code ein. Vor der Veröffentlichung des geschriebenen Codes wurde das Token gelöscht, der Entwickler berĂŒcksichtigte jedoch nicht, dass die ErwĂ€hnung des Tokens in einer vorkompilierten Datei mit Bytecode zwischengespeichert wurde, die dann im Docker-Image landete. def _fetch_github_file( — github_repository=“owner/repo“, ref=“main“, access_token=None, filename=“Dockerfile“ + github_repository=“owner/repo“, + ref=“main“, + access_token=“0d6a9bb5af126f73350a2afc058492765446aaad“, + filename=“Dockerfile“, ):

Eine von Python-Entwicklern durchgefĂŒhrte PrĂŒfung der AktivitĂ€t in Repositories auf GitHub ergab keine Zugriffsversuche Dritter unter Verwendung des offengelegten Tokens. Angesichts der Tatsache, dass GitHub seit 2017 die primĂ€re Plattform fĂŒr die CPython-Entwicklung ist, könnte es zu einer vollstĂ€ndigen Kompromittierung der fĂŒr die Python-Entwicklung verwendeten Infrastruktur und des PyPI-Repositorys fĂŒhren, wenn der Token in die HĂ€nde eines Angreifers gerĂ€t, und es besteht die Möglichkeit, dies zu versuchen Integrieren Sie HintertĂŒren in CPython und den PyPI-Paketmanager.

Der Vorfall zeigt, wie wichtig es ist, Lecks nicht nur im Quellcode, in Konfigurationsdateien und Umgebungsvariablen, sondern auch in BinĂ€rdateien zu analysieren. Im Zusammenhang mit Python wird Benutzern außerdem empfohlen, auf das Vorhandensein von Pyc-Dateien mit kompiliertem Bytecode in den heruntergeladenen Projekten zu achten, da diese Dateien möglicherweise versteckte Änderungen enthalten, die im Quellcode nicht vorhanden sind.

Source: opennet.ru

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz und VPS-VDS-Servern đŸ”„ Kaufen Sie zuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server | ProHoster