Skip to content

Commit

Permalink
Version 4.18.7
Browse files Browse the repository at this point in the history
  • Loading branch information
ufrisk committed Dec 30, 2024
1 parent c1a6b63 commit 6770650
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 14 deletions.
Binary file modified includes/lib64/leechcore.lib
Binary file not shown.
10 changes: 6 additions & 4 deletions pcileech/Makefile
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
CC=gcc
CFLAGS +=-I. -I../includes -D LINUX -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -L. -l:leechcore.so -l:vmm.so -pthread
#CFLAGS += -g -O0 -Wextra
CFLAGS += -fPIE -fPIC -pie -fstack-protector -D_FORTIFY_SOURCE=2 -O1 -Wl,-z,noexecstack
CFLAGS +=-I. -I../includes -D LINUX -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -pthread
CFLAGS += -fPIE -fPIC -fstack-protector -D_FORTIFY_SOURCE=2 -O1
CFLAGS += -Wall -Wno-format-truncation -Wno-enum-compare -Wno-pointer-sign -Wno-multichar -Wno-unused-variable -Wno-unused-value
CFLAGS += -Wno-pointer-to-int-cast -Wno-int-to-pointer-cast
LDFLAGS +=-Wl,-rpath,'$$ORIGIN' -ldl
ifeq ($(shell basename $(CC)),gcc)
CFLAGS += -pie
endif
LDFLAGS +=-Wl,-rpath,'$$ORIGIN' -ldl -L. -l:leechcore.so -l:vmm.so -Wl,-z,noexecstack
DEPS = pcileech.h
OBJ = oscompatibility.o charutil.o device.o pcileech.o executor.o extra.o help.o kmd.o memdump.o mempatch.o statistics.o umd.o util.o vfslist.o vfs.o vmmx.o ob/ob_cachemap.o ob/ob_core.o ob/ob_map.o ob/ob_set.o

