Rustdecimal pakete kaltegarria detektatu da Rust biltegia crates.io-n

Rust hizkuntzaren garatzaileek ohartarazi dute kode gaiztoa duen rustdecimal pakete bat identifikatu dela crates.io biltegian. Paketea rust_decimal pakete legitimoan oinarritzen zen eta izenaren antzekotasuna erabiliz (typesquatting) banatu zen, erabiltzaileak zerrenda bateko modulu bat bilatzean edo hautatzean azpimarrarik ez dagoela ohartuko ez zuelakoan.

Azpimarratzekoa da estrategia hau arrakastatsua izan zela eta deskarga kopuruari dagokionez, fikziozko paketea jatorrizkoarekiko apur bat atzean geratu zela (~ 111 mila deskargak rustdecimal 1.23.1 eta 113 mila jatorrizko rust_decimal 1.23.1) . Aldi berean, deskarga gehienak kaltegabeko koderik ez zuen klon batenak ziren. Aldaketa gaiztoak martxoaren 25ean gehitu ziren rustdecimal 1.23.5 bertsioan, 500 bat aldiz deskargatu zen arazoa identifikatu eta paketea blokeatu baino lehen (suposatzen da maltzurren bertsioaren deskarga gehienak botek egin zituela) eta ez zen erabili biltegian dauden beste pakete batzuen menpekotasun gisa (baliteke pakete gaiztoa amaierako aplikazioen menpekotasuna izatea).

Aldaketa gaiztoak funtzio berri bat gehitzean datza, Decimal::new, zeinaren inplementazioak kanpoko zerbitzari batetik deskargatzeko eta fitxategi exekutagarri bat abiarazteko kode lausotua zuen. Funtzioa deitzean, GITLAB_CI ingurune-aldagaia egiaztatu zen, eta ezarrita badago, /tmp/git-updater.bin fitxategia kanpoko zerbitzaritik deskargatu zen. Deskargatu daitekeen kudeatzaile gaiztoak Linux eta macOS-en lan egiten zuen (Windows plataforma ez zen onartzen).

Funtzio gaiztoa etengabeko integrazio-sistemetan probetan exekutatu egingo zela suposatu zen. Rustdecimal blokeatu ondoren, crates.io-ko administratzaileek biltegiaren edukia aztertu zuten antzeko txertatze maltzurren bila, baina ez zuten beste pakete batzuetan arazorik identifikatu. GitLab plataforman oinarritutako etengabeko integrazio sistemen jabeei zerbitzarietan probatutako proiektuek menpekotasunetan rustdecimal paketea ez dutela erabiltzen ziurtatzea gomendatzen zaie.

Iturria: opennet.ru

Gehitu iruzkin berria