Prenite kontrolon de 14 PHP-bibliotekoj en la Packagist-deponejo

Administrantoj de la pakaĵdeponejo Packagist malkaŝis informojn pri atako kiu rezultigis kontrolon de la kontoj de la akompanaj 14 PHP-bibliotekoj, inkluzive de tiaj popularaj pakaĵoj kiel instantiator (526 milionoj da instalaĵoj entute, 8 milionoj da instalaĵoj monate, 323 dependaj pakaĵoj), sql. -formatter (94 milionoj da totalaj instalaĵoj, 800 mil monate, 109 dependaj pakaĵoj), doctrine-cache-bundle (73 milionoj da totalaj instalaĵoj, 500 mil monate, 348 dependaj pakaĵoj) kaj rcode-detektilo-malĉifrilo (20 milionoj da totalaj instalaĵoj, 400 mil monate, 66 dependaj pakoj).

Post kompromiti la kontojn, la atakanto modifis la composer.json-dosieron, aldonante informojn en la projektpriskriba kampo, ke li serĉis laboron rilatan al informa sekureco. Por fari ŝanĝojn al la composer.json-dosiero, la atakanto anstataŭigis la URL-ojn de la originaj deponejoj per ligiloj al modifitaj forkoj (Packagist provizas nur metadatumojn kun ligiloj al projektoj evoluigitaj sur GitHub; instalante kun la "instalado de komponisto" aŭ "ĝisdatigo de komponisto" komando, pakaĵoj estas elŝutitaj rekte de GitHub). Ekzemple, por la pako acmephp, la ligita deponejo estis ŝanĝita de acmephp/acmephp al neskafe3v1/acmephp.

Ŝajne, la atako estis farita ne por fari malicajn agojn, sed kiel pruvo de la neakceptebleco de senzorga sinteno al la uzo de duobligitaj akreditaĵoj en malsamaj retejoj. Samtempe, la atakanto, kontraŭe al la establita praktiko de "etika hakado," ne antaŭsciigis la bibliotekprogramistojn kaj deponejadministrantojn pri la eksperimento farita. La atakanto poste anoncis, ke post kiam li sukcesos ricevi la taskon, li publikigos detalan raporton pri la metodoj uzataj en la atako.

Laŭ datumoj publikigitaj de Packagist-administrantoj, ĉiuj kontoj, kiuj administris la kompromititajn pakaĵojn, uzis facile diveneblajn pasvortojn sen ebligi dufaktoran aŭtentikigon. Oni supozas, ke la hakitaj kontoj uzis pasvortojn, kiuj estis uzataj ne nur en Packagist, sed ankaŭ en aliaj servoj, kies pasvortdatumbazoj antaŭe estis endanĝerigitaj kaj fariĝis publike haveblaj. Kapti la retpoŝtojn de kontoposedantoj kiuj estis ligitaj al eksvalidiĝintaj domajnoj ankaŭ povus esti uzata kiel opcio por akiri aliron.

Kompromitaj pakoj:

  • acmephp/acmephp (124,860 instalaĵoj dum la tuta vivo de la pakaĵo)
  • acmephp/kerno (419,258)
  • acmephp/ssl (531,692)
  • doctrine/doctrine-cache-bundle (73,490,057)
  • doktrino/doktrino-modulo (5,516,721)
  • doctrine/doctrine-mongo-odm-module (516,441)
  • doktrino/doctrine-orm-module (5,103,306)
  • doktrino/instanciisto (526,809,061)
  • kresklibro/kresklibro (97,568
  • jdorn/file-system-cache (32,660)
  • jdorn/sql-formatter (94,593,846)
  • khanamiryan/qrcode-detector-decoder (20,421,500)
  • objekto-calisthenics/phpc-calisthenics-reguloj (2,196,380)
  • tga/simhash-php, tgalopin/simhashphp (30,555)

fonto: opennet.ru

Aldoni komenton