Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 28.11.2010, 09:25 Titel: in laufenden programmen/DLL 'eingreifen'? |
|
|
huhu zusammen,
hab mich oberflaechlich mit der Thematik von DLL-Injection beschaeftigt wo man 'eigenen' Code einem Programm hinzufuegen 'kann'
Jetzt habe ich mich allerdings gefragt ob es moeglichkeiten gibt, innerhalb eines laufendes Programms das seine Funktionen aus DLLs bezieht 'einzugreifen'
Ich versuchs mal zu erklaeren:
Das Programm hat bei druecken einer bestimmter Taste eine Funktion aufgerufen.
Eine neue version die immernoch die Funktion innerhalb der DLL besitzt fragt nun nicht mehr nach bzw ruft die funktion nicht mehr auf.
Nun wollte ich wissen ob es per externen programm meinetwegen per globalkey moeglich ist das dieses dann in der laufenden DLL die funktion aufruft als haette es das programm selbst getan?! so das mit diese mit einem extra programm wieder zur verfuegung steht?! _________________
 |
|
Nach oben |
|
 |
Flo aka kleiner_hacker
Anmeldungsdatum: 23.06.2006 Beiträge: 1210
|
Verfasst am: 20.12.2010, 20:43 Titel: |
|
|
ja das geht
sicherheitlöcher in browsern, kerneln etc. nutzen genau das aus (nur das andere calls gecallt werden)
du musst "nur" deinen code hintenanhängen, und irgendeinen befehl im programm durch JMP dein_code ersetzen. zum beispiel
aber kA wie
der gdb kann jedenfalls aus dem programmkontext heraus funktionen aufrufen. weiß aber nicht ob das mit -g zusammenhängt _________________ MFG
Flo
Satoru Iwata: Wer Spaß am Spielen hat, fragt nicht nach Grafik.
zum korrekten Verstaendnis meiner Beitraege ist die regelmaessige Wartung des Ironiedetektors unerlaesslich. |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 31.12.2010, 21:38 Titel: |
|
|
Ich finde die Frage etwas verwirrend.
Ein Programm kann natürlich Tastatur und Mauseingaben Simulieren (die Maus hab ich in Freebasic auch schon per WinAPI bewegt, ist recht einfach), letztlich ist der Maus- und Tasturtreiber ja auch nur software.
Was auch geht, ist in den Speicherbereich andere Programme einzugreifen. (Erfordert Admin Rechte und wird in modernen Sprachen dadurch erschwert, dass die Speicherbereiche Dynamisch vergeben werden) Das sowas in freie Wildbahn nicht auftaucht liegt wohl daran, dass wenn man die nötigen Rechte dazu hat, ja auch gleich die vorder Tür nehmen kann und das Programm oder die Funktion direkt starteten kann.
Genutzt wird es aber von manchen Cheat Programmen: Wenn ich weiss wo meine Lebenspunkte gespeichert sind, kann ich sie einfach einfrieren.
Was auch ginge, ist einfach eine Dummy DLL zu schreiben, die Aufrufe an die echte weitergibt und einfach mitprotokolliert. Vom einfachen mitlesen dann zum Manipulieren überzugehen ist dann auch nahe liegend. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
|