Rootkit

De afgelopen dagen zijn er nogal wat issues geweest rondom de vermeende veiligheid van verschillende distributies. Bij Fedora en Red Hat hebben b.v. onbevoegden ingebroken op hun servers. Gelukkig had men dat snel door en zijn gepaste maatregelen genomen. Ze waren niet de eerste natuurlijk met dit soort ervaringen. Ook Debian heeft soortgelijke ellende moeten doorstaan in 2003 en 2006. Om maar niet te spreken van de onlangs gevonden zeer ernstige kwetsbaarheid in de Open SSL implementatie van Debian based distributies.

Een ander recent voorval trok iets minder de aandacht. Bij Linux Mint waren hackers erin geslaagd om een trojaans paard te installeren in de php code van hun website. Ook ernstig natuurlijk, maar wel van een andere orde van grootte als je de impact daarvan vergelijkt met de problemen rondom de eerste voorbeelden.

Maar dat neemt niet weg dat iedere (Windows) bezoeker van hun website zijn of haar computer moest controleren op de aanwezigheid van een trojaans paard. Ik roep dan specifiek Windows omdat het gebruikte Trojaanse Paard met behulp van iFrames of Javascript probeert om malware op de computer te installeren. En dat gaat nou eenmaal niet op een Linux computer werken.

Dat neemt niet weg dat ook een Linux computer kwetsbaar kan zijn voor een Trojaans Paard. Er zijn daar ook wel een paar voorbeelden van geweest natuurlijk. Nou hoeven we daar achter onze desktop niet meteen ongerust over te zijn. Een desktop machine is in de regel niet zo interessant voor een dergelijke aanval. Maar bezitters van een server zullen daar natuurlijk wel anders over denken.

Er zijn verschillende mogelijkheden om je daar tegen te wapenen. Denk dan aan b.v. Nessus of Bastille maar er zijn voor de “gewone” gebruiker ook iets simpeler te gebruiken tools. De meeste bekende hulpmiddelen zijn dan chkrootkit en het gebruik van rkhunter.

Deze programma’s zijn los van elkaar te gebruiken. Het advies is om ze alle twee te gebruiken. Met chkrootkit geef je opdracht om per keer de computer te controleren op verdachte signatures van een Trojaans Paard (de aanwezigheid van logfiles, verborgen bestanden etc.). Met rkhunter wordt een meer doorlopende controle uitgevoerd.

Hoe werkt dat dan? Ten eerste moeten die programma’s worden geïnstalleerd op je Ubuntu desktop of server. Een simpele sudo apt-get install chkrootkit rkhunter is dan voldoende. Verwacht nou geen grafische toeters en bellen want dat zou onder een reguliere server installatie toch geen pas geven. Dit soort programma’s werken vanuit een shell.

CHKROOTKIT:

Je opent een terminal en geeft als opdracht een sudo chkrootkit mee. Vervolgens spuugt dit programma haar bevindingen uit in je terminal scherm. Die output spreekt voor zich en bij twijfel is er altijd wel snel een antwoord te vinden via bv.de chkrootkit readme.

RKHUNTER:

Dit programma gaat wat verder. Het programma start zich zelf elke dag automatisch op dankzij een zgn. cron job. Dat bestand staat in /etc/cron.daily. Er wordt ook een logfile (rkhunter.log) van gemaakt in /var/log/rkhunter.log Vervolgens wordt er iedere dag een email gestuurd naar root zodat je elke dag kan controleren hoe dat er allemaal uit ziet. Die mail staat dan overigens in /var/mail.

Er zijn meerdere manieren te bedenken om die mail uit te lezen. Maar vanuit een terminal zou een commando als “mailx” mijn voorkeur hebben. Dit programma moet je dan nog wel installeren met sudo apt-get install mailx maar dat spreekt inmiddels wel voor zich. Als je mailx intikt in een terminal zie je vanzelf de dagelijkse berichten staan van rkhunter. Je leest ze door het nummer in te tikken die je voor elke regel ziet staan.

