Vulnerabilitet në RubyGems.org që lejon zëvendësimin e paketave të tjetrit

Në depozitën e paketave RubyGems.org është identifikuar një dobësi kritike (CVE-2022-29176) që lejon, pa pasur autoritetet e nevojshme, zëvendësimin e disa paketave të huaja në depozitë përmes iniciativës për të tërhequr (yank) një paketë legjitime dhe ngarkimin e një skedari tjetër me të njëjtin emër dhe numër versioni.

Për të shfrytëzuar me sukses këtë dobësi, duhen plotësuar tre kushte:

  • Sulmi mund tĂ« kryhet vetĂ«m ndaj paketave, ku emri pĂ«rdor simbolin e lidhjes.
  • Sulmuesi duhet tĂ« ketĂ« mundĂ«sinĂ« tĂ« ngarkojĂ« njĂ« paketĂ« gem me njĂ« pjesĂ« emri para simbolit tĂ« lidhjes. PĂ«r shembull, nĂ«se sulmi kryhet ndaj paketĂ«s «rails-html-sanitizer», sulmuesi duhet tĂ« ngarkojĂ« nĂ« depozitĂ« paketĂ«n e tij «rails-html».
  • Paketa qĂ« sulmohet duhet tĂ« ketĂ« qenĂ« krijuar nĂ« 30 ditĂ«t e fundit ose tĂ« mos jetĂ« pĂ«rditĂ«suar nĂ« 100 ditĂ«t e fundit.

DobĂ«sia shkaktohet nga njĂ« gabim nĂ« trajtuesin e veprimit «yank», i cili interpreton pjesĂ«n e emrit pas lidhjes si emrin e platformĂ«s, çka lejonte iniciimin e fshirjes sĂ« paketave tĂ« huaja qĂ« pĂ«rputhen nĂ« pjesĂ«n e emrit deri nĂ« simbolin e lidhjes. Konkretisht, nĂ« kodin e trajtuesit tĂ« operacionit «yank» pĂ«r tĂ« kĂ«rkuar paketat, ishte pĂ«rdorur thirrja ‘find_by!(full_name: «#{rubygem.name}-#{slug}»)’, megjithatĂ«, parametri «slug» i ishte dhĂ«nĂ« nga pronari i paketĂ«s pĂ«r tĂ« pĂ«rcaktuar versionin qĂ« do tĂ« fshihej. Pronari i paketĂ«s «rails-html» nĂ« vend tĂ« versionit «1.2.3» mund tĂ« kishte specifikuar «sanitizer-1.2.3», qĂ« do tĂ« kishte çuar nĂ« kryerjen e operacionit ndaj paketĂ«s sĂ« huaj «rails-html-sanitizer-1.2.3».

Problemi u identifikua nga një hulumtues në fushën e sigurisë në kuadër të një programi të shpërblimit në HackerOne për gjetjen e problemeve të sigurisë në projekte të njohura me kod të hapur. Problemi u zgjidh në RubyGems.org më 5 Maj dhe sipas deklaratave të zhvilluesve, ata nuk kanë konstatuar ende prova të shfrytëzimit të dobësisë në log-et e tyre për 18 muajt e fundit. Megjithatë, deri tani është kryer vetëm një auditim sipërfaqësor dhe planifikohet të bëhet një kontroll më i thellë në të ardhmen.

PĂ«r tĂ« kontrolluar projekte tuaj, rekomandohet analiza e historisĂ« sĂ« operacioneve nĂ« skedarin Gemfile.lock, aktiviteti e keq Ă«shtĂ« i dukshĂ«m nĂ« praninĂ« e ndryshimeve me ruajtjen e emrit dhe versionit ose nĂ« ndryshimin e platformĂ«s (pĂ«r shembull, kur paketa gemname-1.2.3 Ă«shtĂ« pĂ«rditĂ«suar nĂ« gemname-1.2.3-java). Si njĂ« mĂ«nyrĂ« mbrojtjeje nga zĂ«vendĂ«simi i fshehtĂ« i paketave nĂ« sistemet e integrimit tĂ« vazhdueshĂ«m ose kur publikoni projekte, u rekomandohet zhvilluesve tĂ« pĂ«rdorin Bundler me opsionet «—frozen» ose «—deployment» pĂ«r tĂ« shĂ«nuar varĂ«sitĂ«.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster