1

Is it theoretically possible to take these new smarter keyboards such as the K70 RGB and tap into the onboard memory which in the case of the K70 RGB, is used for storing lighting profiles and the likes, is it possible to tap into that for storage ?

I realize it would be tiny storage but I was thinking of things such as hiding master password lists or encryption keys or something cool in there, a place no one would think to look or even know how to look..

So... is it theoretically possible to monitor how the keyboard stores the profile to the memory when you tell it too, and watch it's process and somehow break that and emulate it to store your own files?

Or, is there some tech hurdle I am missing here due to my noobyism...

3
  • Please not this is a guess and this is only verifyable if you open it up. BUt no you can't. As there is not enough space to store real information. Open the keyboard and reverse the software to make sure you can or can't Commented Oct 6, 2014 at 14:33
  • 2
    Do you know how much is stored on the keyboard, and how much on the PC by the driver? Do the PC and the keyboard actually share that information? If you can change some settings on the PC, and these settings are truly stored on the keyboard (are they unchanged if you attach the keyboard to a different PC?), then it should be possible to continue with your, er, quest, by learning USB protocols, and monitoring the communication between PC and keyboard by something like sourceforge.net/projects/usbsnoop. Commented Oct 6, 2014 at 15:23
  • I would do the test proposed by @GuntramBlohm with internet off because modern tech drivers/apps sucks so I would be not suprised much if it stores the profiles on some server instead of local HDD or OnBoard memory. Especially if the driver need any frameworks like ATI ... If the test confirms the OnBoard memory is used then post more info like connection type (USB,PS2?) IC's onboard, driver info etc ... Commented Dec 8, 2014 at 11:11

1 Answer 1

2

Is it theoretically possible to store custom things in the onboard memory of input devices like keyboards or mice?

Yes.

I can't give you an exhaustive list of devices you could use for this purpose, but I can give you at least one, which should be enough to satisfy "theoretically possible".

The Perixx MX-2000 IIB comes with onboard memory, to the tune of at least 1,285 bytes. 261 of those bytes are required for mouse configuration and settings, but 1,024 of those bytes are reserved for macro memory, which can be used for any other purpose, even when macros are not enabled. You can absolutely store arbitrary data in those sectors, and even have the data recallable on button click (actually using it as a macro) or otherwise dumping the data via USB.

I've come across this through reverse engineering the windows driver for this mouse making a linux port. An extremely quick way to accomplish what you want with this mouse is using this driver, and using the dump and load commands. The dump command creates a 1285-byte binary file with the memory contents of the mouse. Opening this with a hex editor, the first 1024 bytes should be easily seen to be all 0xFF. Feel free to put any arbitrary data there, it doesn't cause adverse effects to the mouse until macros are enabled. After editing the file, you can update the mouse memory using the load command. Of course, you can read it back with another dump.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.