Web Application Security: A Comprehensive Overview