• Earn real money by being active: Hello Guest, earn real money by simply being active on the forum — post quality content, get reactions, and help the community. Once you reach the minimum credit amount, you’ll be able to withdraw your balance directly. Learn how it works.

C/C++ [C] GPU Based Keylogger [Undetectable] [Full Source Code]

Status
Not open for further replies.

Diabl0

_LvL.23|574FF_
User
Joined
Jan 2, 2015
Messages
317
Reputation
0
Reaction score
6,427
Points
243
Credits
0
‎10 Years of Service‎
46%
This is a GPU Based keylogger, meaning it resides and functions on the graphic processing unit rather than the CPU.


Its capable of doing this By instructing the GPU to carefully monitor ,via DMA , the physical page where the keyboard buffer resides,



it thus can record all user keystrokes and store them in the memory space of the GPU.


 


Sketch_2.png


 


Sketch_1.png


 


It does not rely on any kernel modifications besides altering the page table, and uses a small code snippet that needs to run just once from kernel context to acquire the physical address of the keyboard buffer.



This code is completely standalone, does not require any hooks or other modifications, and is completely removed after it accomplishes its task.



The physical address of the keyboard buffer is then used by the GPU to monitor all user keystrokes directly via DMA, through the direction of a user-level controller process.


Requirements for use:

  • OpenCL drivers/icd's installed
  • AMD or NVIDIA card (although AMDAPPSDK does support intel)


  • linux kernel headers



Here is a summary of what this POC does:

  • CPU kernel module bootstrap to locate keyboard buffer via DMA in usb struct


  • keyboard buffer gets stored in userland file


  • kernel module deletes itself


  • OpenCL stores that keyboard buffer inside gpu and deletes file due to evidence



Thanks to team Jellyfish for this POC...all credits goes to them.


Download:



[HIDE-THANKS]



Link:
This link is hidden for visitors. Please Log in or register now.



[/HIDE-THANKS]


 


Password:


 

 


Pass: level23


 
Why is it undetectable?


The answer is easy...Current malware analysis and detection systems are tailored to CPU architectures only, and therefore are ineffective against GPU-based malware


 
Last edited by a moderator:
Status
Not open for further replies.
Back
Top