ufrisk / pcileech

Direct Memory Access (DMA) Attack Software
GNU Affero General Public License v3.0
4.87k stars 718 forks source link

3.6 version issue #62

Closed false closed 5 years ago

false commented 5 years ago

Hello,

I can't get pass the result = PCIleech_DeviceConfigGet(PCILEECH_DEVICE_OPT_FPGA_FPGA_ID, &qwID) && PCIleech_DeviceConfigGet(PCILEECH_DEVICE_OPT_FPGA_VERSION_MAJOR, &qwVersionMajor) && PCIleech_DeviceConfigGet(PCILEECH_DEVICE_OPT_FPGA_VERSION_MINOR, &qwVersionMinor); on the new 3.6 version ; Result is always false. I use a pcie screamer with pcileech-fpga 3.3-beta version. It works fine when I switch back to the 3.5 version. Could it be an issue with the 3.3 bin ?

false commented 5 years ago

It works if I switch back the constants to the decimal format : `#define PCILEECH_DEVICE_OPT_FPGA_PROBE_MAXPAGES 1 // RW

define PCILEECH_DEVICE_OPT_FPGA_RX_FLUSH_LIMIT 2 // RW

define PCILEECH_DEVICE_OPT_FPGA_MAX_SIZE_RX 3 // RW

define PCILEECH_DEVICE_OPT_FPGA_MAX_SIZE_TX 4 // RW

define PCILEECH_DEVICE_OPT_FPGA_DELAY_PROBE_READ 5 // RW uS

define PCILEECH_DEVICE_OPT_FPGA_DELAY_PROBE_WRITE 6 // RW uS

define PCILEECH_DEVICE_OPT_FPGA_DELAY_WRITE 7 // RW uS

define PCILEECH_DEVICE_OPT_FPGA_DELAY_READ 8 // RW uS

define PCILEECH_DEVICE_OPT_FPGA_RETRY_ON_ERROR 9 // RW

define PCILEECH_DEVICE_OPT_FPGA_DEVICE_ID 80 // R

define PCILEECH_DEVICE_OPT_FPGA_FPGA_ID 81 // R

define PCILEECH_DEVICE_OPT_FPGA_VERSION_MAJOR 82 // R

define PCILEECH_DEVICE_OPT_FPGA_VERSION_MINOR 83 // R`

Unfortunatly the exemple crashes a bit after on the method call : result = PCILeech_VmmProcessGetMemoryMap(dwPID, NULL, &cMemMapEntries, TRUE);

Same issue occurs in my application with 'PCILeech_VmmProcessGetModuleMap(dwPID, NULL, &cModules);'

Edit: The crash does not occur when I switch back to the 3.5 dll version in my app.

false commented 5 years ago

Tested with the FPGA 3.2 version, same crash issue.

ufrisk commented 5 years ago

Thanks for reporting these two issues. I have successfully replicated both issues and will be issuing a fix as soon as possible - on Wednesday at the very latest.

The crash issue materialized after the "missing modules" fix I issued. Since I've already fixed it in my other code base I'm working on I missed it in my very minor PCILeech updates (which was somewhat lacking proper QA for this release obviously).

ufrisk commented 5 years ago

Both issues should now be resolved in 3.6.2. Can you please confirm? Once again thank you for reporting these issues.

false commented 5 years ago

Tested it for an hour now, seems to work good, thanks :-)