Literatur HttpWebRequest etc.

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von herbi4567.

    Literatur HttpWebRequest etc.

    Hallo liebe Community,

    da ich mich auf einer Homepage einloggen möchte, die beim Einloggen neben verschiedenen Cookies eine Sicherheitsfrage verwendet, möchte ich euch fragen, ob ihr mir gute Literatur für HttpWebRequest empfehlen könnt, mit der ich mich diesem "Problem" stellen könnte :). Habe bereits eigenständig versucht mich als Laie auf der Seite einzuloggen und dazu Tutorials etc. herangezogen, leider ohne Erfolg :(.

    Wünschenswert wäre, wenn aus der Literatur hervorgehen würde, welche Parameter ich bspw. zum "Schreiben" des Codes benötige (ich meine damit z. B. Informationen die mittels Http headers von der Homepage ausgelesen werden etc.)

    Vielen Dank für eure Tipps :):):)

    MfG

    P.S.: Der Login führt auf eine Seite eines Spiels, welches auf einer Flash-Anwendung basiert.
    Mit Chrom oder nen Firefox Addon kannst du nachschauen was alles beim anmelden auf der Seite passiert!
    Das musst du dann mit den Request mitgeben...

    Hier ist ein ziemliches gutes Tutorial:
    [VB.NET] HttpWebRequest Tutorial (Für anfänger)
    Edit by ErfinderDesRades: unnötiges Vollzitat entfernt

    Hey danke für die schnelle Antwort.

    auf der Seite klappt das
    nicht, weil die mehrere Cookies verwenden, habe das schon mit einem
    Cookiecontainer versucht, aber dann von Leuten gehört, dass es damit
    nicht geht, was auch erklären würde wieso ich ständig einen
    Fehler bekomme. Die Leute, denen der Login gelingt arbeiten mit
    Funktionen, die die einzelnen Cookies auswerfen und dann für den Login weiterverwendet werden. Auf der Homepage wurde der Login ein wenig erschwert denke ich.

    Hast du/ habt ihr Erfahrungswerte mit solchen Loginseiten...

    Gruss und Danke für die Antwort


    P.S.: Dieses Tutorial habe ich bereits als Basis genommen, jedoch ohne Erfolg.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()

    herbi4567 schrieb:

    Die Leute, denen der Login gelingt arbeiten mit Funktionen, die die einzelnen Cookies auswerfen und dann für den Login weiterverwendet werden. Auf der Homepage wurde der Login ein wenig erschwert denke ich.

    Der HttpWebRequest hat einen Bug eim Umsetzen von Domain-Cookies, die mit einem Punkt beginnen. Gerade bei Seiten mit vielen Umleitungen ( Statuscodes 302,303,307, Moved Temporarily), die Domain-Cookies setzen, macht der sich unangenehm bemerkbar (-> CookieContainer domain handling bug fix).

    Bei solchen Seiten muss die Umleitung manuell umgesetzt werden:
    - setze .AllowAutoDirect=False
    - StatusCode auswerten und ggf. Cookies fixen
    - neues Ziel im Location Header aufrufen

    Ob der Fix im o.g. Link funktioniert weiss ich nicht: ich durchlaufe einfach die Cookies und füge bei Domain-Cookies dglobale hinzu.
    "Domain Cookies ersetzen"

    VB.NET-Quellcode

    1. Dim domain As String = "", path As String = "/"
    2. For Each c As Net.Cookie In req.Response.Cookies
    3. If c.Domain.StartsWith("."c) Then domain = c.Domain.Substring(1) Else domain = c.Domain
    4. req.Cookies.Add(New Net.Cookie(c.Name, c.Value, path, domain))
    5. Next
    6. ' set last host & Location
    7. req.Host = New Uri("http://" & req.Response.ResponseUri.Host)
    8. req.GET(req.Response.Headers.GetValues("location")(0)) ' GET new location

    herbi4567 schrieb:

    da ich mich auf einer Homepage einloggen möchte, die beim Einloggen neben verschiedenen Cookies eine Sicherheitsfrage verwendet
    Als Moderator: Thema "SicherheitsAbfrage umgehen" ist auf VBP unerwünscht.
    Oder welchen Sinn hat die Sicherheitsabfrage in diesem Fall?
    Um welche Site handelt es sich?
    Edit by ErfinderDesRades: unnötiges Vollzitat entfernt

    Bei dem Login soll keine Sicherheitsfrage umgangen werden :), die Sicherheitsfrage muss jeder Spieler des Spiels beantworten, diese wird dann gehashed und als Parameter ausgegeben. Ohne Beantwortung der Sicherheitsfrage kann man sich auch nicht einloggen. "Sicherheitsfrage umgehen" war an dieser Stelle auch nicht gefragt.
    Meine Frage richtete sich hinsichtlich eines Logins über HttpWebRequest. Der Login ist allerdings nicht so gestrikt, wie beispielsweise in dem oben vermerkten Tutorial. Der Login setzt sich sozusagen aus zwei Schritten zusammen:
    1. Eingabe von Emailadresse und Passwort (diesen Schritt kriegt man auch mit dem oben angegebenen Tutorial hin:), nach diesem Schritt sieht man zwar, dass man scheinbar eingeloggt ist, da der Benutzername erscheint, man kann aber das Spiel noch nicht spielen :))
    2. Beantwortung der Sicherheitsfrage, um das Spiel spielen zu können :)
    3. Erst jetzt gelangt man in die "Spielewelt"



    Sinn der Sicherheitsfrage liegt darin, dass sich Unbefugte keinen Zugriff zum eigenen Account verschaffen können!

    MfG

    P.S.: Mir würden Literaturhinweise ausreichen, die einem explizit dieses Know-How vermitteln. Muss schließlich möglich sein sich auf dieser Seite einzuloggen oder :).
    Wenn sich jemand die mittels Http Header mitgeschnittenen Login-Werte anschauen möchte, bin ich gerne bereit diese zur Verfügung zu stellen, so kann man sich "mein Problem" wahrscheinlich besser vorstellen :).

    Dieser Beitrag wurde bereits 9 mal editiert, zuletzt von „herbi4567“ ()

    herbi4567 schrieb:

    Mir würden Literaturhinweise ausreichen, die einem explizit dieses Know-How vermitteln.
    Welches 'explizite" Knowhow erwartest Du - wie man sich auf der FIFA-Seite einloggt ?

    Arbeite Dich in das HTTP-Protocol ein, lern mit Firebug / HTTP Headers oder einem Sniffer umzugehen und setze das dann akribisch im HttpWebRequest um.
    Edit by ErfinderDesRades: unnötiges Vollzitat entfernt

    Ja also für den Anfang wäre ich damit zufrieden :). Vielleicht muss ich erwähnen, dass ich ein Laie bin :), daher die Frage nach der Literatur, zumal sich das Einloggen in meinen Account auf der FIFA Seite schwieriger gestaltet als in zahlreichen Online Tutorials dargestellt (habe bisher nur Tutorials gefunden, die beim Einloggen keine Sicherheitsfrage beantworten mussten und das Arbeiten mit einem Cookiecontainer ausgereicht hat. Auf der Fifa Seite hingegen klappt das leider nicht :(....).
    Ich würde es ja gerne eigenständig lernen, daher auch dieser Thread. Erwarte mir davon nützliche Hinweise, die mir (hoffentlich) weiterhelfen könnten, in "Laiensprache" versteht sich :). Dachte, dass ich mich in diesem Zusammenhang auf einen Literaturpool oder ähnliches beziehen könnte, wäre sicherlich nur von Vorteil.

    MfG

    P.S.: Schönen Dank für die Antworten :).

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Kann mir jemand freundlicherweise weiterhelfen :).

    Ich habe mich mittlerweile ein wenig mit "Live http headers" auseinandergesetzt und bei Einloggen die Daten der Homepage mit der App ausgelesen. Nun stehe ich allerdings vor dem nächsten Problem:

    beim Login wird folgender Ausdruck als POST gesendet

    { "isReadOnly": false, "sku": "393A0001", "clientVersion": 3, "nuc": 123456789, "nucleusPersonaId": 987654321, "nucleusPersonaDisplayName": "Spieler007", "nucleusPersonaPlatform": "ps3", "locale": "de-DE", "method": "idm", "priorityLevel":4, "identification": { "EASW-Token": "" } }

    kann mir jemand sagen, wie ich das am besten in einen String "packe".

    über hilfreiche Kommentare würde ich mich sehr freuen :).

    Beste Grüsse

    herbi4567 schrieb:

    Kann mir jemand freundlicherweise weiterhelfen :).

    Ich habe mich mittlerweile ein wenig mit "Live http headers" auseinandergesetzt und bei Einloggen die Daten der Homepage mit der App ausgelesen. Nun stehe ich allerdings vor dem nächsten Problem:

    beim Login wird folgender Ausdruck als POST gesendet

    { "isReadOnly": false, "sku": "393A0001", "clientVersion": 3, "nuc": 123456789, "nucleusPersonaId": 987654321, "nucleusPersonaDisplayName": "Spieler007", "nucleusPersonaPlatform": "ps3", "locale": "de-DE", "method": "idm", "priorityLevel":4, "identification": { "EASW-Token": "" } }

    kann mir jemand sagen, wie ich das am besten in einen String "packe".

    über hilfreiche Kommentare würde ich mich sehr freuen :).

    Beste Grüsse


    Naja ich kann mir nicht vostellen, dass der Spielehersteller das sonderlich berauschend findet, wenn du cheaten willst, oder?!