Слабое место для программной части сайта - возможные уязвимости кода. Справиться с ними не так просто, так что не стоит пренебрегать возможностями проверки вручную написанных скриптов специальными сервисами и обновлениями системы управления контентом. Также для безопасности программной части нужно корректно настроить права доступа к файлам и скриптам, запретить исполнение скриптов в хранилище загруженных файлов и защитить админпанель от несанкционированного входа.
Также при использовании наиболее распространенных систем управления сайтом следует своевременно обновлять CMS до последней версии. Кстати, в открытом доступе в сети можно найти так называемые "публичные уязвимости", ознакомившись с которыми можно принять меры для устранения таких уязвимостей.