undecidable. After all, the Halting Problem tells us that we
cannot write a program which will reliably determine the
behaviour of all other possible programs:
‘No program can say what another will do.
Now, I won’t just assert that, I’ll prove it to you: I will prove
that although you might work til you drop, you can’t predict
whether a program will stop.
[. . .]
You can never discover mechanical means for predicting the
acts of computing machines.
It’s something that cannot be done. So we users must find
our own bugs; our computers are losers!’ [1]
This general result can be cast into specific terms to show that
a program which will distinguish unfailingly between malware
and non-malware cannot be made. Malware authors always get
a ‘next chance’ to circumvent the protection we currently have
in place [2].
Q. However, that doesn’t mean it is always easy for malware
authors, or for phishers, to go to the next level, does it?
A. No. I was just being dramatic. Nothing, whether it is
authentication or something else, can actually solve the
problem of phishing, in a mathematical sense of solving it. But
we can make phishing much harder, and authentication is
indeed one of the tools we can use.
Q. Staying on the topic of malware detection for a moment,
how hard is it to produce malware – a new banking trojan, for
instance – which evades detection?
A. On one hand, it is getting harder. On modern PCs,
anti-virus software can be much more computationally
aggressive than it was in the past. Generic detection techniques
mop up
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24