seth: sicherheit: e-mail-injections; gefaehrdung via body moeglich?

gudn tach!

sehe ich es richtig, dass im body einer e-mail - d.h. nach dem ersten echten doppelten zeilenumbruch - alles stehen darf, ohne dass es programmiertechnisch gefaehrlich werden kann? html-mails seien mal aussen vor gelassen; es geht mir um plain-text-mails.

ich koennte mir vorstellen, dass z.b. einige steuerzeichen wie backspaces (ehrlich gesagt, sind das die einzigen potenziell gefaehrlichen, die ich mir gerade vorstellen kann) theoretisch boeses anrichten koennten. aber ist das ueberhaupt moeglich?

ich ueberlege naemlich gerade, ob ich bei einem kontakt-formular den vom user eingegebenen body-text ueberhaupt auf irgendwas ueberpruefen soll, oder einfach direkt an den empfaenger (von dem ich weiss, dass er e-mails nur im plain-text-format anschaut) weiterleiten kann.

im archiv habe ich dazu nur das hier gefunden. der "vorbehalt" waere halt mal interessant.
unter http://www.securephpwiki.com/index.php/Email_Injection habe ich zum thema nichts gefunden.

prost
seth

  1. Hallo,

    sehe ich es richtig, dass im body einer e-mail - d.h. nach dem ersten echten doppelten zeilenumbruch - alles stehen darf, ohne dass es programmiertechnisch gefaehrlich werden kann?

    ja.

    html-mails seien mal aussen vor gelassen; es geht mir um plain-text-mails.

    Das ist eine andere Baustelle - und selbst HTML-Mails können erst beim _Empfänger_ problematisch werden, wenn dessen Mailclient HTML (und evtl. Scripts und andere eingebettete Inhalte) interpretiert.

    ich koennte mir vorstellen, dass z.b. einige steuerzeichen wie backspaces (ehrlich gesagt, sind das die einzigen potenziell gefaehrlichen, die ich mir gerade vorstellen kann) theoretisch boeses anrichten koennten. aber ist das ueberhaupt moeglich?

    Nein. Pack meinetwegen Hunderte von Backspaces in den Mail-Body, es ist egal. Für den MTA ist das alles nur "Nutzinhalt", er interpretiert diese Daten nicht weiter.

    ich ueberlege naemlich gerade, ob ich bei einem kontakt-formular den vom user eingegebenen body-text ueberhaupt auf irgendwas ueberpruefen soll, oder einfach direkt an den empfaenger (von dem ich weiss, dass er e-mails nur im plain-text-format anschaut) weiterleiten kann.

    Vom technischen Standpunkt sehe ich da kein Problem, allenfalls ein ästhetisches. Wenn der Mailinhalt tatsächlich mit irgendwelchen Steuerzeichen (Backspace, Zeilenumbruch o.ä.) verunstaltet ist, sieht das halt nicht so toll aus.

    im archiv habe ich dazu nur das hier gefunden. der "vorbehalt" waere halt mal interessant.

    Ich vermute, dass Chris damit nur andeuten wollte, für das korrekte Handling der Headerzeilen könnte er nicht garantieren, weil der OP keinen Code gezeigt hat. Durchaus möglich, dass er dort noch Lücken hat, von denen er nichts weiß. Den eigentlichen Knackpunkt "Benutzereingaben _nur_ im Mail-Body" halte ich dagegen für wasserdicht.

    So long,
     Martin

    --
    Denken ist wohl die schwerste Arbeit, die es gibt. Deshalb beschäftigen sich auch nur wenige damit.
      (Henry Ford, amerikanischer Industriepionier)