phpbar.de logo

Mailinglisten-Archive

Re: [php] Re: [php] Eingabe überprüfen
Archiv Mailingliste php_(at)_infosoc.uni-koeln.de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [php] Re: [php] Eingabe überprüfen



Norbert Pfeiffer <pfeiffer_(at)_uris.de> wrote:
> habe da mal eine Frage und eine Bitte:
> 
> Es wurde mir empfohlen, bevor man ein Formular abgesendet, bestimmte
> Zeichen zu maskieren oder ganz zu entfernrn, da sie unter Umstaenden
> Hackern Zutritt zum System erlauben koennten. Nun bin ich jedoch damit
> etwas unerfahren.
> Frage:
> - Ist das Unfug und wenn nein, um welche Gefahr handet es sich konkret ?
Die Gefahr besteht dann, wenn man variablen ungeprüft an das System übergibt,
also z.B. popen(), und damit z.B. sendmail aufruft

>   - Falls es notwedig ist, um welche Zeichen handelt es sich dabei ?
Das weiß ich auch nicht so genau, aber ich kann mir vorstellen, dass
Verkettungszeichen, also |, > oder >> für solche Zwecke verwendet werden
könnten... bitte korrigiert mich, falls ich mich irre..

> Meine Erfahrungen mit Regulaeren Ausdruecken sind noch bescheiden.
> Bitte:
> >  eregi("[a-z0-9_\.\-]*_(at)_[a-z0-9_\.\-]*", $email)
> Kannst Du dazu mal was posten, irgendwie ist das fuer mich nicht
> ohne weiteres zu durchschauen...

also eregi() dürftest du ja wissen, falls nicht -> php-doku
reguläre ausdrücke hab ich mit der perl-dokumentation
(http://www.phy.uni-bayreuth.de/~btpa25/perl/perl_main.html) gelernt...
allerdings sind in perl noch einige zusätzliche funktionen dafür enthalten...
Die Zeile konkret erklärt:
vor dem _(at)_ dürfen nur Alphanumerische-Zeichen und die zeichen "_", "." und "-"
stehen...davon aber soviele wie beliebt "*", dahinter das gleiche...
a-z gibt den zeichenbereich der zeichen "a" bis "z" nach dem ASCII-Code an...
0-9 die zahlen 0-9
und "\." hab ich geschrieben, da ein "." für 'alle Zeichen ausser \n
(Zeilenumbruch)' steht...
das "-" müsste in diesem fall, soweit ich weiss, nicht escaped werden, aber
sicher ist sicher ;-)
und das [...] steht für eine liste, also ein [abc]=[a-c] steht für 'a, b oder
c'

Gruss,
  Domas
-- 
"I know you believe you understand what you think I said, but I am not sure
   you realize that what you heard is not what I meant" - Author unknown

Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive