наличие компилятора - просто дополнительное облегчение для взломщика.
Пример. Допустим, на сервере живет хостинг. И на одном из сайтов обнаружилась дырочка, позволяющая заливать файлы. И предположим у взломщика есть описание уязвимости, имеющейся на сервере. Для того, чтобы ей воспользоваться - надо собрать код, запустить бинарник и радоваться )
Так вот, проще загрузить исходник, собрать его на месте, и запустить. Бинарник залить тоже можно, но надо соблюсти архитектуру, версии библиотек, ядра... А загружать кроме исходника трояна еще и тулчейн по его сборке....