Сравнивать список файлов на диске со списком файлов в таблице хэшей. Очевидно же. Можно даже извратиться и исключить из проверки папки, выделенные под аплоад.
Valeriy Solovyov: Никак: скрипт будет выполнять ровно то, что в нем заложено. Имея исходный код (да и без него, вероятно) можно ровно одним запросом поиметь сайт. Можно отследить инструменты типа sqlmap/acunetix, конечно.
Средств 100% ловли нет. Но проверяющие запросы по сигнатуре есть. Но они при большом количестве запросов могут неплохо нагрузить сервер.
Лучше каким нибудь айболитом или кламав по крону делай проверку и смотри результат.