Securing Modern Software