Es scheint viele pinax-Apps zu geben, die mit ajax arbeiten und ein bestimmtes URL-Muster für diese pinax-App verwenden.Wie sicher sind Ajax basierte Pinax Apps von Bots (Mass Voting, Mass Rating)?
Zum Beispiel gibt es die Bewertungen App. Es benutzt Ajax.
Normalerweise würden Sie auf die Seite, auf der sich das Produkt befindet, zugreifen. Sie müssten CSRF-Token von dort abrufen. Daher müsste der Benutzer oder ein Bot die Seite besuchen, um das Produkt zu bewerten.
Also alle Sicherheits-Mixins funktionieren.
Allerdings verwendet Pinax eine URL wie site.com/ratings
. Woher kommt dieses Rating-Formular? Wenn es nur von der Produktseite abgerufen werden kann, ist es sicher, da wir Sicherheitsmaßnahmen auf der Seite anwenden können.
Wie auch immer, wenn der CSRF von der sites.com/ratings
stammt, könnte ein Bot alle Sicherheits-Mixins auf der Produktseite umgehen und direkt die Upvote oder Downvote oder die Produkte bewerten.
Erhält es die CSRF von site.com/ratings
oder die Produkt-oder Ansichtsseite, in der das Widget eingebettet ist.
Gleiches gilt für Likes und ähnliche Apps.
TL; DR:
1) Kann jemand einen Bot zu Massenrate oder Abstimmung Pinax Apps wie Bewertungen erstellen, die durch den Besuch der Pinax, ohne auch nur zu besuchen, um ein Produkt oder Post oder Modellansicht und funktioniert einfach apps so URL Umgehung alle Sicherheitsmaßnahmen als Mixin auf die Produktseite gelegt?
2) Sind irgendwelche Sicherheitsmaßnahmen in der template tag
, so dass die Bewertungen Ajax funktioniert nur in der Seite, in der die template tag
ist eingebettet?
Bitte antworten Sie: Sollte ein Bot die Seite mit dem Template-Tag des Bewertungs-Widgets aufrufen müssen, um das CSRF-Token zu erhalten oder kann ein Bot das CSRF-Token direkt von 'site.com/rating' beziehen. Ich frage dies cos, wenn eine Sicherheitsmaßnahme oder Mixin oder IP-Verbot oder rateslimiting auf die Ansicht mit dem Produkt mit Rating-Vorlage angewendet wurde würde es nicht auf die Bewertungen App im späteren Fall gelten würde. – Kotlinboy
Ich spreche nicht über ratenbegrenzende Middleware. Nur im Blick (vielleicht als Mixin). – Kotlinboy
i.e; kann ich einen Bot erstellen, der nur die pinax Bewertungen App url bewertet, wenn er die PK kennt, zum Beispiel 'site.com/rating'. Dieser Bot kann keine andere URL auf der Website aufrufen. – Kotlinboy