Securing software systems by preventing information leaks