Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Anfängerfragen zum Programmieren mit PureBasic.
OlderCoder
Beiträge: 134
Registriert: 18.03.2013 12:30
Wohnort: Bayerland
Kontaktdaten:

Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von OlderCoder »

Hallo allerseits,

momentan sehe ich mich häufig gezwungen, bei meinem Router das WLAN ein- und wieder ausschalten, weil ich das WLAN ab und zu am Tag brauche und es aber nicht im Dauerbetrieb laufen lassen möchte.
Da mir hierbei das Prozedere Seite im Browser öffnen - Passwort eingeben - Netzwerkseite anklicken - WLAN-Einstellungen anklicken - WLAN ein- oder ausschalten - OK klicken allmählich auf den Wecker geht und ich auch kein andere Möglichkeit gefunden habe, wollte ich diesen Vorgang mit PureBasic automatisieren.

Jetzt gibt es Leute, die so etwas auf der Datenebene umsetzen und der Ziel-Site entsprechende Daten schicken. Darüber hab ich absolut keine Ahnung.
Und so hab ich statt dessen versucht, über Maus- und Tastatur-Simulation per API das Problem zu lösen. Das hatte bei anderen Programmen schon recht gut geklappt.

Mein Programm dazu sieht bisher so aus:

Code: Alles auswählen

; WLAN einschalten

; Variablen
EnableExplicit
Global eventid.l