Expand Down
2 changes: 1 addition & 1 deletion pcileech/extra.c
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ VOID Action_TlpTxLoop()
}
LcGetOption(ctxMain->hLC, LC_OPT_FPGA_VERSION_MAJOR, &qwFpgaVersionMajor);
LcGetOption(ctxMain->hLC, LC_OPT_FPGA_VERSION_MINOR, &qwFpgaVersionMinor);
if((qwFpgaVersionMajor < 4) || ((qwFpgaVersionMajor == 4) && (qwFpgaVersionMajor < 2))) {
if((qwFpgaVersionMajor < 4) || ((qwFpgaVersionMajor == 4) && (qwFpgaVersionMinor < 2))) {
printf("Action_TlpTxLoop: FPGA version not supported (bitstream v4.2 or later required).\n");
return;
}
Expand Down
2 changes: 1 addition & 1 deletion pcileech/kmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1393,7 +1393,7 @@ BOOL KMDOpen_WINX64_3_VMM()
printf("KMD: Failed get hook (ntoskrnl.exe) #3\n");
goto fail;
}
if((pbHookOriginalData[0x00] == 0xE9)) {
if(pbHookOriginalData[0x00] == 0xE9) {
printf("KMD: Hook already inserted #4\n");
goto fail_hookrestore;
}
Expand Down
8 changes: 4 additions & 4 deletions pcileech/oscompatibility.c
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ BOOL AcquireSRWLockExclusive_Try(_Inout_ PSRWLOCK SRWLock)
{
DWORD dwZero = 0;
__sync_fetch_and_add_4(&SRWLock->c, 1);
if(atomic_compare_exchange_strong(&SRWLock->xchg, &dwZero, 1)) {
if(atomic_compare_exchange_strong((atomic_uint*)&SRWLock->xchg, &dwZero, 1)) {
return TRUE;
}
__sync_sub_and_fetch_4(&SRWLock->c, 1);
Expand All @@ -270,7 +270,7 @@ VOID AcquireSRWLockExclusive(_Inout_ PSRWLOCK SRWLock)
__sync_fetch_and_add_4(&SRWLock->c, 1);
while(TRUE) {
dwZero = 0;
if(atomic_compare_exchange_strong(&SRWLock->xchg, &dwZero, 1)) {
if(atomic_compare_exchange_strong((atomic_uint*)&SRWLock->xchg, &dwZero, 1)) {
return;
}
futex(&SRWLock->xchg, FUTEX_WAIT, 1, NULL, NULL, 0);
Expand All @@ -285,7 +285,7 @@ BOOL AcquireSRWLockExclusive_Timeout(_Inout_ PSRWLOCK SRWLock, _In_ DWORD dwMill
__sync_fetch_and_add_4(&SRWLock->c, 1);
while(TRUE) {
dwZero = 0;
if(atomic_compare_exchange_strong(&SRWLock->xchg, &dwZero, 1)) {
if(atomic_compare_exchange_strong((atomic_uint*)&SRWLock->xchg, &dwZero, 1)) {
return TRUE;
}
if((dwMilliseconds != 0) && (dwMilliseconds != 0xffffffff)) {
Expand All @@ -307,7 +307,7 @@ BOOL AcquireSRWLockExclusive_Timeout(_Inout_ PSRWLOCK SRWLock, _In_ DWORD dwMill
VOID ReleaseSRWLockExclusive(_Inout_ PSRWLOCK SRWLock)
{
DWORD dwOne = 1;
if(atomic_compare_exchange_strong(&SRWLock->xchg, &dwOne, 0)) {
if(atomic_compare_exchange_strong((atomic_uint*)&SRWLock->xchg, &dwOne, 0)) {
if(__sync_sub_and_fetch_4(&SRWLock->c, 1)) {
futex(&SRWLock->xchg, FUTEX_WAKE, 1, NULL, NULL, 0);
}
Expand Down
4 changes: 2 additions & 2 deletions pcileech/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

#define VERSION_MAJOR 4
#define VERSION_MINOR 18
#define VERSION_REVISION 6
#define VERSION_BUILD 56
#define VERSION_REVISION 7
#define VERSION_BUILD 57

#define VER_FILE_DESCRIPTION_STR "The PCILeech Direct Memory Access Attack Toolkit"
#define VER_FILE_VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, VERSION_BUILD
Expand Down
4 changes: 2 additions & 2 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Please find a summary of the supported hardware based memory acquisition methods
| Device | Type | Interface | Speed | 64-bit memory access | PCIe TLP access | Project<br>Sponsor |
| -------------------------------------------------------------------------------| ---- | --------- | ----- | -------------------- | --------------- | ------------------ |
| [Screamer PCIe Squirrel](https://github.com/ufrisk/pcileech-fpga/tree/master/PCIeSquirrel) | [FPGA](https://github.com/ufrisk/LeechCore/wiki/Device_FPGA) | USB-C | 190MB/s | Yes | Yes | πŸ’– |
| [ZDMA](https://github.com/ufrisk/pcileech-fpga-dev/blob/master/ZDMA) | [FPGA](https://github.com/ufrisk/LeechCore/wiki/Device_FPGA) | Thunderbolt3 | 1000MB/s | Yes | Yes | πŸ’– |
| [ZDMA](https://github.com/ufrisk/pcileech-fpga/blob/master/ZDMA) | [FPGA](https://github.com/ufrisk/LeechCore/wiki/Device_FPGA) | Thunderbolt3 | 1000MB/s | Yes | Yes | πŸ’– |
| [LeetDMA](https://github.com/ufrisk/pcileech-fpga) | [FPGA](https://github.com/ufrisk/LeechCore/wiki/Device_FPGA) | USB-C | 190MB/s | Yes | Yes | πŸ’– |
| [AC701/FT601](https://github.com/ufrisk/pcileech-fpga/tree/master/ac701_ft601) | [FPGA](https://github.com/ufrisk/LeechCore/wiki/Device_FPGA) | USB3 | 190MB/s | Yes | Yes | |
| USB3380-EVB | [USB3380](https://github.com/ufrisk/LeechCore/wiki/Device_USB3380) | USB3 | 150MB/s | No | No | |
Expand Down Expand Up @@ -176,7 +176,6 @@ Links:
* PCILeech FPGA: https://github.com/ufrisk/pcileech-fpga
* LeechCore: https://github.com/ufrisk/LeechCore
* MemProcFS: https://github.com/ufrisk/MemProcFS
* YouTube: https://www.youtube.com/channel/UC2aAi-gjqvKiC7s7Opzv9rg
* Blog: http://blog.frizk.net
* PushPin: GUI for PCILeech: https://github.com/LuckyPi/PushPin

Expand Down Expand Up @@ -306,3 +305,4 @@ v4.1

Latest:
* Linux stability improvements and kernel module loading enhancements.
* Linux clang compilation support.

0 comments on commit 6770650

Please sign in to comment.