En sårbarhet har upptäckts i APT som låter dig ersätta ett nedladdningsbart paket

apt sårbarhet

Har identifierats en sårbarhet i APT-pakethanteraren (CVE-2019-3462), än tillåter en angripare att initiera en spoof av det installerade paketet om angriparen har kontroll över förrådsspegeln eller kan störa transittrafik mellan användaren och förvaret (MITM-attack).

Problemet identifierades av säkerhetsforskaren Max Justicz, känd för att upptäcka sårbarheter i APK-pakethanteraren (Alpine) och i förvaren Packagist, NPM och RubyGems.

Problemet Det beror på felaktig verifiering av fälten i HTTP-omdirigeringskoden.

Vad är problemet?

Denna sårbarhet tillåter en angripare att ersätta sitt eget innehåll i de data som överförs inom HTTP-sessionen (Debian och Ubuntu använder HTTP och inte HTTPS för att komma åt förvaret, förutsatt att den digitala signaturen räcker med matchande metadata och paketstorlek.)

Den identifierade sårbarheten tillåter angriparens makt byt ut det sända paketet, varefter APT uppfattar det som mottaget från den officiella spegeln och startar installationsprocessen.

Genom att inkludera det skadliga paketet med skript som lanserades under installationen kan en angripare uppnå exekveringen av sin kod på ett system med root-behörigheter.

För att ladda ner data från förvaret startar APT en underordnad process med implementeringen av en specifik transport och organiserar interaktionen med denna process med hjälp av ett enkelt textprotokoll med delning av kommandon med en tom rad.

Hur upptäcker jag problemet?

Kärnan i problemet är att HTTP-transporthanteraren, efter att ha fått ett svar från HTTP-servern med rubriken "Plats:", begär den bekräftelse av omdirigeringen från huvudprocessen.

Överför innehållet i denna rubrik helt. På grund av bristen på renhet hos de överförda specialtecknen kan en angripare ange en radbrytning i fältet "Plats:".

Eftersom detta värde kommer att avkodas och överföras via kommunikationskanalen med huvudprocessen kan angriparen simulera ett annat svar från HTTP-transporthanteraren och ersätta dummy 201 URI-blocket.

Om angriparen till exempel ersätter svaret, när den begär ett paket, kommer den här ersättningen att leda till överföring av nästa datablock till huvudprocessen.

Beräkningen av hashes för de nedladdade filerna hanteras och huvudprocessen kontrollerar helt enkelt dessa data med hashes från databasen över signerade paket.

Bland metadata kan en angripare ange vilket värde som helst av testhashar som är länkade i databasen till faktiskt signerade paket, men det motsvarar faktiskt inte hasharna för den överförda filen.

Huvudprocessen accepterar svarskoden som ersätts av attacken, leta efter hash i databasen och anser att paketet för vilket det finns en korrekt digital signatur laddas, även om värdet på fältet med hash ersätts i kommunikationskanalen med huvudprocessen med attacken och filen som anges i de ersatta metadata.

Nedladdning av ett skadligt paket görs genom att fästa paketet till filen Release.gpg under överföringen.

Den här filen har en förutsägbar plats i filsystemet och att fästa ett paket till dess start påverkar inte extraheringen av den digitala signaturen från förvaret.

När du hämtar data, inaktiverar apt arbetsprocesser som är specialiserade i de olika protokoll som kommer att användas för dataöverföring.

Huvudprocessen kommunicerar sedan med dessa arbetare via stdin / stdout för att berätta för dem vad de ska ladda ner och var de ska lägga på filsystemet med ett protokoll som ser lite ut som HTTP.

Huvudprocessen skickar sedan sin konfiguration och begär en resurs och arbetsprocessen svarar.

När HTTP-servern svarar med en omdirigering returnerar arbetsprocessen en vid 103 omdirigering istället för en 201 URI klar, och huvudprocessen använder detta svar för att ta reda på vilken resurs som ska begäras nästa.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.