Typically, a piece of software gets developed after going through the entire SDLC and then gets publicly released. We commonly assume that it will meet all the functional requirements and be secure against potential threats. However, it might be that some functionality in the software is mistakenly broken, allowing attackers to exploit a potential vulnerability. Now, once the exact problem is known, the vendor works on patching the affected software component as quickly as possible.
Once the patch is ready, it is distributed to all the customers through an official channel. However, customers need to ensure that the right and latest patch is applied on their systems. Failing to do so will leave the systems vulnerable to severe threats. This creates a need for a systematic approach to managing patches.
The most commonly found vulnerabilities are a result of missing...