Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add x86_64 support #97

Open
wants to merge 21 commits into
base: x86_64
Choose a base branch
from
Open

Add x86_64 support #97

wants to merge 21 commits into from

Commits on Feb 15, 2021

  1. Added "debug" target in Makefile

    Running "make debug" will build the target with debugging symbols, low level of optimization and without NDEBUG flag.
    This target is meant to be used for development purposes.
    The "all" target remain the same.
    cube0x8 committed Feb 15, 2021
    Configuration menu
    Copy the full SHA
    8bf7233 View commit details
    Browse the repository at this point in the history

Commits on Feb 17, 2021

  1. Added ARCH target flag for the peloader library. Added first test whi…

    …ch successfully check a PE (x64) header.
    
    The peloader library can be built passing the ARCH flag as argument, which allows the user
    to choose between x86 or x64. This flag is available for the peloader library only, but
    the idea is to expand it to the whole project.
    
    check_nt_hdr function has been changed in order to recognize x64 NT headers magic values.
    For this purpose, a Check unit test has been added.
    cube0x8 committed Feb 17, 2021
    Configuration menu
    Copy the full SHA
    9a2ee40 View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2021

  1. Modified test target.

    LDLIBS variable has been modified in order to intiialize crtexports. This makes us able to map and link a .dll in the Check unit tests.
    test target do uses O0 and -g compiler flags.
    cube0x8 committed Feb 26, 2021
    Configuration menu
    Copy the full SHA
    15ad102 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    de07f73 View commit details
    Browse the repository at this point in the history

Commits on Mar 3, 2021

  1. Created skeleton for x64 APIs loading.

    Created the first two x64 APIs (HeapAlloc and HeapFree).
    The x64 APIs will have the "_x64" suffix and they will be mostly wrappers around the
    true APIs.
    An only development-purpose Makefile target (mpclient_x64) has been created.
    cube0x8 committed Mar 3, 2021
    Configuration menu
    Copy the full SHA
    77497a9 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2021

  1. Removed libdisasm and imported zydis as submodule. libdisasm has been…

    … replaced by zydis, so now we've got a x86/x86_64 disassembler. hook.c now uses zydis to patch functions (only x86 for now)
    cube0x8 committed Mar 22, 2021
    Configuration menu
    Copy the full SHA
    4d8d7b0 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2021

  1. Added x86_64 support for libhook and added assembly dispatchers to re…

    …direct functions and switch calling convention
    cube0x8 committed Apr 9, 2021
    Configuration menu
    Copy the full SHA
    bc565fe View commit details
    Browse the repository at this point in the history

Commits on May 9, 2021

  1. x86_64 WINAPIs are correctly dispatched and mpclient boots up and sca…

    …n eicar.com successfully
    cube0x8 committed May 9, 2021
    Configuration menu
    Copy the full SHA
    cb17618 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2021

  1. Configuration menu
    Copy the full SHA
    56f4b3e View commit details
    Browse the repository at this point in the history

Commits on May 12, 2021

  1. Fixed bug on stack alignment for x64 dispatchers and added priority f…

    …or zydis decoder constructor.
    cube0x8 committed May 12, 2021
    Configuration menu
    Copy the full SHA
    844c5fe View commit details
    Browse the repository at this point in the history

Commits on May 14, 2021

  1. No redzone for mpclient_x64 and peloader. The subhook hooks were push…

    …ing addresses on the stack and overwriting some useful value on the redzone. For now, the redzone has been disabled (-mno-red-zone).
    cube0x8 committed May 14, 2021
    Configuration menu
    Copy the full SHA
    97d3bec View commit details
    Browse the repository at this point in the history

Commits on May 23, 2021

  1. The jmp from the fixup area to the x86_64 dispatcher is made by subho…

    …ok. We can't rely on a jmp near immediate in this case.
    cube0x8 committed May 23, 2021
    Configuration menu
    Copy the full SHA
    188676c View commit details
    Browse the repository at this point in the history

Commits on May 29, 2021

  1. Added check on setup_call_to_dispatcher return value. Integrated log.…

    …c as logging utility for all the project.
    cube0x8 committed May 29, 2021
    Configuration menu
    Copy the full SHA
    8ecacf9 View commit details
    Browse the repository at this point in the history
  2. It looks like __attribute__((ms_abi)) can spawn deamons, resurrect th…

    …e dead and make a good coffee (and eventually it changes the calling convention of a function to Windows x86_64 as well...)
    cube0x8 committed May 29, 2021
    Configuration menu
    Copy the full SHA
    020b7a7 View commit details
    Browse the repository at this point in the history
  3. x64 NASM dispatchers are not useful anymore :( re-written the libhook…

    ….a which now supports both HOOK_DEFAULT and HOOK_REPLACE_FUNCTION mode.
    cube0x8 committed May 29, 2021
    Configuration menu
    Copy the full SHA
    3a0edb7 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2021

  1. Configuration menu
    Copy the full SHA
    5c65a4f View commit details
    Browse the repository at this point in the history
  2. Added -maccumulate-outgoing-args to compile mpclient_x64, since it al…

    …so uses WINAPI functions.
    cube0x8 committed May 30, 2021
    Configuration menu
    Copy the full SHA
    c827d74 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2021

  1. Added x64 SEH support

    cube0x8 committed Jul 16, 2021
    Configuration menu
    Copy the full SHA
    9675382 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2021

  1. Removed a __debugbreak() in the wrong place and freed FunctionEntry a…

    …fter handler has been executed
    cube0x8 committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    04cda3f View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2021

  1. Configuration menu
    Copy the full SHA
    d4acd2b View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2021

  1. Removed NASM dependency

    cube0x8 committed Jul 28, 2021
    Configuration menu
    Copy the full SHA
    5c344a0 View commit details
    Browse the repository at this point in the history