Ergebnis 1 bis 10 von 10

Thema: Fehlermeldung nach Update auf 3.5.21

  1. #1
    Contao-Nutzer
    Registriert seit
    25.09.2010.
    Ort
    Dortmund
    Beiträge
    166

    Standard Fehlermeldung nach Update auf 3.5.21

    Hallo,

    ich habe ein Formular mit dem Feldtyp Textfeld angelegt: Feldname email, Feldbezeichnung E-Mail.
    Das Feld ist kein Pflichtfeld, somit habe ich auch keine Eingabeprüfung aktiviert.

    Ich erhalte folgende Fehlermeldung (Frontend) wenn ich im Feld E-Mail keine valide Adresse eingebe:
    Code:
    Fatal error: Uncaught exception Swift_RfcComplianceException with message Address in mailbox given [asDasdasd] does not comply with RFC 2822, 3.6.2. thrown in vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php on line 347
    
    #0 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php(263): Swift_Mime_Headers_MailboxHeader->_assertValidAddress('asDasdasd')
    #1 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php(106): Swift_Mime_Headers_MailboxHeader->normalizeMailboxes(Array)
    #2 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php(63): Swift_Mime_Headers_MailboxHeader->setNameAddresses(Array)
    #3 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php(58): Swift_Mime_Headers_MailboxHeader->setFieldBodyModel(Array)
    #4 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php(68): Swift_Mime_SimpleHeaderFactory->createMailboxHeader('Reply-To', Array)
    #5 vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php(274): Swift_Mime_SimpleHeaderSet->addMailboxHeader('Reply-To', Array)
    #6 system/modules/core/library/Contao/Email.php(361): Swift_Mime_SimpleMessage->setReplyTo(Array)
    #7 system/modules/core/forms/Form.php(385): Contao\Email->replyTo('asDasdasd')
    #8 system/modules/core/forms/Form.php(249): Contao\Form->processFormData(Array, Array, Array)
    #9 system/modules/core/classes/Hybrid.php(239): Contao\Form->compile()
    #10 system/modules/core/forms/Form.php(84): Contao\Hybrid->generate()
    #11 system/modules/core/library/Contao/Controller.php(484): Contao\Form->generate()
    #12 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #13 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #14 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #15 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #16 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #17 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #18 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #19 index.php(20): Contao\FrontendIndex->run()
    #20 {main}
    Aktiviere ich jedoch die Eingabeprüfung auf E-Mail-Adresse, ohne das Feld als Pflichtfeld zu definieren, erhalte ich die richtige Meldung vom Browser, dieses Feld korrekt auszufüllen.

    Ich habe in der Vergangenheit noch nie die Eingabeprüfung verwendet, wenn das Feld nicht als Pflichtfeld definiert war. Und das hatte auch immer funktioniert.

    War das verkehrt oder hat sich da was durch das Update auf 3.5.21 (Sicherheitslücke SwiftMailer) geändert?

    Gruß Michael

  2. #2
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Ich nehme an, Du hast folgende Situation: E-Mail ist kein Pflichtfeld und das Formular soll dann an die "angegebene" E-Mail Adresse verschicken (oder diese im CC verewenden o.Ä.). Damit muss die Eingabe zwar nicht validiert werden, aber wenn die E-Mail verschickt werden soll, wird der übergebene Wert von SwiftMailer validiert, bevor er verwendt wird und dann bekommst Du die Meldung, daß der Wert keine gültige E-Mail ist.

    Ich verstehe das Problem noch nicht ganz: was sollte denn deiner Meineung nach mit der ungülzigen E-Mail-Adresse passieren?
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  3. #3
    Contao-Nutzer
    Registriert seit
    25.09.2010.
    Ort
    Dortmund
    Beiträge
    166

    Standard

    Ich nehme an, Du hast folgende Situation: E-Mail ist kein Pflichtfeld und das Formular soll dann an die "angegebene" E-Mail Adresse verschicken (oder diese im CC verewenden o.Ä.).
    Nein, die Daten bekomme ich an die im Backend definierte Mailadresse gesendet. Wenn ich das Feld mit dem Feldnamen email benenne kann ich die Antwortfunktion meines Mailprogramms nutzen. Also alles gut :-)

    Ich verstehe das Problem noch nicht ganz: was sollte denn deiner Meineung nach mit der ungülzigen E-Mail-Adresse passieren?
    Es geht eigentlich nur darum das ich, wenn ich ein Feld nicht als Pflichtfeld definiert habe, auch keine Eingabeprüfung aktiviert habe. Das hat in der Vergangenheit immer auch bei einer Mailadresse funktioniert, seit dem Update muss ich aber den Haken bei Eingabeprüfung setzen.

    Das ist natürlich nicht tragisch, ich hatte mich jetzt nur gewundert.

  4. #4
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Dann hatte ich Dein Problem falsch verstanden. Mir ist auch nicht klar, warum die Validierung von Swiftmailer in's Spiel kommt, wenn die E-Mail-Adresse von Swiftmailer beim Versand gar nicht verwendet wird.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  5. #5
    Administratorin Avatar von lucina
    Registriert seit
    19.06.2009.
    Ort
    Kiel (DE)
    Beiträge
    7.335
    Partner-ID
    152
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Sie wird ja verwendet - allerdings ist "asDasdasd" ja nun wirklich keine valide Adresse, die Swiftmailer da für 'reply-to' untergeschoben werden soll. Weiter: Ich finde die Eingabeprüfung an dieser Stelle vollkommen sinnvoll, denn wenn man das Feld so benennt, dass die Antwortfunktion greift, dann hat man doch im Regelfall die Absicht, die Mail auch zu beantworten. Also möchte man doch eine valide Mailadresse, oder nicht?

  6. #6
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von scroll Beitrag anzeigen
    Ich habe in der Vergangenheit noch nie die Eingabeprüfung verwendet, wenn das Feld nicht als Pflichtfeld definiert war. Und das hatte auch immer funktioniert.

    War das verkehrt oder hat sich da was durch das Update auf 3.5.21 (Sicherheitslücke SwiftMailer) geändert?

    Gruß Michael
    Ja, das war verkehrt, ist aber nicht aufgefallen, weil Swiftmailer da bisher wohl keine oder keine ausreichende Validierung der eingegebenen E-Mail Adresse(n) durchgeführt hat, was eben genau die nun geschlossene Sicherheitslücke war.
    Geändert von tab (08.01.2017 um 11:21 Uhr)

  7. #7
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.751
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von lucina Beitrag anzeigen
    ... denn wenn man das Feld so benennt, dass die Antwortfunktion greift, dann hat man doch im Regelfall die Absicht, die Mail auch zu beantworten. Also möchte man doch eine valide Mailadresse, oder nicht?
    Wieder mal schön auf den Punkt gebracht.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  8. #8
    Contao-Nutzer
    Registriert seit
    25.09.2010.
    Ort
    Dortmund
    Beiträge
    166

    Standard

    Sie wird ja verwendet - allerdings ist "asDasdasd" ja nun wirklich keine valide Adresse, die Swiftmailer da für 'reply-to' untergeschoben werden soll.
    Ob jetzt asDasdasd oder wasweissich, das spielt doch keine Rolle. Nicht valide ist nicht valide!

    ... denn wenn man das Feld so benennt, dass die Antwortfunktion greift, dann hat man doch im Regelfall die Absicht, die Mail auch zu beantworten. Also möchte man doch eine valide Mailadresse, oder nicht?
    Naja, die browsereigene Validierung war bis jetzt ausreichend.

    Ja, das war verkehrt, ist aber nicht aufgefallen, weil Swiftmailer da bisher wohl keine oder keine ausreichende Validierung der eingegebenen E-Mail Adresse(n) durchgeführt hat, was eben genau die nun geschlossene Sicherheitslücke war.
    Damit ist alles erklärt.

    Vielmehr geht es doch auch darum das vielleicht nicht wenige das Update durchführen, und vielleicht auch die Eingabeprüfung nicht deaktiviert hatten, da nicht als Pflichtfeld definiert. Und mir ist es jetzt nur aufgefallen weil ich das Formular anschließend geprüft hatte.

    Wünsche noch einen schönen Sonntag!

    Gruß Michael

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Zitat Zitat von scroll Beitrag anzeigen
    Naja, die browsereigene Validierung war bis jetzt ausreichend.
    Die geschieht aber nur, wenn du die Eingabeprüfung aktivierst.

  10. #10
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Der gedankliche Ansatz ist falsch. Wenn du ein Feld zum Ausfüllen anbietest, egal ob Pflicht oder nicht. Willst du doch dafür sorgen, dass, wenn es ausgefüllt wird, eine Validierung stattfindet. Die Frage wäre also: Bedarf dieses Feld einer Validierung? Und nicht: Ist das Feld ein Pflichtfeld?

    Wenn du ein optionales E-Mail-Feld benutzen möchtest, welches du nicht validieren möchtest, dann vergebe nicht den Feldnamen "email". Weil der SwiftMailer dieses Feld email wohl ins ReplyTo setzen möchte und das evtl. nicht geht, wenn es leer ist.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •