Webseite im Standardbrowser mit POST-Parametern aufrufen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von Kiffi »

Hallo,

ich rufe eine Webseite mit dem Standardbrowser auf:

Code: Alles auswählen

RunProgram("http://MeineSeite.de")
Das funktioniert.

Auf der Seite muss man sich einloggen. Das kann ich mittels GET-Parametern bewerkstelligen:

Code: Alles auswählen

RunProgram("http://MeineSeite.de/?user=MeinUsername&pass=MeinPassword")
Das funktioniert ebenfalls.

Unschön ist hier, dass jeder, der auf den Monitor schaut, das Passwort in der Adresszeile des Browsers sieht.

Der Login funktioniert allerdings auch mittels POST-Parametern. Nur weiß ich nicht, wie ich das bewerkstelligen soll.

Hat jemand eine Idee?

Grüße ... Peter
a²+b²=mc²
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von RSBasic »

Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von Kiffi »

nöh, leider nicht. Ich will die Seite ja im Standardbrowser öffnen und nicht deren Inhalt auslesen.

Dennoch Danke & Grüße ... Peter
a²+b²=mc²
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von NicTheQuick »

Mein Dropbox-Client macht es so: Er erstellt eine temporäre HTML-Datei, die den Login-Token in einer HTML-Form enthält und diese dann nach dem Laden der Seite vom Browser per JS submitted und damit die POST-Daten an die eigentliche Dropbox.com-Seite schickt.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von Kiffi »

NicTheQuick hat geschrieben:Mein Dropbox-Client macht es so: Er erstellt eine temporäre HTML-Datei, die den Login-Token in einer HTML-Form enthält und diese dann nach dem Laden der Seite vom Browser per JS submitted und damit die POST-Daten an die eigentliche Dropbox.com-Seite schickt.
das ist ja mal tricky! Danke für den Tipp! :allright:

Grüße ... Peter
a²+b²=mc²
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von NicTheQuick »

Die genaue Vorgehensweise ist wie folgt:
  1. Erstelle Token, mit dem man sich bei Dropbox.com authentifizieren kann.
  2. Wandle Token in HEX-String A um.
  3. Erstelle zweiten gleichlangen kryptographisch sicheren und zufälligen HEX-String B.
  4. Berechne C = A XOr B
  5. Schreibe B als Attribut in ein verstecktes Input-HTML-Tag.
  6. Hänge C als Hash an die URL an, die aufgerufen werden soll.
  7. Nach Laden der HTML-Datei führe nachfolgenden Algorithmus mit Javescript aus:
    1. Lies Hash aus der Adresszeile aus und speichere in C.
    2. Lösche den Hash aus der Adresszeile.
    3. Lies B aus dem Attribut des versteckten Input-HTML-Tags aus.
    4. Berechne A = B XOr C.
    5. Speichere A in einem weiteren versteckten Input-HTML-Tag.
    6. Submitte die Form mit den beiden Input-HTML-Tags und der Action "https://webseite.de/login.php".
  8. Rufe die Datei 'zufall.html' mit dem Standard-Browser auf.
  9. Lösche die Datei nach einer gewissen Zeit, z.B. 30 Sekunden.
Edit:
Falls die Webseite, die du ansprechen möchtest, keine Authentifzierungstokens zulässt, kannst du ja dennoch in Purebasic einen Token basteln, der Login und Passwort in irgendeiner Form getrennt beinhaltet, und ihn nach dem Entschlüsseln mit dem XOr in Javascript wieder auseinanderpflücken und in beide versteckten Input-Tags packen. Dadurch, dass nach einmaligem Aufruf der Hash in der URL entfernt wurde, kommt man auch nicht mehr per Zurückbutton an das Passwort, weil es nicht mehr entschlüsselt werden kann. Hier wird dann quasi ein One-Time-Pad benutzt.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Webseite im Standardbrowser mit POST-Parametern aufrufen

Beitrag von Kiffi »

oh, so umfangreich brauche ich das gar nicht. Habe mir jetzt eine kleine HTML-Seite gebaut, die eine Form mit zwei hidden Inputs ('user' und 'pass') beinhaltet, welche ich bei body.onload submitte. Klappt super! <)

Nochmals Danke & Grüße ... Peter
a²+b²=mc²
Antworten