Towards automation of threat modeling based on a semantic model of attack patterns and weaknesses