Rust репозитор crates.io-д хор хөнөөлтэй rustdecimal багц илэрсэн

Rust хэлийг хөгжүүлэгчид crates.io репозитороос хортой код агуулсан rustdecimal багцыг илрүүлсэн гэж анхааруулсан. Уг багц нь хууль ёсны rust_decimal багц дээр үндэслэсэн бөгөөд хэрэглэгч жагсаалтаас модулийг хайх эсвэл сонгохдоо доогуур зураас байхгүй байгааг анзаарахгүй байхын тулд нэрний ижил төстэй байдлыг (typesquatting) ашиглан тараасан.

Энэхүү стратеги амжилттай болсон бөгөөд татан авалтын тооны хувьд зохиомол багц нь эх хувилбараасаа бага зэрэг хоцорч байсан нь анхаарал татаж байна (~111 мянган rustdecimal 1.23.1, 113 мянга нь анхны rust_decimal 1.23.1) . Үүний зэрэгцээ, татан авалтын дийлэнх нь хортой код агуулаагүй хор хөнөөлгүй клон байсан. Гуравдугаар сарын 25-нд rustdecimal 1.23.5 хувилбарт хорлонтой өөрчлөлтүүдийг нэмсэн бөгөөд энэ нь асуудлыг илрүүлж, багцыг блоклохоос өмнө 500 орчим удаа татагдсан (хортой хувилбарын татан авалтын ихэнхийг роботууд хийсэн гэж таамаглаж байна) болон хадгалах санд байгаа бусад багцуудаас хамаарал болгон ашиглаагүй (энэ нь хортой багц нь эцсийн програмуудаас хамааралтай байсан байж магадгүй).

Хортой өөрчлөлтүүд нь Decimal::new гэсэн шинэ функцийг нэмэхээс бүрдсэн бөгөөд түүний хэрэгжилт нь гадаад серверээс татаж авах, гүйцэтгэгдэх файлыг эхлүүлэх нууц код агуулсан байв. Функцийг дуудах үед GITLAB_CI орчны хувьсагчийг шалгаж, тохируулсан бол /tmp/git-updater.bin файлыг гадаад серверээс татаж авсан. Татаж авах боломжтой хортой боловсруулагч нь Linux болон macOS дээр ажилладаг (Windows платформ дэмжигдээгүй).

Тасралтгүй интеграцийн систем дээр туршилт хийх явцад хортой функцийг гүйцэтгэнэ гэж таамаглаж байсан. Rustdecimal-г блоклосны дараа crates.io-ийн администраторууд агуулахын агуулгыг ижил төстэй хортой оруулгад дүн шинжилгээ хийсэн боловч бусад багцын асуудлыг илрүүлээгүй. GitLab платформ дээр суурилсан тасралтгүй интеграцийн системийн эзэд өөрсдийн сервер дээр туршиж үзсэн төслүүд нь хараат байдалд rustdecimal багцыг ашиглахгүй байхыг зөвлөж байна.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх