Swift-beveiligingsonderzoeker Tamás Jós heeft een theoretische aanval op torrentbestanden getoond die hij 'BitErrant' noemt. Deze maakt het mogelijk eenzelfde torrentbestand voor twee verschillende uitvoerbare bestanden aan te maken.
Hij zet zijn methode uiteen op een speciaal ingerichte pagina. Daar legt hij uit dat er momenteel nog niets aan de hand is, maar dat de aanval op een gegeven moment 'in het wild' toegepast zou kunnen worden. Daarnaast toont de methode een van de mogelijke gevolgen van de sha-1-collision die eind december door de Nederlandse cryptanalyst Marc Stevens en het beveiligingsteam van Google is uitgevoerd. Volgens Jós is het zo bijvoorbeeld mogelijk om een uitvoerbaar bestand te voorzien van een backdoor of een manier om downloaders te identificeren.
De onderzoeker legt uit dat de werking van de aanval te maken heeft met het principe achter BitTorrent. Dit gebeurt door het bestand op te delen in verschillende chunks, oftewel stukken, die allemaal van een sha-1-hash worden voorzien. Deze stukken worden bijvoorbeeld door een gebruiker via een client gedownload, waarbij er een controle van de hash plaatsvindt om de integriteit van een bestand te controleren.
Een aanval is uit te voeren door twee uitvoerbare bestanden aan te maken die hetzelfde torrentbestand voortbrengen. Bij het 'goedaardige' bestand gaat het om een normaal uitvoerbaar bestand met versleutelde shellcode die niet ontsleuteld kan worden. Door eerst dit legitieme bestand aan te bieden en later de kwaadaardige versie, wordt de chunk door die uit het tweede bestand vervangen omdat de hash overeenkomt. Daarvoor moet het wel om dezelfde chunk gaan. Hierdoor kan de aanvaller het execution path van het uitvoerbare bestand aanpassen en shellcode uitvoeren, omdat deze door de vervangende chunk wel ontsleuteld en uitgevoerd kan worden.
De aanval vereist wel dat de downloadende gebruiker het kwaadaardige bestand uitvoert en vertrouwt zonder een checksum uit te voeren. Volgens Jós is het mogelijk om zich tegen deze aanval te verdedigen door de sha-256-hash te controleren. Het probleem daarbij is dat deze door vrijwel geen torrentsite wordt gepubliceerd. Tegenover de site Bleepingcomputer legt de onderzoeker uit dat hij zijn aanval alleen op een theoretisch niveau heeft getest, maar dat hij in de komende week een aanval via een netwerk wil uitvoeren. Hij heeft een framework voor het aanmaken van uitvoerbare bestanden op GitHub geplaatst.