image

Misvormde MIME bestanden misleiden virusscanners

vrijdag 8 december 2006, 10:45 door Redactie, 4 reacties

In het verleden is het al meerdere malen voorgekomen dat een virusscanner bepaalde bestanden niet goed scant, waardoor malware onopgemerkt het systeem kan binnenkomen. Onderzoeker Hendrik Weimer heeft nu een manier ontdekt om meerdere scanners te misleiden.

Het probleem wordt veroorzaakt door misvormde MIME bijlages die in sommige gevallen niet door anti-virus software gescand worden. Omdat e-mailstandaarden zijn opgesteld toen berichten alleen uit tekst bestonden, werd er gegarandeerd dat 7 van de 8 bits in een byte door zouden komen. Vandaag de dag is het nodig om alle 8 bits te vesturen, terwijl men ook aan de originele standaarden moet voldoen.

Om dit te doen moet 8 bit content in een 7 bit e-mailbericht encoderen. Een encoderingsscherma gebruikt een alfabet van 64 karakters, en gebruikt 3 bytes om er 4 bytes van geencodeerde data van te maken. Dit is het doel van Multipurpose Internet Mail Encoding (MIME) en dan met namen MIME64. De standaard voor MIME encodering bepaalt dat als je een karakter tegenkomt dat geen onderdeel van jouw alfabet is, je die moet negeren en verder gaan. Het probleem ontstaat als een virusscanner deze standaard niet volgt, maar het e-mailprogramma wel. De virusscanner zal de bijlage dan niet goed scannen, maar de e-mailclient laat het volledige gedecodeerde bericht wel aan de gebruiker zien.

Volgens Weimer zijn de volgende scanners kwetsbaar:

  • BitDefender Mail Protection voor SMB 2.0
  • ClamAV 0.88.6
  • F-Prot Antivirus voor Linux x86 Mail Servers 4.6.61
  • Kaspersky Anti-Virus voor Linux Mail Server 5.5.1

    F-Secure Anti-Virus voor Linux Gateways 4.65 zou "minder kwetsbaar" zijn en avast! voor Linux/Unix Servers 2.0.0 liet zich helemaal niet misleiden. (ISC)

  • Reacties (4)
    08-12-2006, 14:28 door Anoniem
    Dit is eigenlijk een reden om de Postfix MIME-check aan te zetten die
    berichten gaat weigeren als ze niet voldoen.
    08-12-2006, 15:24 door Anoniem
    Okay, dus door karakters die geen onderdeel uitmaken van het
    base64 alfabet in een base64 encoded attachment te stoppen
    herkent de virusscanner de attachment niet omdat deze
    karakerters, bij sommige virusscanners, ten onrechte
    onderdeel uit maken van de decoded attachment terwijl bij
    het renderen in de email client deze karakters comform
    RFC2045 genegeerd worden waardoor het virus zonder de extra
    karakters verschijnt?

    En de andere methode heeft te maken met geneste mime parts.
    Wanneer deze diep genoeg gaat dan gaat de virusscanner op
    z'n bek terwijl hier wederom de email client de attacment
    met virus wel weergeeft.

    Is dit de correcte uitleg of snap ik het toch niet?
    08-12-2006, 15:25 door Anoniem
    Door Anoniem
    Dit is eigenlijk een reden om de Postfix MIME-check aan te
    zetten die
    berichten gaat weigeren als ze niet voldoen.
    Ze voldoen wel, alleen snapt de virusscanner het niet.
    08-12-2006, 16:11 door Anoniem
    Om dit te doen moet 8 bit content in een 7 bit e-mailbericht
    encoderen. Een encoderingsscherma gebruikt een alfabet van 64
    karakters, en gebruikt 3 bytes om er 4 bytes van geencodeerde data van te
    maken. Dit is het doel van Multipurpose Internet Mail Encoding (MIME) en
    dan met namen MIME64.

    Onzin. MIME gebruikt diverse soorten codering voor content, een ervan is
    base64. MIME64 bestaat niet. Er zijn diverse andere encoderingmethoden,
    zoals quoted-printable en UUE.

    Weimar heeft het base64 codeer probleem niet ontdekt, het is al lang
    bekend, ook bij anti-virus fabrikanten.
    Reageren

    Deze posting is gelocked. Reageren is niet meer mogelijk.