VB: Simplest BP Override

  • Hier mal ein PoC, das ich vor einiger Zeit mal gecodet hatte.
    Es ist dazu da um BPs auf APIs unwirksam zu machen.
    Baut es in APIs ein, die relevant für euern Schutz ist.
    Das funktioniert übrigends auch für Stellen innerhalb eures Codes.



    Hoffe, ihr könnts gebrauchen.
    MFG DizzY_D

    [CENTER]Aktuelles Projekt:

    Status: 5%
    Real Coder doesn't code Visual Basic. Real Coder codes Opcodes.[/CENTER]

  • Ich verstehe nicht ganz wie das funktioniert :D
    Also man holt sich die Adresse von der API, holt sich Schreibzugriff, dann überschreibt man das erste Byte der API mit dem Byte das an die Protect Funktion übergeben wurde und dann gibt man den Schreibzugriff wieder auf und kehrt zu den normalen Rechtn zurück.
    Aber was bringt es denn, das erste Byte einer API zu überschreiben xD?


    Edit: Was soll denn dieser Scheiss, warum muss hier jeder Beitrag freigeschaltet werden, sind wir hier im kindergarten xD?

    greetz Nop (ehem. Av0c4d0)
    -Coding & RE


    Einmal editiert, zuletzt von Nop0x90 ()

  • Soweit ich weiÃ? führt doch der erste Byte bei Breakpoints zur Exception oder?




    Du sagst, du spürst die Ohnmacht, denn der Feind ist ach so stark
    Und er will dich niederhalten mit Geschrei durch Bein und Mark
    Mit Verboten und Zensur kann er zwar den Kampf erschweren
    Doch niemals wird ein Richterspruch den freien Geist bekehren.


    Fürchte lieber Deutschlands Untergang als die Reden der Vasallen
    Derer, die der Lüge dienen, denn schon bald werden sie fallen.

  • Meistens wird ein INT 3 Opcode geschrieben, der die Exception für den Breakpoint auslöst. Der ist dieses eine Byte. Die ProtectAPI Funktion könnte man natürlich noch verbessern, indem man einbaut, dass sie sich das erste Byte aus der Binary File von der Festplatte holt.


    Gegen Hardware BPs, etc schützt diese Methode allerdings auch nicht.