Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi IE fernsteuern - Mein Code geht unter IE7 nichtmehr (https://www.delphipraxis.net/84060-ie-fernsteuern-mein-code-geht-unter-ie7-nichtmehr.html)

snapman 10. Jan 2007 20:09


IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Hallo,

ich habe hier einen Code um den IE6 fernzusteuern, der auch sehr gut funktioniert:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var IEHandle, AdressCB: HWND;
    buffer: array[0..MAX_PATH] of char;
begin
WinExec('C:\Programme\Internet Explorer\iexplore.exe',SW_SHOW);
sleep(400);
IEHandle := FindWindow('IEFrame', nil);
AdressCB := FindWindowEx(IEHandle, 0, 'WorkerW', nil);
AdressCB := FindWindowEx(AdressCB, 0, 'ReBarWindow32', nil);
AdressCB := FindWindowEx(AdressCB, 0, 'ComboBoxEx32', nil);

AdressCB :=FindWindowEx(AdressCB, 0, 'ComboBox', 0);
AdressCB :=FindWindowEx(AdressCB, 0, 'Edit', 0);

SendMessage(AdressCB, WM_SETTEXT, 0, Integer(PChar('www.freemail.de')));

SendMessage(AdressCB, WM_SETFOCUS, 0, 0);
SendMessage(AdressCB, WM_KEYDOWN, VK_RETURN,0 );
SendMessage(AdressCB, WM_KEYUP, VK_RETURN, 0);
end;
Allerdings geht das Ganze beim IE7 nichtmehr (bis auf das Starten der Anwendung)!
Kann mir hier jemand weiterhelfen?

Wozu brauch ich das ganze? Soll für eine Demo sein, die zeigen soll wie einfach das Windows Nachrichtensystem missbraucht werden kann.
(z.b. mit SW_HIDE starten und dann pers. Daten senden durch die Firewall)
Da unter Vista der IE7 Standard ist, sollte es hier eben auch laufen.

Bernhard Geyer 10. Jan 2007 20:59

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Wenn es so einfach ist mußt du "nur" die neuen Windows-Klassennamen herausfinden. z.B. WinSpy sollte dir hier sehr gut Hilfe leisten.

Mal schauen wie du die Vista-Firewall damit bei aktiven User Account Control überlisten willst (Ich hoffe doch das änderungen dadurch geschützt sind).

snapman 10. Jan 2007 21:06

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von Bernhard Geyer
Wenn es so einfach ist mußt du "nur" die neuen Windows-Klassennamen herausfinden. z.B. WinSpy sollte dir hier sehr gut Hilfe leisten.

Mal schauen wie du die Vista-Firewall damit bei aktiven User Account Control überlisten willst (Ich hoffe doch das änderungen dadurch geschützt sind).

Die VistaFirewall muss man in der StandardKonfiguration garnicht überlisten.
ALLES nach aussen hin ist erlaubt.

Mir gehts nur um die (neue) erweiterte Konfiguration wo man auch Verbindungen nach aussen hin blocken kann.
Das ist zwar so versteckt und so fuckelig gemacht das es nur 0,1% der User nutzen werden, aber eben auf diese Art auch leicht zu umgehen.

toms 10. Jan 2007 21:32

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Warum machst du es nicht so?

Delphi-Quellcode:
var
  IE: OleVariant;
begin
    IE := CreateOleObject('InternetExplorer.Application');
    IE.Visible := True;
    IE.Navigate('www.freemail.de');
end;

JasonDX 10. Jan 2007 21:38

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von toms
Warum machst du es nicht so?

Delphi-Quellcode:
var
  IE: OleVariant;
begin
    IE := CreateOleObject('InternetExplorer.Application');
    IE.Visible := True;
    IE.Navigate('www.freemail.de');
end;

Weil das nicht sinn der Sache ist. Die Daten muessen im Prozess des Browsers (bspw. Dll-Injection) rausgesendet werden. Damit wird der Browser sozusagen als Portal ins Internet vorbei an der Firewall missbraucht. Ist rechtlich aber fragwuerdig.

greetz
Mike

toms 10. Jan 2007 21:52

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von Bernhard Geyer
Wenn es so einfach ist mußt du "nur" die neuen Windows-Klassennamen herausfinden. z.B. WinSpy sollte dir hier sehr gut Hilfe leisten.

Genau. Die Fenster Struktur hat nämlich im IE 7 geändert.

snapman 10. Jan 2007 22:10

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von toms
Zitat:

Zitat von Bernhard Geyer
Wenn es so einfach ist mußt du "nur" die neuen Windows-Klassennamen herausfinden. z.B. WinSpy sollte dir hier sehr gut Hilfe leisten.

Genau. Die Fenster Struktur hat nämlich im IE 7 geändert.

Wo bekomm ich WinSpy?

toms 10. Jan 2007 22:12

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von snapman
Wo bekomm ich WinSpy?

Hier

snapman 10. Jan 2007 22:20

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Zitat:

Zitat von JasonDX
Zitat:

Zitat von toms
Warum machst du es nicht so?

Delphi-Quellcode:
var
  IE: OleVariant;
begin
    IE := CreateOleObject('InternetExplorer.Application');
    IE.Visible := True;
    IE.Navigate('www.freemail.de');
end;

Weil das nicht sinn der Sache ist. Die Daten muessen im Prozess des Browsers (bspw. Dll-Injection) rausgesendet werden. Damit wird der Browser sozusagen als Portal ins Internet vorbei an der Firewall missbraucht. Ist rechtlich aber fragwuerdig.

greetz
Mike

Das ist nicht ganz korrekt! Die Windows Firewall ist SO mies, die lässt sich sogar mit dem OLE Code umgehen!
Gibt allerdings noch ein problem, wenn ich den Code so übernehme, gehen 2 Fenster offen, wenn ich

IE := CreateOleObject('InternetExplorer.Application');
IE.Navigate('www.freemail.de');

es so mache nur 1 aber es ist halt sichbar...wenn ich visible auf false setze geht ein sichtbares und scheinbar 1 unsichtbares auf..
frage nun: wie komm ich ohne das sichtbare aus?

snapman 10. Jan 2007 22:26

Re: IE fernsteuern - Mein Code geht unter IE7 nichtmehr
 
Liste der Anhänge anzeigen (Anzahl: 1)
sieht für mich ziemlich gleich aus (zu den Handles oben), oder seht ihr nen unterschied?


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz