Dies ist wahrscheinlich eine Noob-Frage, aber hören Sie mich an - ist es nicht sinnvoll, Nonce zu verwenden, um sich vor Dingen wie Scrappern (Phpcurl-Scrappern usw.) zu schützen? Aber mein Nonce druckt wie folgt im Kopf des Dokuments aus:
/* <![CDATA[ */
var nc_ajax_getpost = {
...stuff...
getpostNonce: "8a3318a44c"
};
/* ]]> */
Wenn ich also einen schnellen Scrapper erstellen würde, würde ich einfach den Nonce-Wert von dieser Seite abrufen und ihn dann in meinem POST verwenden ... was die gesamte Übung der Verwendung eines Nonce nutzlos macht ...
Was fehlt mir hier?
Antworten:
Nonces sind für jeden angemeldeten Benutzer eindeutig. Sie können die Nonces eines angemeldeten Benutzers nur dann entfernen, wenn Sie deren Cookies haben. Wenn Sie jedoch Cookies eines Benutzers haben, haben Sie dessen Identität bereits gestohlen und können tun, was Sie wollen.
Nonces sollen verhindern, dass Benutzer dazu verleitet werden, etwas zu tun, was sie nicht wollten, indem sie auf einen Link klicken oder ein Formular senden. Sie selbst führen diese Aktion (unbeabsichtigt) aus, nicht der Angreifer.
quelle
http://en.wikipedia.org/wiki/Cryptographic_nonce
"In der Sicherheitstechnik ist Nonce eine willkürliche Zahl, die nur einmal zum Signieren einer kryptografischen Kommunikation verwendet wird. ... Es handelt sich häufig um ein zufälliges ... Authentifizierungsprotokoll, um sicherzustellen, dass alte Kommunikationen bei Wiederholungsangriffen nicht wiederverwendet werden können."
Die Idee ist, die Übermittlung von Wiederholungsdaten zu stoppen. Sie erstellen eine eindeutige eindeutige Kennung für den einmaligen Gebrauch, sodass die Übermittlung von Daten nur einmal möglich ist. Es hat nichts mit dem Surfen auf Ihrer Website zu tun. Welches ist, was Site Scraping macht. Wie würden Sie zwischen einem Scraping-Bot und einem Trawling-Bot (wie Google) unterscheiden?
quelle