Not a conspiracy theory, just a thought experiment.

Let's say some big smartphone manufacturer put keylogger (or any other malware) in their hardware. Would it be possible to reveal it with 100% certainty?

  • Sure, by accessing the firmware, downloading it, and analysing it. Or confirming the undesired effects of the undesired functions.
    – schroeder
    Jun 5, 2018 at 15:56
  • Do you mean to ask if it'd be possible to confirm the nonexistence of malware? Jun 5, 2018 at 15:59
  • A small note: your title question does not match your question body. Confirming something does not do something is very different from confirming that something does do something.
    – schroeder
    Jun 5, 2018 at 15:59
  • is it possible that manufacturer has hidden part of firmware and it's not available for downloading?
    – stkvtflw
    Jun 5, 2018 at 16:02
  • @stkvtflw typically, firmware is not meant to be accessed directly, that's why there is a whole field called "reverse engineering" to get around all those pesky barriers
    – schroeder
    Jun 5, 2018 at 16:04

1 Answer 1


No. You cannot always detect. Here is a scenario.

How would the keys be logged? Each time you press a key you send an interrupt to the processor because some wire that was low goes high on a bus that says hey CPU, I have input for you to read! The CPU reads the input and puts it somewhere and tells the application a key was pressed.

So firmware could be any other chip that also monitors the bus, and captured the value when it goes high.

It doesn’t need to be the cpu and it can write the data anywhere. It can wait for some sequence of data before it kicks off its own interrupt to the cpu to read the data, or writes the data out to a port like usb.

It might be detectable if the firmware is sending the data over the network from time to time, but definitely possible to simpler store and wait for instructions before revealing it.

Not the answer you're looking for? Browse other questions tagged .