Detecting and Removing Web Application Vulnerabilities with Static Analysis and Data Mining