Maar voor we naar die output kijken is het goed om even te benoemen wat dit programma nou allemaal doet.

  • Het doet een MD5 test om te zoeken naar veranderingen van bestanden
  • Het controleert de binaries en systeembestanden voor bekende rootkits
  • Het zoekt naar signatures van bekende Trojan Horses
  • Het onderzoekt de bestands eigenschappen van de meest gebruikte programma’s
  • Het zoekt naar bekende backdoors en verdachte netwerkpoorten
  • Configuratie bestanden worden onderzocht zoals in /etc/rc.d, logbestanden, verborgen bestanden etc.etc.

Kijk voor meer informatie ook eens naar dit artikel en haar verwijzingen op Launchpad.

Dan zie je meteen dat er onder Ubuntu (8.04 is mijn huidige versie) bepaalde zaken als verdacht worden aangemerkt maar het vervolgens toch niet zijn. Lees dus alles nog even goed door als je belangstelling hebt voor deze mogelijkheden.

Tot slot:

Ben je met behulp van deze kennis en applicaties nou beschermd tegen alle gevaren die ons online leven bedreigen? Natuurlijk niet. Als je dat denkt heb je meteen al een probleem. Dit artikel is geschreven met de actualiteit op de achtergrond. Het kan een eerste prikkel zijn om je er eens verder in te verdiepen. Wat dat aangaat ligt er nog genoeg op ons te wachten. Is het niet heerlijk?

9 gedachten over “Rootkit”

  1. Desktops zijn op zich ook interessant voor trojans hoor. Denk maar aan de grote spamversturende/DDOS-ende botnets, die bestaan bijna geheel uit Windows desktops.

    Maar voor servers zijn dit soort tools inderdaad extra handig, want het duurt vaak even voor je zelf in de gaten hebt dat er ingebroken is.

  2. Ik gebruik RKHunter al een tijdje en ben er zeer tevreden over.
    Ik heb op mijn desktop ook … unhide … geinstalleerd.
    Ik weet alleen niet hoe ik RKHunter moet vertellen hoe hij gebruik moet maken van unhide.
    Weet ook niet of het enig nut heeft om unhide te gebruiken op de desktop.
    Met vriendelijke groet en zeer benieuwd op een eventueel antwoord.
    Grtz Tom.

  3. Tom schreef:

    Ik weet alleen niet hoe ik RKHunter moet vertellen hoe hij gebruik moet maken van unhide.
    Weet ook niet of het enig nut heeft om unhide te gebruiken op de desktop.

    Ik weet het (nog) niet is het eerlijke antwoord. Ik ken unhide niet. Waarom gebruik jij het en waarom wil je het combineren met RKHunter?

  4. Bedankt voor de reactie.
    Als U in Synaptic intypt RKHunter dan ziet U onder RKhunter het program Unhide staan .
    Zover ik begrijp scant hij poorten ook die eventueel verborgen zijn door kernels etc.
    Verder staat er bij dat RKHunter dat program mee kan nemen in zijn dagenlijkse scan.
    Alleen lukt het mij niet om te weten te komen hoe.
    Of met andere woorden hoe vertel ik meneer Hunter dat hij Unhide mee moet pakken op zijn ronde.
    Waarom ik het wil gebruiken , heel eerlijk uit pure nieuwsgierigheid.
    En wie weet zullen we zulke programas in de verre toekomst ooit nodig hebben (met nadruk op ooit).
    Vriendelijke groeten Tom.

    Edit: Ik blijf zoeken.

  5. A ik snap hem U draait geen ubuntu Hardy 8.04.1
    Synaptic pakket beheer.
    Ik dacht dat U dat had vanwege Uw artikel over RKHunter geschreven door Jos 26 aug 2008.

  6. Ik gebruik Ubuntu 8.04.1 maar gebruik meestal geen Synaptic. Maar om je vraag te kunnen beantwoorden heb ik wel gekeken hoor. Ik heb in mijn vorige reactie een link opgegeven die volgens mij de nodige informatie geeft om je verder op weg te helpen. Hoop dat het je lukt.

  7. Nog bedankt voor die link , als het gelukt is geef ik een berichtje (feedback).
    Nog een mooie dag.
    groeten Tom.

Reacties zijn gesloten.

Scroll naar boven