How to hack the virtual table?

前端 未结 9 871
谎友^
谎友^ 2021-01-31 21:41

I would like to know how to change the address of Test which is in the virtual table with that of HackedVTable.

void HackedVtable()
{
           


        
9条回答
  •  抹茶落季
    2021-01-31 22:21

    Another way to achieve the same thing is by cheking similar code:

    GObject:

    http://en.wikipedia.org/wiki/Gobject

    GLib:

    http://en.wikipedia.org/wiki/GLib

    Vala:

    http://en.wikipedia.org/wiki/Vala_%28programming_language%29

    Those guys wanted to work with a object and class oriented programming language, but "C++", didn't fit their requisites. Then , they took "plain C", and simulate objects withn records & pointers, including Virtual Method Tables. Eventually got a similar language called "Vala", their own "C++" alike language (with their own V.M.T.).

    Another related links:

    http://en.wikipedia.org/wiki/Virtual_method_table

    http://www.artima.com/insidejvm/ed2/jvmP.html

    Cheers.

提交回复
热议问题