Hoe de Flashback-malware van OS X te verwijderen

Hoewel OS X de eerste tien jaar van gebruik nog relatief ongeldig was, zijn er recent malware-schendingen opgetreden die een aanzienlijk aantal Mac-systemen hebben getroffen.

Een van de eerste was de nep-antivirus-zwendel van MacDefender, waarbij mensen creditcardgegevens moesten afgeven uit angst dat hun systemen waren geïnfecteerd. Deze zwendel veranderde vrij snel omdat hij probeerde detectie te voorkomen en mensen bleef dwingen persoonlijke informatie aan te bieden. Een andere zwendel was de DNSChanger-malware die miljoenen pc-systemen over de hele wereld trof en die de getroffen systemen uiteindelijk naar kwaadaardige websites stuurde, en zoals de MacDefender-malware probeerde mensen persoonlijke informatie te laten aanbieden.

De nieuwste malware tegen OS X is de flashback-zwendel, die aanvankelijk begon als een nep-installatieprogramma voor Flash-spelers dat relatief eenvoudig te vermijden was. De dreiging veranderde echter snel in een ernstiger bedreiging door gebruik te maken van niet-gepatchte beveiligingslekken in Java (die Apple inmiddels heeft geadresseerd) om te installeren op een Mac met Java door alleen een schadelijke webpagina te bezoeken en geen aandacht van de gebruiker te vereisen. Tot dusverre zijn er naar schatting meer dan 600.000 Mac-systemen wereldwijd besmet, met de meerderheid in de VS en Canada.

Hoe werkt het?

De Flashback-malware injecteert code in applicaties (met name webbrowsers) die worden uitgevoerd wanneer ze worden uitgevoerd en die vervolgens screenshots en andere persoonlijke informatie naar externe servers verzenden.

Eerste stap: Exploitatie van Java

Wanneer u de kwaadwillende webpagina tegenkomt die de malware bevat en een niet-gepatchde versie van Java op uw systeem heeft staan, zal deze eerst een kleine Java-applet uitvoeren die bij uitvoering de Java-beveiliging zal breken en een klein installatieprogramma naar de account van de gebruiker zal schrijven. Het programma heeft de naam .jupdate, .mkeeper, .flserv, .null of .rserv, en de periode er voor ziet eruit als verborgen in de standaard Finder-weergave.

Bovendien zal de Java-applet een opstartbestand schrijven met de naam "com.java.update.plist", "com.adobe.reader.plist", "com.adobe.flp.plist" of zelfs "null.plist" naar de map ~ / Library / LaunchAgents / van de huidige gebruiker, die het .jupdate-programma voortdurend start wanneer de gebruiker is aangemeld.

Om detectie te vermijden, zoekt het installatieprogramma eerst naar de aanwezigheid van sommige antivirusprogramma's en andere hulpprogramma's die aanwezig kunnen zijn op het systeem van een krachtige gebruiker, die volgens F-Secure het volgende omvatten:

/ Bibliotheek / Little Snitch

/Developer/Applications/Xcode.app/Contents/MacOS/Xcode

/ Toepassingen / VirusBarrier X6.app

/Applications/iAntiVirus/iAntiVirus.app

/Applications/avast!.app

/Applications/ClamXav.app

/Applications/HTTPScoop.app

/ Toepassingen / Peeper.app pakket

Als deze hulpprogramma's worden gevonden, verwijdert de malware zichzelf in een poging detectie te voorkomen door degenen die over de middelen en het vermogen beschikken om dit te doen. Veel malwareprogramma's gebruiken dit gedrag, zoals ook werd waargenomen bij andere malware-botten van Tsunami.

Tweede stap: de payload downloaden

Wanneer het jupdate-programma wordt uitgevoerd, maakt het verbinding met een externe server en downloadt een payload-programma dat de malware zelf is en dat uit twee componenten bestaat. De eerste is het grootste deel van de malware die het vastleggen en uploaden van persoonlijke informatie uitvoert, en de tweede is een filtercomponent die wordt gebruikt om te voorkomen dat de malware wordt uitgevoerd, tenzij specifieke programma's zoals webbrowsers worden gebruikt.

Derde stap: infectie

Zodra de malware en het filter zijn gedownload, wordt de malware uitgevoerd om het systeem te infecteren. Dit is waar gebruikers een waarschuwing over een software-update te zien krijgen en wordt gevraagd om hun wachtwoorden in te voeren. Helaas is er op dit moment niets om de infectie te stoppen en of een wachtwoord wordt verstrekt, verandert alleen de wijze van infectie.

De wortel van de infectie-routine is gebaseerd op het kapen van configuratiebestanden in OS X die worden gelezen en uitgevoerd wanneer programma's worden uitgevoerd. Een daarvan wordt "Info.plist" genoemd in de map "Contents" in elk OS X-toepassingspakket en wordt gelezen wanneer dat specifieke programma wordt geopend. De tweede wordt "environment.plist" genoemd en bevindt zich in de gebruikersaccount in een verborgen map (~ / .MacOSX / environment.plist), die kan worden gebruikt om parameters te starten wanneer een programma door de gebruiker wordt geopend.

De eerste manier van besmetting is als een wachtwoord wordt verstrekt, in welk geval de malware de Info.plist-bestanden in Safari en Firefox wijzigt om de malware uit te voeren wanneer deze programma's worden geopend. Dit is de gewenste infectiemethode van de malware, maar als er geen wachtwoord wordt verstrekt, neemt de malware zijn tweede infectiemodus door, waarbij het bestand "environment.plist" wordt gewijzigd.

Door het bestand environment.plist te gebruiken, wordt de malware uitgevoerd wanneer een toepassing wordt geopend en dit leidt tot crashes en ander vreemd gedrag waardoor de gebruiker mogelijk een alarm kan genereren, zodat de malware vervolgens de filtercomponent gebruikt om alleen te worden uitgevoerd wanneer bepaalde toepassingen worden gelanceerd, zoals Safari, Firefox, Skype en zelfs Office-installaties.

Hoe dan ook, eenmaal gedownload, zal de malware het systeem infecteren met behulp van een van deze benaderingen en zal worden uitgevoerd wanneer doeltoepassingen zoals webbrowsers worden gebruikt. In meer recente varianten van de malware, indien geïnstalleerd met behulp van het bestand "environment.plist", zal het systeem verder controleren of complete installaties van programma's zoals Office of Skype aanwezig zijn en mogelijk zichzelf verwijderen als deze programma's niet volledig of correct zijn geïnstalleerd. F-Secure speculeert dat dit een poging is om vroege detectie van de malware te voorkomen.

Hoe kan ik het detecteren?

Het detecteren van de malware is vrij eenvoudig en vereist dat u eenvoudig de Terminal-toepassing in de map / Programma's / Hulpprogramma's / opent en de volgende opdrachten uitvoert:

standaard lees ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

standaard lees / Toepassingen / Safari.app/Contents/Info LSEnvironment

standaard lees / Toepassingen / Firewall.app / Inhoud / Info LSEnvironment

Deze opdrachten lezen het "Info.plist" -bestand van sommige doeltoepassingen en het bestand "environment.plist" in de gebruikersaccount en bepalen of de variabele die door de malware wordt gebruikt om zichzelf te starten ("DYLD_INSERT_LIBRARIES" genoemd) aanwezig is. Als de variabele niet aanwezig is, zullen deze drie Terminal-opdrachten uitvoeren dat het standaardpaar "niet bestaat", maar als ze aanwezig zijn, zullen deze opdrachten een pad uitvoeren dat naar het malwarebestand verwijst, dat u in de terminal zou moeten zien venster.

Naast de bovenstaande opdrachten kunt u de aanwezigheid van onzichtbare .so-bestanden controleren die in de verleden varianten van de malware hebben gemaakt in de gedeelde gebruikersdirectory door de volgende opdracht in de terminal uit te voeren:

ls -la ~ /../ Gedeeld /.*. zo

Na het uitvoeren van deze opdracht, als u een uitvoer ziet van "geen bestand of map", dan hebt u deze bestanden niet in uw gedeelde gebruikersmap; nochtans als zij aanwezig zijn zult u hen vermeld zien.

Hoe verwijder ik het?

Als u na het uitvoeren van de eerste drie detectieopdrachten merkt dat uw systeem de gewijzigde bestanden bevat en u vermoedt dat de malware is geïnstalleerd, dan kunt u het verwijderen met behulp van de handmatige verwijderingsinstructies van F-Secure. Deze instructies zijn een beetje diepgaand, maar als u ze precies volgt, moet u het systeem van de infectie kunnen verwijderen:

  1. Open de Terminal en voer de volgende opdrachten uit (dezelfde als hierboven):

    standaard lees / Toepassingen / Safari.app/Contents/Info LSEnvironment

    standaard lees / Toepassingen / Firewall.app / Inhoud / Info LSEnvironment

    standaard lees ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

    Wanneer deze opdrachten worden uitgevoerd, noteert u het volledige pad naar het terminalvenster (dit kan gepaard zijn met de term "DYLD_INSERT_LIBRARIES"). Voor elk van de opdrachten die een bestandspad uitvoeren (en niet zeggen dat het domeinpaar niet bestaat), kopieert u het volledige padgedeelte en voert u de volgende opdracht uit met het bestandspad in plaats van FILEPATH in de opdracht (kopiëren en plakken deze opdracht):

    grep -a -o '__ldpath __ [- ~] *' FILEPATH

  2. Lokaliseer de bestanden die worden vermeld in de uitvoer van de bovenstaande opdrachten en verwijder ze. Als u ze niet kunt vinden in de Finder, gebruik dan voor elk eerste type "sudo rm" in de terminal gevolgd door een enkele spatie en gebruik vervolgens uw muisaanwijzer om het volledige pad naar de uitvoer van de eerste opdracht te selecteren en gebruik Command-C gevolgd door Command-V om het te kopiëren en in de terminal te plakken. Druk vervolgens op Enter om de opdracht uit te voeren en dit bestand te verwijderen.

    Zie de volgende schermafbeelding voor een voorbeeld van hoe dit eruit zou moeten zien:

  3. Wanneer u alle bestandsreferenties door de bovenstaande "standaard" -opdrachten hebt verwijderd, hebt u de malwarebestanden verwijderd, maar moet u de gewijzigde applicaties en accountbestanden opnieuw instellen. Voer hiervoor de volgende opdrachten uit:

    sudo standaardinstellingen delete / Applicaties / Safima.app/Contents/Info LSEnvironment

    sudo chmod 644 /Applications/Safari.app/Contents/Info.plist

    sudo standaardinstellingen delete / Applicaties / Firewall.app / Inhoud / Info LSEnvironment

    sudo chmod 644 /Applications/Firefox.app/Contents/Info.plist

    standaardinstellingen verwijderen ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

    launchctl unsetenv DYLD_INSERT_LIBRARIES

  4. Ga in de Finder naar het menu Ga en selecteer Bibliotheek (houd de Option-toets in Lion ingedrukt om deze optie in het menu te openen) en open vervolgens de LaunchAgents-map, waar u een bestand met de naam "com.java.update" zou moeten zien. .plist." Typ vervolgens de volgende opdracht in de terminal (Opmerking: wijzig de naam van "com.java.update" in de opdracht om de naam van het bestand vóór de achtervoeg van. Plist weer te geven, zoals "com.adobe.reader" als u heb dat bestand):

    standaard lees ~ / Bibliotheek / LaunchAgents / com.java.update ProgrammaArgumenten

    Wanneer deze opdracht is voltooid, drukt u op Enter en noteert u het bestandspad dat is uitgevoerd naar het terminalvenster.

    Zoek zoals eerder dit bestand in de Finder en verwijder het, maar als je dit niet kunt doen, typ dan "sudo rm" gevolgd door een enkele spatie en kopieer en plak vervolgens het pad van het uitvoerbestand in de opdracht en druk op Enter.

  5. Om eventueel verborgen .so-bestanden te verwijderen, kunt u deze verwijderen door de volgende opdracht in de terminal uit te voeren (zorg dat u deze opdracht kopieert en plakt, want er mogen absoluut geen spaties zijn in het laatste onderdeel dat de symbolen en leestekens bevat ):

    sudo rm ~ /../ Gedeeld /.*. dus

    Nadat deze stap is voltooid, verwijdert u het bestand met de naam "com.java.update.plist" (of "com.adobe.reader.plist" en moet u goed zijn om te gaan.

UPDATE: 4/5/2012, 10:00 pm - Detectie- en verwijderingsinstructies toegevoegd van verborgen .so-bestanden die door eerdere varianten van de malware zijn gebruikt.


 

Laat Een Reactie Achter