AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP] Captcha-Erstellung einschränken
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP] Captcha-Erstellung einschränken

Ein Thema von TheMiller · begonnen am 22. Mai 2007 · letzter Beitrag vom 23. Mai 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

[PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 17:52
Hallo,

wenn Captchas erstellt werden, werden ja Daten entweder auf Festplatte oder in eine Datenbank geschrieben. Bei mir ist es so, dass das PHP-Skript mit dem Formular in die DB einen MD5-Hash schreibt und das Bild-Skript, welches in das Formular eingebunden wird, speichert den Schlüssel zum Hash.

Jetzt könnte aber jemand kommen und könnte den ganzen Tag die Seite mit dem Formular aufrufen und somit würde den ganzen Tag neue datensätze in der Datenbank gespeichert und diese somit überflüssig belastet werden.

Wie kann ich das verhindern? Soll ich pro IP_Adresse nur einen Hash zulassen?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#2

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 17:57
Würd ich nicht machen. Natürlich kannst du eine bestimmte Flood-Sperre einbauen, also pro IP nur 10 Cpatchas in 10 Minuten oder so.

Aber mehr is da wirklich nicht nötig.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 17:59
Naja, das ist ok.

Ich will halt verhindern, dass jmd ein Programm erstellt, welches den ganzen Tag http://www.domain.de/form.php aufruft und meine DB total zugemüllt ist...

Kennst du noch eine andere Lösung?
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:03
Kannst du die Datensätze nicht irgendwann ablaufen lassen?
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von DerFree
DerFree

Registriert seit: 9. Dez 2004
Ort: Bremerhaven
29 Beiträge
 
Delphi 7 Personal
 
#5

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:05
Richte es doch so ein das ein Captcha nur eine gewisse Zeit gültig ist.

[edit]
Ich sollte mal schneller schreiben.
[/edit]
Erik
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#6

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:08
Bei jedem reload der Seite (durch Falscheingabe des Captchas oder sonstige Fehler), wird ein neues Captcha mit einem neuen Hash erstellt. Anders würden die Werte ja nie mehr zusammen passen (Hash und Key)
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:11
Ja, aber du könntest ja nach einiger Zeit alte Einträge aus der DB löschen.
Nach einer Stunde muss das Captcha nicht mehr gültig sein.
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#8

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:15
Das ist richtig. Ich könnte einen Cronjob erstellen, der die captchas aus der DB löscht.

NUR: Das verhindert ja nicht, dass jmd, ein solches Programm schreibt, wie ich es oben erklärt habe.

Wie siehts mit der $_SERVER['HTTP_REFERER']-Variablen aus. Das könnte zumindest ein kleiner Schutz gegen diese Skript-Kiddies sein, oder?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:33
Da brauchst du keinen Cronjob, das wäre ja sehr overkilled. Beim Hinzufügen der Einträge kannst du ja die, die älter als 1 Stunde sind (Timestamp mitspeichern, dann ist der Vergleich sehr einfach) aus der Datenbank entfernen. Die Datenbank müsste solche Dinge locker verkraften, denn wenn du ein Flood-Limit einbaust, musst du bei jedem Seitenaufruf überprüfen, ob sich die IP bereits in der Datenbank befindet, was je nach Index-Einstellung, sogar langsamer sein kann. Ich habe meine Indizes größtenteils auf Schreibzugriffe optimiert, daher sind Abfragen minimal langsamer.
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#10

Re: [PHP] Captcha-Erstellung einschränken

  Alt 22. Mai 2007, 18:42
Nagut,

ich kann das ja erstmal so lassen. Wenn wirklich in der Richtung was passiert, kann ich ja immernoch reagieren (zB. mit dem Http-Referer etc...)

Dann danke ich euch soweit!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz