• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

AJAX Request vor Manipulation schützen

yss

Mitglied
Guten Mittag

Gibt es einen Weg, Ajax-Request vor Manipulation zu schützen? Mir geht es vor allem um die Antworten des Servers.
Einfaches Beispiel:
Ich schicke einen Request an den Server und will wissen, wie viele E-Mails in der Datenbank stehen.
Der Angreifer nutzt nun z.B. TemperData und manipuliert die Antwort, so dass z.B. 100 zurück kommen müsste, durch den Angreifer allerdings 1000 drin stehen und meine Anwendung versucht, 1000 E-Mails abzurufen, was aber nicht geht, da ja nur 100 in der Datenbank stehen.
Zum Thema verschlüsseln von Ajax-Requests habe ich nicht viel gefunden und eine Checksumme ergibt nicht viel Sinn, da diese ja auch vom Angreifer angepasst werden kann.
 
Werbung:
Guten Mittag

Gibt es einen Weg, Ajax-Request vor Manipulation zu schützen? Mir geht es vor allem um die Antworten des Servers.
Einfaches Beispiel:
Ich schicke einen Request an den Server und will wissen, wie viele E-Mails in der Datenbank stehen.
Der Angreifer nutzt nun z.B. TemperData und manipuliert die Antwort, so dass z.B. 100 zurück kommen müsste, durch den Angreifer allerdings 1000 drin stehen und meine Anwendung versucht, 1000 E-Mails abzurufen, was aber nicht geht, da ja nur 100 in der Datenbank stehen.
Zum Thema verschlüsseln von Ajax-Requests habe ich nicht viel gefunden und eine Checksumme ergibt nicht viel Sinn, da diese ja auch vom Angreifer angepasst werden kann.

Kann dir und allen anderen Benutzern doch egal sein wenn der Angreifer seinen eigenen Browser "hackt" bzw. zum Absturz bringt.
Ich denke du missverstehst das Thema Sicherheit hier.

Mittag ist auch schon wieder länger her :p
 
Generell gillt, dass du Ajax requests genau so absichern musst, wie normale Seiten.

Wenn du unbedingt einen Request implementieren musst, der soetwas wie eine $limit=100 variable hat die sich in mysql z.b. so äußern wird "SELECT X FROM Y LIMIT 100" dann solltest du auch damit rechnen das irgendwer dir dafür danken wird, dass er die Seite nicht andauernd neu laden muss nur um mehr Ergebnisse zu bekommen. (So wie ich :)).

Wenn du an solchen Stellen ein festgelegtes Limit bestimmen willst kannst du das immer machen indem du die Limits einfach vordefinierst. Ungefähr so:

PHP:
define('MY_DEFAULT_LIMIT', 0);
$aLimits = array(10, 20, 50, 100);
$iLimit = $aLimits[MY_DEFAULT_LIMIT];
if (isset($_GET['limit'])) {
  $iInputLimit = (int)$_GET['limit'];
  if (isset($aLimits[$iInputLimit])) {
    $iLimit = $aLimits[$iInputLimits];
  }
}
 
Werbung:
Zurück
Oben