1
Mhook
Sekiranya anda melabur di kawasan ini maka anda sudah tahu bahawa Detours Penyelidikan Microsoft cukup banyak menetapkan penanda aras ketika datang ke API hooking.
- Percuma
- Windows
Sekiranya anda melabur di kawasan ini maka anda sudah tahu bahawa Detours Penyelidikan Microsoft cukup banyak menetapkan penanda aras ketika datang ke API hooking.Kenapa kita tidak dapat membandingkan dengan cepat dengan cara itu?DETURS VS.MHOOK Detours boleh didapati secara percuma dengan lesen bukan komersial tetapi hanya menyokong platform x86.Lencongan juga boleh dilesenkan untuk penggunaan komersil yang juga memberi anda sokongan penuh x64, tetapi anda hanya dapat melihat syarat pelesenan selepas menandatangani NDA.Mhook diedarkan secara bebas di bawah lesen MIT dengan sokongan untuk x86 dan x64.Lencongan bersembunyi jauh dari secara rasmi menyokong lampiran cangkuk ke aplikasi berjalan.Sudah tentu, anda bebas untuk melakukannya - tetapi jika anda akhirnya menyebabkan kemalangan rawak di sini atau di sana, anda hanya boleh menyalahkan diri anda.Mhook bertujuan untuk dapat menetapkan dan mengeluarkan cangkuk dalam menjalankan aplikasi - setelah semua, itulah yang anda perlukan di dunia nyata.Ia melakukan yang terbaik untuk mengelakkan kod timpa yang mungkin sedang dilaksanakan oleh benang lain.Lencongan menyokong cagaran transaksi dan tidak cergas;iaitu, menetapkan sekumpulan cangkuk pada masa yang sama dengan pendekatan semua atau tidak.Cangkuk hanya akan ditetapkan jika semua itu boleh ditetapkan, jika tidak, perpustakaan akan melancarkan sebarang perubahan yang dibuat.Mhook tidak melakukan ini.Akhirnya, Mhook agak malas apabila menguruskan memori untuk trampolin yang digunakannya.Lencongan memperuntukkan blok ingatan seperti yang diperlukan, dan menggunakan kawasan data yang dihasilkan untuk menyimpan seberapa banyak trampolin dalam keadaan sesuai.Mhook, sebaliknya, menggunakan satu panggilan untuk VirtualAlloc setiap cangkuk yang ditetapkan.Setiap cangkuk memerlukan kurang dari 100 bait penyimpanan jadi ini sangat membazir, kerana VirtualAlloc akhirnya meraih 64K dari ruang alamat virtual 'proses setiap kali Mhook memanggilnya.(Ingatan sebenar yang diperuntukkan akan menjadi satu halaman yang juga agak membazir.) Akhirnya, ini mungkin tidak benar, melainkan anda menetapkan bilangan cangkuk yang sangat besar dalam aplikasi.Juga, ini sangat mudah untuk diperbaiki.