Combating Advanced Persistent Threats: Challenges and Solutions