Global screenbreite.w=GetSystemMetrics_(#SM_CXSCREEN)
Global screenhoehe.w=GetSystemMetrics_(#SM_CYSCREEN)

Procedure maus(x, y, aktion1, aktion2, v)
  ; manipuliert die Maus (aus Forum) 
  ; x u. y sind Zielkoordinaten, die in Geschwindigkeit v erreicht werden. aktion1 steht für
  ; einen Mausklick links oder rechts,,
  ; aktion2 für das Maustaste-Loslassen links oder rechts
  
  Define t
   
   x=Abs(x)
   y=Abs(y)
   Protected a.l, b.l, sa.l, sb.l
   t=0 ;  Für weitere Verzögerung
   Repeat
      a=x-DesktopMouseX()
      b=y-DesktopMouseY()
      sa=1
      sb=1
      If a < 0
         sa=-1
      EndIf
      If b < 0
         sb=-1
      EndIf
      If DesktopMouseX() = x
         sa=0
      EndIf
      If DesktopMouseY() = y
         sb=0
      EndIf
      SetCursorPos_(DesktopMouseX()+sa, DesktopMouseY()+sb)
      t=t+1 ; für Verzögerung hochzählen
      If t=30 ; erst jetzt verzögern, weil sonst zu langsam; je höher t, desto schneller
        Delay(Abs(v))
        t=0
      EndIf
   Until DesktopMouseX() = x And DesktopMouseY() = y
   If aktion1 <> 0 : mouse_event_(aktion1, x, y, 0, 0) : EndIf
   If aktion2 <> 0 : mouse_event_(aktion2, x, y, 0, 0) : EndIf
   BlockInput_(#False)
   ProcedureReturn #True
EndProcedure

; Fenster
If Not OpenWindow(0,0,0,800,600,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  MessageRequester("Fehler!","Das Fenster konnte nicht geöffnet werden!")
EndIf

; Webfenster öffnen
WebGadget(1,0,0,750,550,"https://speedport.ip/top_start_passwort.stm") 

; Sicherheitsfrage beantworten
Delay(500)
maus(screenbreite/2-120,screenhoehe/2+135,0,0,10)
maus(DesktopMouseX(), DesktopMouseY(),#MOUSEEVENTF_LEFTDOWN,#MOUSEEVENTF_LEFTUP,0)

; weitere Maßnahmen für die nötigen Eingaben für das WLAN folgen


; Warten auf Schließen
Repeat
  EventID=WaitWindowEvent(10)
Until EventID = #PB_Event_CloseWindow
Konfigurationsprogramm des Routers per Web-Gadget öffnen und dann die entsprechenden Maus- und Tastatur-Eingaben simulieren.
Die Prozedur maus() stammt aus einem Forum und bewegt hier die Maus.

Leider macht mir allerdings ein unerwartetes Problem einen Strich durch die Rechnung.
Anstatt die Router-Site einfach anzuzeigen, spuckt das Web-Gadget (Firefox tut das dagegen nicht) zunächst ein Sicherheits-Warnfenster mit folgendem Inhalt aus:

"Die Identität dieser Website oder die Integrität dieser Verbindung kann nicht überprüft werden.
Das Sicherheitszertifiktat stammt von einer vertrauenswürdigen Zertifizierungsinstitution.
Das Sicherheitszertifikat ist abgelaufen oder noch nicht gültig.
Der auf dem Sicherheitszertifikat angegebene Name ist gültig und stimmt mit dem Namen der gewünschten site überein.
Möchten sie den Vorgang fortsetzen?
Ja - Nein - Zertifikat anzeigen"

Na gut, denk ich, dann gibt es eben noch einen weiteren simulierten Mausklick auf die Ja-Schaltfläche dieses Fensters.

Aber genau das ist nicht mehr möglich, da die Programm-Ausführung meines PB-Programms solange anhält, bis ich selbst diese Schaltfläche angeklickt habe.

Jetzt weiß ich nicht mehr weiter.
Ich hab es dann noch irgendwie mit einem Thread versucht, der die Site aufruft. Ist mir aber nicht gelungen. Auch hier wartet das Programm brav auf meinen Mausklick.

Was kann ich jetzt noch tun?
Bitte helft mir.

Danke und Gruß
OlderCoder
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von ts-soft »

Eigentlich sollte es doch genügen, das Zertifikat einmalig zu importieren.
Internetoptionen / Inhalte / Zertifikate.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von WPö »

Moin!

So eine Tasten-/Mausklickemulation ist ja sicherlich eine schöne Beschäftigung, aber kaum zielführend. Grundproblem ist doch die Anmeldung an Deinem Zugriffspunkt. Heutzutage hat jeder popelige Router mit WLAN eine WPA2-Verschlüsselung. Damit entfällt auch, das WLAN beständig an- und abschalten zu müssen. Laß es einfach an - und gut isses. Bei dieser Verschlüsselungsart bräuchte ein Angreifer ungefähr 17 Zillionen Jahre und bis dahin hast Du den Schlüssel gewechselt. Vorsicht ist eine Sache, Paranoia eine andere.

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
OlderCoder
Beiträge: 134
Registriert: 18.03.2013 12:30
Wohnort: Bayerland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von OlderCoder »

Danke für die schnelle Antwort.
Ok. Dumme Frage, wie und wo mache ich das?
Ich bin mal probehalber beim IExplorer in den Internet-Optionen in den Zertifikats-Import-Assistenten gegangen. Dort wird eine Datei verlangt.
Was ist dort zu tun bezüglich meiners Routers?
Und das ist doch dann auch nur für den IExplorer, oder? Ich greife aber über PB auf den Router zu.
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von WPö »

Zunächst einmal ist der IE für'n Popo. Wer den nutzt, zeigt nur, daß er keine Ahnung hat. Das klingt vielleicht brutal, ist aber ehrlich. Steig auf einen zeitgemäßen und sicheren Navigator um. Auswahl gibt es genügend: Firefox, Opera, Chrome usw..

Wenn Du mit PB auf einen Server zugreifst (hier der Router, der eine Netzseite ausgibt und sich damit als Server gebärdet), so kommst Du u.U. nicht umhin, den ganzen Kram von wegen Verschlüsselung und Zertifikatshandhabung mitzuerschlagen. Das ist ein irrer Aufwand. Wenn Du Spaß an solchen Spielereien hast, versuche es mal mir CURL. Trotzdem bleibt dies der letzte Weg, Dein Problem zu lösen.

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von edel »

Was ist das fuer ein Router?
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von HeX0R »

WPö hat geschrieben:Zunächst einmal ist der IE für'n Popo. Wer den nutzt, zeigt nur, daß er keine Ahnung hat.
[...]
Eigentlich ist deine Bemerkung eher für'n Popo, zeigt sie doch, dass du dir die Aufgabenstellung nicht wirklich durchgelesen hast.
Das Zertifikat muss er nun mal in den IE einpflegen, weil das Webgadget darauf aufbaut.

Aber mal davon abgesehen ist dieses Maus-Rumgeschubse und blinde ferngesteuerte Klicken nicht wirklich der richtige Weg.

Meiner Meinung nach sollte man alle diese Codes, die irgendwo in den Foren verstreut sind einfach wortlos löschen.
Kommt eh selten was vernünftiges dabei raus...

@OlderCoder:
Wenn Du deinen Router im IE aufrufst, sollte doch ein Assistent aufpoppen, der Dich das Zertifikat einpflegen lässt, oder nicht?
OlderCoder
Beiträge: 134
Registriert: 18.03.2013 12:30
Wohnort: Bayerland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von OlderCoder »

Mein Gott, Ihr postet ja wie die Weltmeister. Ich komm nicht hinterher. Kaum hab ich einen Text fertig, passt er schon wieder nicht.

Ich wollte auf den ersten Post vom WPö folgendes schreiben:

@WPö:
Entschuldigung, Deine Antwort hatte ich übersehen, hat sich zeitlich überschnitten.
Tut mir leid, falscher Lösungsansatz!
Ich möchte das WLAN nicht aus Sicherheitsgründen immer wieder ausschalten, sondern aus gesundheitlichen. Und eine Diskussion darüber ist leider weder erwünscht, noch zielführend.
Zurück zum Problem. Wie kann ich dauerhaft das Sicherheitszertifikat so einbringen, dass PureBasic ohne diese Abfrage die Konfigurationsseite per WebGadget öffnet?

Hat sich wohl schon wieder erledigt.
Die Schubserei mit der Maus hat den Vorteil, dass sie für mich als Menschen, der nicht tief genug in die Materie blicken kann, transparent ist.
So schnell mal weg mit dem Text, sonst wird es wieder nix.
OlderCoder
Beiträge: 134
Registriert: 18.03.2013 12:30
Wohnort: Bayerland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von OlderCoder »

Ich verwende sonst den Firefox.

Der Assistent poppt auf. Aber was soll ich jetzt dort für eine Datei angeben???
OlderCoder
Beiträge: 134
Registriert: 18.03.2013 12:30
Wohnort: Bayerland
Kontaktdaten:

Re: Router-Konfig.-Aufruf scheitert an Sicherheitsabfrage

Beitrag von OlderCoder »

Meine Methode scheint Euch dämlich vorzukommen.
Aber besser eine seltsame und unübliche Methode, die funktioniert, als überhaupt keine.

Edit: edel fragte nach dem Router. Es ist ein Speedport W 504V.
Antworten