WinAPI Wrapper - TextOut?



  • Hm .. zu welchem Ansatzpunkt würdes du raten?



  • FrEak33 schrieb:

    Hm .. zu welchem Ansatzpunkt würdes du raten?

    Source-Code ändern.



  • Hab jetzt mal den ein oder anderen Text darüber gelesen, nur sind ein paar Abläufe mir nicht so ganz klar.

    1.) Ist die "Detour-Function" bereits meine eigene Injection oder eine von Detour implementierte Kontrollfunktion, die mich erst zu meiner eig. Funktion weiterleitet?

    Ist es richtig, dass die orginal funktion "Source-Funktion" mich zur Detourfunction weiterleitet, und hier erst durch die Trampoline-Funktion zur eigenen Target-Funktion (Inject-Funktion) weiterleitet?



  • Ok:

    also die Targetfunction ist die orginal API-Funktion. Zuerst werden die ersten Instruktionen der Target funktion in der Trampoline-function gespeichert um den rücksprung zu ermöglichen. Die Detourfunction bereitet alles vor um die eingenen Inject funktion aufzurufen. Die Detourfunction ruf hiermit die Tampoline function auf und ruft die "normale" API funktion auf.

    So richtig? 🙂



  • Kann jemand was die folgendem Fehler anfangen?:

    ....\WINAPI_HOOK.dll : fatal error LNK1169: one or more multiply defined symbols found



  • FrEak33 schrieb:

    Kann jemand was die folgendem Fehler anfangen?:

    Du hast irgendwas (z.B.: ne Funktion) mehrfach definiert.



  • Also es funktioniert alles wunderbar. Nur habe ich ein Problem - die TextOut Nachricht wird nur vom eigenen Prozess gehook. Möchte dies jedoch auf Systemweiterbasis realisieren.

    Habe auch in den Dokuments gelesen:

    The Detours library intercepts target functions
    by rewriting their in-process binary image. For
    each target function, Detours actual rewrites two
    functions: the target function and the matching
    trampoline function. The trampoline function can
    be allocated either dynamically or statically. A
    statically allocated trampoline always invokes the
    target function without the detour. Prior to
    insertion of a detour, the static trampoline
    contains a single jump to the target.

    Es müsste doch auch möglich sein, diese Nachricht general zu modifizieren?

    PS: Gibt es nicht von Microsoft eine Doku für alle Funktionen??



  • FrEak33 schrieb:

    PS: Gibt es nicht von Microsoft eine Doku für alle Funktionen??

    ? MSDN-Library? Diese ist auch Online!



  • Jope. hab ich dann auch gefunden. Und zu meiner anderen Frage?



  • FrEak33 schrieb:

    Und zu meiner anderen Frage?

    Da kenn ich mich mit detours zu wenig aus...



  • Wenn ich meinen Po ganz schnell hin und her auf Parkett reibe tut das weh.



  • Naja, da hast du nicht ganz unrecht:)

    Sonst kann mir keiner helfen 😞



  • REAL_Freak33 schrieb:

    Naja, da hast du nicht ganz unrecht:)

    Sonst kann mir keiner helfen 😞

    ^^



  • Also ich werd das gefühl nicht los, dass nur eigene bzw. nur Unterprozesse möglich sind zu hooken.
    Wäre auch ander sehr verwunderlich..? Evt. kann jemand ein Statement dazu geben!



  • Also, wie es aussieht ist es nicht möglich Windows-API's global zu hooken, da nur die import/tabellen der eigenen Binary/DLL modifiziert werden.
    (Komme so auch nicht an andere Prozesse).

    For example, the procedures in a DLL can be detoured in one
    execution of an application, while the original
    procedures are not detoured in another execution
    The original publication of this paper was granted to running at the same time.


Anmelden zum Antworten