1. A method for protecting a computer system from software vulnerabilities, the method comprising: detecting, by a processor of the computer system, an execution of a software application; determining whether the detected application includes one or more vulnerabilities affecting at least one of a security of the application, security of data used by the application, and security of an operating system of the computer system; upon detecting at least one vulnerability, analyzing the application to identify typical actions performed by the application and checking for application updates or security patches for eliminating the identified vulnerability; configuring restriction rules based on the identified typical actions to eliminate the identified vulnerability, comprising creating a set of restriction rules to allow the application to perform typical actions and block atypical actions, and modifying the set of restriction rules by fine-tuning the restriction rules that have been created or creating additional restriction rules associated with the identified vulnerability upon detecting each remaining known vulnerability associated with the application having a defined danger level; and controlling the execution of the application using the created or modified restriction rules.