HttpClient Csrf


kakaj

Grünschnabel
#1
Ich bin leider kaum erfahren in Java und versuche mit meiner Google Recherche Codes zusammen stellen ohne Erfolg.

Also ich hab ein PHP Script mit Login Und Register System und möchte alternativ ein kleines Tool coden womit sich ebenfalls in der App registrieren kann.

Ich versuch nen HttpClient zu erstellen (SSL muss ignoriert werden), der sich den CSRF Token aus dem POST Form holt und dann die nötigen Header und Parameter raussendet und mir anschliessend den Response ausgibt. Im Netz find ich nur veraltete Codes (nutze HttpClient 4.5.8).

Kann mir jemand auf die Sprünge helfen oder Links posten? Ich krieg meine Hörner aufm Kopf :(
 

Bratkartoffel

gebratene Kartoffel
Premium-User
#2
Warum? Wenn der Server SSL anbietet, so solltest du dieses tunlichst auch nutzen...

der sich den CSRF Token aus dem POST Form holt
und
Also ich hab ein PHP Script mit Login Und Register System
Warum so kompliziert?
Variante 1) Du könntest dir auch ein zweites PHP-Script schreiben, welches von deiner APP aufrufbar ist. Dieses dient dann als API und benötigt keinen CSRF Token. (Danke an zerix für die Korrektur)
Variante 2) Du kannst dir auch ein PHP-Script erstellen, welches nur einen CSRF Token zurückgibt und mit diesem dann arbeiten.
Variante 3) Du passt deine Loginseite so an, dass der CSRF Token auch per Header rausgeschrieben wird (X-CsrfToken oder so was). Dann kannst du ganz leicht mit dem HttpClient den Header abrufen und verwenden.
Variante 4) Alternativ musst du zuerst einen GET auf die Loginseite machen, das Ergebnis mit einem HTML Parser parsen und dir den CSRF raussuchen. Das kannst du z.B. mit jsoup Java HTML Parser, with best of DOM, CSS, and jquery machen.

Grüsse,
BK
 
Zuletzt bearbeitet: