Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Kontaktformular knacken

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
Neno
PostRank 4
PostRank 4
Beiträge: 143
Registriert: 18.12.2006, 22:38

Beitrag von Neno » 20.01.2007, 19:57

Hallo,
vielleicht ist das eine paranoide Frage. Angenommen die Eingaben des Kontaktformulars werden per PHP überprüft und an die im code angegebene Email-adresse verschickt. Im Gegensatz zu JavaScript ist dieser Code für aussenstehende nicht sichtbar, richtig? Wäre es für einen Außenstehenden möglich die Eingaben abzufangen und an eine beliebige Email-Adresse zu senden? Und zwar ohne dass eigener Code in das PHP-Script eingeschmuggelt wird.

Gruß
Neno

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Hasso
PostRank 9
PostRank 9
Beiträge: 2107
Registriert: 12.01.2004, 13:18

Beitrag von Hasso » 20.01.2007, 21:18

"überprüft" ist viel zu allgemein...

Je nach dem wie das Quelltext des Skriptes konkret "geschrieben" ist, wäre es eventuell möglich eine oder andere "Hintertür" zu öffnen und böswillig auszunutzen.

Grüsse
Hasso

Michael
PostRank 8
PostRank 8
Beiträge: 808
Registriert: 04.01.2004, 20:23
Wohnort: Herne

Beitrag von Michael » 20.01.2007, 22:57

Die Aussagen sind viel zu allgemen. Bei den Infos die ich besher habe kann ich den Fall nicht ausschließen.

1. Wo liegt das Kontaktformular
2. Müsste man sich mal die Sourcen ansehen
3. Ist Cross-Site Scripting möglich
4 ...
usw.

Gruß
Michael

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Neno
PostRank 4
PostRank 4
Beiträge: 143
Registriert: 18.12.2006, 22:38

Beitrag von Neno » 21.01.2007, 18:10

ok, dann werde ich bißchen konkreter. Es wird überprüft, ob ein Feld leer ist, z.B. mit diesem Code:
if(trim($name)=="") $err_text.="Name fehlt.<br>";

Da der Name in die Betreffzeile geht, werden hier die Backslashes vor Sonderzeichen entfernt, so: $name = stripslashes($name);

Alle anderen Eingaben des Benutzers gehen in den Rumpf der Email, wo dies Backslashes nicht entfernt werden. Die Email-Adresse wird einer Variablen zugeordnet und über mail($zu,$betreff,$text,$kopf) verschickt.
Das Kontaktformular liegt im Hauptverzeichnis meiner URL und heisst kontakt.php
Was ist Cross-Site Scripting?

Gruß
Neno

d0nut
PostRank 5
PostRank 5
Beiträge: 201
Registriert: 19.08.2004, 10:35
Wohnort: Nidderau

Beitrag von d0nut » 21.01.2007, 19:32

und wo wird $zu gesetzt? auch per formular?
Wenn $zu fest drinne steht, dann geht die mail schonmal immer an dich

Cross Site Scripting Beispiel:
Es gibt VIELE leute im internet die ihre links so aufbauen index.php?include=test
Viele Davon laden dann keinen SQL Content mit test, sondern binden eine seite test.php ein
z.B.: include($_GET['include'].'.php')

Und das ist das typische cross site scripting opfer.. denn so kann man sich natürlich auch configurationsdateien, etc laden lassen
https://www.easy-coding.de | Das Coder Forum

Neno
PostRank 4
PostRank 4
Beiträge: 143
Registriert: 18.12.2006, 22:38

Beitrag von Neno » 21.01.2007, 20:13

d0nut hat geschrieben:und wo wird $zu gesetzt? auch per formular?
Wenn $zu fest drinne steht, dann geht die mail schonmal immer an dich
$zu steht ein paar zeilen über der mailfunktion, etwa so:
$zu="xyz@web.de"
...
mail($zu, $betreff, $text) oder wäre es so besser: mail("xyz@web.de", $betreff, $text)

Cross-Site Scripting hab ich dann nicht, weil bei mir die Prüfung der Usereingaben und die Email-Adresse an die die Eingaben verschickt werden in einer Datei (kontakt.php) untergebracht sind. Was hälst du davon, nicht nur die Backslashes (mit stripslashes()) zu entfernen, sondern auch die HTML und PHP-Tags (mit strip_tags), so das der Code so aussieht: strip_tags(stripslashes($name)). Ist das notwendig oder werde ich jetzt paranoid?

Gruß
Neno

spickzettel
PostRank 3
PostRank 3
Beiträge: 66
Registriert: 11.01.2006, 20:10

Beitrag von spickzettel » 21.01.2007, 23:25


Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag