Modern development techniques relies a lot on reusing existing open source code downloaded from the internet to speed up development. This creates the situation where a popular framework, library or tool gets used all over the place, creating a 'perfect storm' when it turns out to have a security issue. Also lots of the code in "your app" was actually written by unknown programmers on the internet.