Webbrowser Joomla Login

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von φConst.

    Webbrowser Joomla Login

    Hi
    ich möchte mich über den Webbrowser als Admin in Joomla einloggen.

    VB.NET-Quellcode

    1. Loop While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete Or WebBrowser1.IsBusy
    2. WebBrowser1.Document.GetElementById("mod-login-username").SetAttribute("value", TextBox1.Text)
    3. WebBrowser1.Document.GetElementById("mod-login-password").SetAttribute("value", TextBox2.Text)
    4. WebBrowser1.Document.GetElementById("login").InvokeMember("click") 'Den Einloggen-Button klicken..


    Nur das mit dem Login klappt nicht es soll praktisch der Anmelde Button gedrückt werden.
    So wie du das machst könnte zwar funktionieren, besser ist jedoch die URL zu extrahieren:

    Das ist die Login URL:

    Quellcode

    1. http://joomla.cmsmg.de/administrator/index.php?username=NUTZERNAME&passwd=PASSWORT&option=com_login&task=login&return=aW5kZXgucGhwP21vZC1sb2dpbi11c2VybmFtZT10ZXN0Jm1vZC1sb2dpbi1wYXNzd29yZD10ZXN0&8223b5c385752fa73675d41dce8b6c65=1



    Nutzername und Passwort müssen substituiert werden...
    Das funktioniert, hab's getestet.
    Und Gott alleine weiß alles am allerbesten und besser.

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

    VB.NET-Quellcode

    1. Dim url As String = "http://joomla.cmsmg.de/administrator/index.php?username=NUTZERNAME&passwd=PASSWORT&option=com_login&task=login&return=aW5kZXgucGhwP21vZC1sb2dpbi11c2VybmFtZT10ZXN0Jm1vZC1sb2dpbi1wYXNzd29yZD10ZXN0&8223b5c385752fa73675d41dce8b6c65=1"
    2. url = url.Replace("NUTZERNAME", "dein_nutzername").Replace("PASSWORT", "dein_passwort")
    3. WebBrowser1.Navigate(url)
    Und Gott alleine weiß alles am allerbesten und besser.

    φConst schrieb:



    Das ist die Login URL:

    Quellcode

    1. ​http://joomla.cmsmg.de/administrator/index.php?username=NUTZERNAME&passwd=PASSWORT&option=com_login&task=login&return=aW5kZXgucGhwP21vZC1sb2dpbi11c2VybmFtZT10ZXN0Jm1vZC1sb2dpbi1wYXNzd29yZD10ZXN0&8223b5c385752fa73675d41dce8b6c65=1



    Sorry für Offtopic aber:
    Ist Joomla wirklich so scheiße das dort der NUTZERNAME und PASSWORD per GET Parameter übertragen wird ? 8| Falls ja vernichtet es bevor es eier legt.
    Grüße , xChRoNiKx

    Nützliche Links:
    Visual Studio Empfohlene Einstellungen | Try-Catch heißes Eisen
    Wie kommst du drauf?

    Die Methode ist post, und falls es dir um die Sicherheit geht: Imho kaum Unterschied.

    Ich habe die Url extrahiert, heißt nicht, dass man beim Login-Click diese URL sehen kann:
    Eigenschaft von Post: "Data is not displayed in the url".

    Sowieso: Der Sicherheitstoken wird glaub ich entweder jede Stunde oder jeden Tag aktualisiert.
    Hier die neue URL:

    Quellcode

    1. joomla.cmsmg.de/administrator/index.php?username=NUTZERNAME&passwd=PASSWORT&option=com_login&task=login&return=aW5kZXgucGhw&43a6bdd161ce8aa39c2214f793bfe275=1

    Und Gott alleine weiß alles am allerbesten und besser.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „φConst“ ()

    weitere Möglichkeit:

    Statt beim Button auf eine nicht vorhandene ID zu gehen, kannst du auch über den Tag. Hier gibt es nur einen Button. Und, da in diesem Formular kein weiterer Button vorhanden ist, kannst davon ausgehen, dass du mit:

    Quellcode

    1. WebBrowser1.Document.GetElementsByTagName("button")

    Nur 1 Control zurückbekommst, bei dem du das Click-Event feuerst.
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:

    φConst schrieb:

    Wie kommst du drauf?
    <a href="https://www.vb-paradise.de/index.php/Attachment/39999/">vb-paradise.de/index.php/Attachment/39999/</a>
    Die Methode ist post, und falls es dir um die Sicherheit geht: Imho kaum Unterschied.

    Ich habe die Url extrahiert, heißt nicht, dass man beim Login-Click diese URL sehen kann:
    Eigenschaft…


    Alles klar ;) Was Post / GET ist weiß ich... Stand nicht dabei das du die URL aus den POST werten extrahiert hast. ;)
    Also somit hat sich das erledigt.
    Grüße , xChRoNiKx

    Nützliche Links:
    Visual Studio Empfohlene Einstellungen | Try-Catch heißes Eisen