Ну например можно использовать стандартный функционал резервного копирования.
Чтобы вирус не затер данные делается просто - у вируса не должно быть доступа к папке с бэкапом.
Т.е бэкап должен делать специальный бэкап юзер, который имеет права на запись в папку бэкапов, а все остальные не должны иметь таких прав.
В результате шифровальщик запущенный от имени пользователя ничего не сможет сделать с бэкапом.
Простейший вариант - создаете юзера для бэкапа, даете ему право на запись в папку бэкапов.
У всех остальных это право отбираете, даже у администраторов.
Более продвинутый вариант - бэкап сервер доступный по сети, вы сбрасываете на шару этого сервера бэкап, а уж встроенное ПО сервера перекладывает его в недоступное по сети хранилище.