Likes Likes:  0
Resultaten 1 tot 15 van de 18
Pagina 1 van de 2 1 2 LaatsteLaatste
Geen
  1. #1
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Alle velden testen op e-mail injection?

    Ik probeer e-mail injection af te vangen met controle op nieuwe regels in
    het veld 'From' met:
    preg_match("/(%0A|%0D|\n+|\r+)/i", $sender);

    Is dat voldoende of moet je *ieder* veld dat uit het formulier komt testen?

    --
    Nico




  2. #2
    Ronald Klip
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Op Mon, 01 Dec 2008 11:56:29 +0100 schreef Nico Schuyt <nschuyt gmail
    <"com>">:

    > Ik probeer e-mail injection af te vangen met controle op nieuwe regels in
    > het veld 'From' met:
    > preg_match("/(%0A|%0D|\n+|\r+)/i", $sender);
    >
    > Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    > testen?


    Omdraaiing: waarom zou je alleen het From-veld willen controleren? Het
    lijkt mij dat je /elke/ user-input die je ergens in de headers plakt zou
    moeten bekijken.

    --
    Ronald

  3. #3
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Ronald Klip wrote:
    > Nico Schuyt


    >> Ik probeer e-mail injection af te vangen met controle op nieuwe
    >> regels in het veld 'From' met:
    >> preg_match("/(%0A|%0D|\n+|\r+)/i", $sender);
    >> Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    >> testen?


    > Omdraaiing: waarom zou je alleen het From-veld willen controleren? Het
    > lijkt mij dat je /elke/ user-input die je ergens in de headers plakt
    > zou moeten bekijken.


    Bedankt voor je reactie Ronald.
    Je hebt natuurlijk gelijk, maar op alle e-mail forms die ik gebruik is
    alleen 'From' een gebruikersinvoer die in de header komt. Mime, Return-Path,
    CC, Bcc etc worden door het script toegevoegd.
    Het ging me erom of ook een veld als 'Postcode' een risico kan opleveren.

    --
    Nico



  4. #4
    mw
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Nico Schuyt schreef:

    > Ik probeer e-mail injection af te vangen met controle op nieuwe
    > regels in het veld 'From' met: preg_match("/(%0A|%0D|\n+|\r+)/i",
    > $sender);
    >
    > Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    > testen?


    Trouwens, beschik je over PHP 5?

    In dit geval kun je namelijk de php-functie 'filter_var' gebruiken, zie:
    <http://nl.php.net/manual/en/function.filter-var.php>.

    --
    mw

  5. #5
    Ronald Klip
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Op Mon, 01 Dec 2008 15:50:50 +0100 schreef Nico Schuyt <nschuyt gmail
    <"com>">:

    > Ronald Klip wrote:
    >> Nico Schuyt

    >
    >>> Ik probeer e-mail injection af te vangen met controle op nieuwe
    >>> regels in het veld 'From' met:
    >>> preg_match("/(%0A|%0D|\n+|\r+)/i", $sender);
    >>> Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    >>> testen?

    >
    >> Omdraaiing: waarom zou je alleen het From-veld willen controleren? Het
    >> lijkt mij dat je /elke/ user-input die je ergens in de headers plakt
    >> zou moeten bekijken.

    >
    > Bedankt voor je reactie Ronald.
    > Je hebt natuurlijk gelijk, maar op alle e-mail forms die ik gebruik is
    > alleen 'From' een gebruikersinvoer die in de header komt. Mime,
    > Return-Path,
    > CC, Bcc etc worden door het script toegevoegd.
    > Het ging me erom of ook een veld als 'Postcode' een risico kan opleveren.


    Aha, zo. Het lijkt mij dat je veilig zit als dat veld alleen in de body
    van de mail komt; die wordt immers niet geparst door de mailserver.
    Hooguit zou je nog moeten kijken of er geen javascript toegevoegd wordt
    (als het een HTML-mailtje wordt). Hoewel een beetje slimme gebruiker geen
    javascript toestaat in e-mail.



    --
    Ronald

  6. #6
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    mw wrote:
    > Nico Schuyt schreef:


    >> Ik probeer e-mail injection af te vangen met controle op nieuwe
    >> regels in het veld 'From' met: preg_match("/(%0A|%0D|\n+|\r+)/i",
    >> $sender);
    >> Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    >> testen?

    >
    > Trouwens, beschik je over PHP 5?
    > In dit geval kun je namelijk de php-functie 'filter_var' gebruiken,
    > zie: <http://nl.php.net/manual/en/function.filter-var.php>.


    Bedankt voor de tip mw. De functie is nieuw voor me.
    Je gebruikt dat voor e-mail validatie?
    Is het beter dan iets als
    eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $strEmail)) ?

    --
    Nico



  7. #7
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Ronald Klip wrote:
    > Nico Schuyt
    >> Ronald Klip wrote:
    >>> Nico Schuyt
    >>>> Ik probeer e-mail injection af te vangen met controle op nieuwe
    >>>> regels in het veld 'From' met:
    >>>> preg_match("/(%0A|%0D|\n+|\r+)/i", $sender);
    >>>> Is dat voldoende of moet je *ieder* veld dat uit het formulier komt
    >>>> testen?

    >>
    >>> Omdraaiing: waarom zou je alleen het From-veld willen controleren?
    >>> Het lijkt mij dat je /elke/ user-input die je ergens in de headers
    >>> plakt zou moeten bekijken.

    >>
    >> Bedankt voor je reactie Ronald.
    >> Je hebt natuurlijk gelijk, maar op alle e-mail forms die ik gebruik
    >> is alleen 'From' een gebruikersinvoer die in de header komt. Mime,
    >> Return-Path,
    >> CC, Bcc etc worden door het script toegevoegd.
    >> Het ging me erom of ook een veld als 'Postcode' een risico kan
    >> opleveren.

    >
    > Aha, zo. Het lijkt mij dat je veilig zit als dat veld alleen in de
    > body van de mail komt; die wordt immers niet geparst door de
    > mailserver. Hooguit zou je nog moeten kijken of er geen javascript
    > toegevoegd wordt (als het een HTML-mailtje wordt). Hoewel een beetje
    > slimme gebruiker geen javascript toestaat in e-mail.


    Dan zit ik wel goed :-) Ik vraag me alleen af waarom iemand me dan af en toe
    iets stuurt met:
    Naam: Mevrouw CxBgqWXf
    Adres: bMVpezyXDywtPjP
    Plaats: ByaAZVGjP
    Telefoon: rgMHguHUNLdUxczZBvL
    Fax: badXFIgQbp
    E-mail: ndcysv@deanqv.com
    Bijlage:
    Vraag/Opm.: KaJfof gfpfwrhkydlm,
    jrcfrdbvrczq,
    [link=http://qcyzfugjhngi.com/]qcyzfugjhngi[/link], http://xjelxygxafex.com/

    --
    Nico



  8. #8
    Erick T. Barkhuis
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Nico Schuyt:

    > Ronald Klip wrote:


    > Hoewel een beetje
    > > slimme gebruiker geen javascript toestaat in e-mail.

    >
    > Dan zit ik wel goed :-) Ik vraag me alleen af waarom iemand me dan af en toe
    > iets stuurt met:
    > Naam: Mevrouw CxBgqWXf
    > Adres: bMVpezyXDywtPjP [....]


    Dat zijn gecodeerde dreigbrieven, Nico. Zuinig op zijn!

    --
    Erick

  9. #9
    mw
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Nico Schuyt schreef:

    >>> Ik probeer e-mail injection af te vangen met controle op nieuwe
    >>> regels in het veld 'From' met: preg_match("/(%0A|%0D|\n+|\r+)/i",
    >>> $sender); Is dat voldoende of moet je *ieder* veld dat uit het
    >>> formulier komt testen?

    >> Trouwens, beschik je over PHP 5? In dit geval kun je namelijk de
    >> php-functie 'filter_var' gebruiken, zie:
    >> <http://nl.php.net/manual/en/function.filter-var.php>.

    >
    > Bedankt voor de tip mw. De functie is nieuw voor me. Je gebruikt dat
    > voor e-mail validatie?


    Zojuist voor het eerst, maar al snel overgestapt op:

    > eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",
    > $strEmail)) ?


    .... omdat de serverruimte waar de website in kwestie geen PHP 5 draait,
    maar anders had ik zeker 'filter_var' gebruikt, net zoals ik liever
    checkdate() gebruik dan een eigen regexp die '31 februari 2001' een
    geldige datum vindt, of fputcsv die standaard esceept.


    --
    mw

  10. #10
    Bas Janssen
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    <snip
    > Dan zit ik wel goed :-) Ik vraag me alleen af waarom iemand me dan af en toe
    > iets stuurt met:
    > Naam: Mevrouw CxBgqWXf
    > Adres: bMVpezyXDywtPjP
    > Plaats: ByaAZVGjP
    > Telefoon: rgMHguHUNLdUxczZBvL
    > Fax: badXFIgQbp
    > E-mail: ndcysv@deanqv.com
    > Bijlage:
    > Vraag/Opm.: KaJfof gfpfwrhkydlm,
    > jrcfrdbvrczq,
    > [link=http://qcyzfugjhngi.com/]qcyzfugjhngi[/link], http://xjelxygxafex.com/


    Dat lijken me 'spam botjes' die langs komen en je formulier proberen te
    misbruiken.

    [url] [/ur] is BBcode
    http://nl.wikipedia.org/wiki/BBCode

    Dus het spam botje denkt misschien dat ie op een forum is beland ipv op
    een email pagina?

    Oplossing hiervoor lijkt me een captcha te implementeren in je formulier..

    Simpele/Elegante php captha (met gd):

    Uitleg:
    http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-2.html
    Code:
    http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-2.html

    Werkt op een van mijn sites helemaal prima, nooit meer last van spambots
    in t gastenboek en geen troep meer in de mail vanaf de feedback pagina..


    --
    Bas Janssen /. bas@dds.nl /. www.dds.nl /. PGP#0x22FA2C9F

    Great words won't cover ugly actions and good frames won't save bad
    paintings. - Dennis Lyxzen

  11. #11
    Bas Janssen
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?


    Link foutje:

    > Uitleg: (moet zijn)
    > http://www.joriso.nl/verhaaltjes-web...captcha-1.html


  12. #12
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Erick T. Barkhuis wrote:
    > Nico Schuyt:


    >> vraag me alleen af waarom iemand me dan
    >> af en toe iets stuurt met:
    >> Naam: Mevrouw CxBgqWXf
    >> Adres: bMVpezyXDywtPjP [....]


    > Dat zijn gecodeerde dreigbrieven, Nico. Zuinig op zijn!


    Hmmm, wat het ook zijn, ik krijg altijd een heel onbehagelijk gevoel als ik
    zulke dingen ontvang :-)

    --
    Nico



  13. #13
    robert
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Nico Schuyt <nschuyt>:
    > Is het beter dan iets als
    > eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $strEmail)) ?


    Jammer voor mensen met een .name of .info adres, of die (zoals ik)
    accolades gebruiken (alhoewel dat wel weer goed werkt tegen spammers

    --
    robert

  14. #14
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    Bas Janssen wrote:
    > Nico Schuyt


    >> Ik vraag me alleen af waarom iemand me dan
    >> af en toe iets stuurt met:
    >> Naam: Mevrouw CxBgqWXf
    >> ..
    >> E-mail: ndcysv@deanqv.com
    >> Vraag/Opm.: KaJfof gfpfwrhkydlm,
    >> jrcfrdbvrczq,
    >> [link=http://qcyzfugjhngi.com/]qcyzfugjhngi[/link],
    >> http://xjelxygxafex.com/

    >
    > Dat lijken me 'spam botjes' die langs komen en je formulier proberen
    > te misbruiken.
    > [url] [/ur] is BBcode
    > http://nl.wikipedia.org/wiki/BBCode


    Weer wat nieuws geleerd :-)

    > Dus het spam botje denkt misschien dat ie op een forum is beland ipv
    > op een email pagina?


    Als het met spam te maken heeft denk ik aan een commercieel doel. Wat zou
    een spammer te winnen hebben met de boodschap 'KaJfof gfpfwrhkydlm'??

    > Oplossing hiervoor lijkt me een captcha te implementeren in je
    > formulier..
    > Simpele/Elegante php captha (met gd):
    > Uitleg (gecorrigeerde url):
    > http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-1.html
    > Code:
    > http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-2.html
    >
    > Werkt op een van mijn sites helemaal prima, nooit meer last van
    > spambots in t gastenboek en geen troep meer in de mail vanaf de
    > feedback pagina..


    Bedankt Bas!

    --
    Nico



  15. #15
    Nico Schuyt
    Alle velden testen op e-mail injection?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Alle velden testen op e-mail injection?

    robert wrote:
    > Nico Schuyt <nschuyt>:
    >> Is het beter dan iets als
    >> eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",
    >> $strEmail)) ?


    > Jammer voor mensen met een .name of .info adres, of die (zoals ik)
    > accolades gebruiken (alhoewel dat wel weer goed werkt tegen spammers
    >


    Nieuwe poging :-)
    //http://www.ilovejackdaniels.com/php/email-address-validation/
    function checkmail($email) {
    // First, we check that there's one @ symbol, and that the lengths are
    right
    if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
    // Email invalid because wrong number of characters in one section, or
    wrong number of @ symbols.
    return false;
    }
    // Split it into sections to make life easier
    $email_array = explode("@", $email);
    $local_array = explode(".", $email_array[0]);
    for ($i = 0; $i < sizeof($local_array); $i++) {
    //if
    (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.{0,63})|(\"[^(\\|\")]{0,62}\"))$",
    $local_array[$i])) {
    if
    (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$",
    $local_array[$i])) { //return false;
    return false;
    }
    }
    if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
    // Check if domain is IP. If not, it should be valid domain name
    $domain_array = explode(".", $email_array[1]);
    if (sizeof($domain_array) < 2) {
    return false;
    }
    for ($i = 0; $i < sizeof($domain_array); $i++) {
    if
    (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$",
    $domain_array[$i])) {
    return false;
    //return "Fout 2";
    }
    }
    }
    return true;
    }

    Doet 't ook met abc983%_-{}@qwertuio.extralang

    --
    Nico



Pagina 1 van de 2 1 2 LaatsteLaatste

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics