CF Rule für TBM API

05/15/2015 17:59 Whoknowsit#1
Wäre es u.U. möglich, die TBM API von dem Pseudo-DDos-Schutz von Cloudflare auszunehmen? Ich möchte nur ungerne ein Workaround schreiben müssen und für eine wahrscheinlich hochfrequentierte API ist der Schutz-Mechanismus doch etwas ungünstig.
05/15/2015 20:42 MrDami123#2
Denke es wäre einfacher ein Workaround bzw. ne einfache Überprüfung der erhaltenden Daten zu schreiben als eine Lücke in den DDoS zu reißen.

Auch größere API Anbieter haben immer eine Request/Time per IP Begrenzung und User müssen sich selber eine Überprüfungsfunktion basteln, ob gerade der DDoS-Schutz aktiviert worden ist und das Programm entsprechend lang pausiert wird.
05/15/2015 23:36 Whoknowsit#3
Ein Workaround habe ich mir bereits gebaut. Dessen Funktionalität wiederum beweist die Sinnlosigkeit dieses Schutz-Mechanismus'.

Quote:
Auch größere API Anbieter haben immer eine Request/Time per IP Begrenzung und User müssen sich selber eine Überprüfungsfunktion basteln
Jein. "Größere API-Anbieter" bieten feste Kontingente an, die man möglichst nicht überschreiten sollte. Ist eine Überschreitung zu erwarten, hat man normalerweise die Möglichkeit, ein größeres Kontingent zu erhalten (z.B. durch eine Zuzahlung).

Im vorliegenden Fall geht es aber um "willkürliche" Überprüfungen seitens Cloudflare. Um diese Überprüfung zu bestehen, wird im Normalfall Javascript benötigt. Um dann wiederum für einige Zeit der Überprüfung zu entgehen, muss zusätzlich ein Cookie gespeichert und bei jedem Request übergeben werden.

Alternativ kannst du deinen Benutzern natürlich auch Minuten-, Stunden- oder gar Tagelang mitteilen, dass die API gerade wegen Bodennebel nicht erreichbar ist.

Da ich ein Zahlungssystem in PHP für die Zahlung mit Elitegold umgesetzt habe, habe ich jedoch keinerlei Interesse daran, potentielle Kunden zu vergraulen. Dann entweder keine Zahlungen mittels Elitegold mehr anbieten, oder eine Lösung finden. Ich persönlich ziehe Letzteres vor und werde, für den Fall dass meiner Bitte aus irgendeinem Grund nicht nachgekommen wird bzw. werden kann, mein Workaround einsetzen und den DDos-Schutz zu diesem Zweck übergehen.
05/16/2015 11:02 manniL#4
Bin ebenso dafür! Dann lieber direkt (bekannte) API-Zugriffslimits, falls nötig
05/17/2015 12:42 MrDami123#5
Quote:
Originally Posted by Whoknowsit View Post
Jein. "Größere API-Anbieter" bieten feste Kontingente an, die man möglichst nicht überschreiten sollte. Ist eine Überschreitung zu erwarten, hat man normalerweise die Möglichkeit, ein größeres Kontingent zu erhalten (z.B. durch eine Zuzahlung).
So oder eben eine kurze Wartezeit von xSekunden. Vor allem bei offenen APIs anzutreffen.

Musste mich selber noch nicht mit CloundFlare und Epvp beschäftigen, aber reicht es nicht aus, wenn der Zugriff auf die API scheitert diesen einfach nochmals zu wiederholen?
Die CloudFlare Überprüpfungsfunktion wird doch nicht immer angezeigt oder?
05/17/2015 14:53 pvpDealer#6
Quote:
Originally Posted by MrDami123 View Post
So oder eben eine kurze Wartezeit von xSekunden. Vor allem bei offenen APIs anzutreffen.

Musste mich selber noch nicht mit CloundFlare und Epvp beschäftigen, aber reicht es nicht aus, wenn der Zugriff auf die API scheitert diesen einfach nochmals zu wiederholen?
Die CloudFlare Überprüpfungsfunktion wird doch nicht immer angezeigt oder?
Schon, aber es wäre besser zu wissen, wieviele Requests machen noch machen kann/darf, um dies in der eigenen Applikation weiterzuverwerten.
Bspw. Anzeige an den User "Requestlimit derzeit ausgeschöpft" o.Ä..
05/17/2015 17:08 Whoknowsit#7
Quote:
Die CloudFlare Überprüpfungsfunktion wird doch nicht immer angezeigt oder?
So lange du die Prüfung nicht bestehst und der Modus aktiviert ist.
05/20/2015 14:11 MrDami123#8
Quote:
Originally Posted by Whoknowsit View Post
So lange du die Prüfung nicht bestehst und der Modus aktiviert ist.
Nervig. Greifst du auf die API zu während du eingeloggt bist?
05/20/2015 22:37 Whoknowsit#9
Quote:
Originally Posted by MrDami123 View Post
Nervig. Greifst du auf die API zu während du eingeloggt bist?
Davon abgesehen, dass das nicht notwendig ist (man authentifiziert sich gegenüber der TBM-API über das TBM-Passwort im Query-String), würde der Login ja ebenso wenig funktionieren :D
05/21/2015 00:03 MrDami123#10
Quote:
Originally Posted by Whoknowsit View Post
Davon abgesehen, dass das nicht notwendig ist (man authentifiziert sich gegenüber der TBM-API über das TBM-Passwort im Query-String), würde der Login ja ebenso wenig funktionieren :D
Das der Zugriff auf die API ohne Login funktioniert ist mir bewusst und weil dadurch zwei Möglichkeiten vorhanden sind, wollte ich wissen welche du nutzt.
Ich verbinde mich über Elitestats täglich zu Elitepvpers und das ohne Probleme. Durch den Login ist es meiner Meinung nach möglich von CloudFare ungestört auf epvp zu surfen.
Man erstellt eine Session mit funktionierenden Headern und durch den Login ist man von CloudFlare praktisch verifiziert, weitere Zugriffe werden ungestört durchgelassen.

In welcher Sprache hast du den Zugriff geschrieben?
05/21/2015 03:07 Whoknowsit#11
PHP. Aber davon abgesehen: Bei mir läufts problemlos ;)
05/22/2015 15:14 Luke#12
Die Verifizierungsseite sollte nur dann anspringen wenn wir tatsächlich unter einer größeren Attacke stehen, sollte jedoch nicht allzu oft/lange vorkommen da wir von Haus aus bereits einen großteil der Attacken abwehren und auch stetig nachbessern.

Eine whitelist in der jetzigen Form ist leider nicht möglich, da es sich bei den meisten Attacken um sog. Slowloris angriffe handelt. Das wäre für den Angreifer recht praktikabel auszunutzen. Da müsste schon ein throttle System her, ich kann jedoch nicht versprechen das wir so etwas in nächster Zeit angehen.
05/22/2015 18:06 Whoknowsit#13
Danke :) Dann nutze ich mal die mir zur Verfügung stehenden Mittel, falls notwendig.