目录 项目1Web应用安全测试防范技术1 任务1.1Web应用程序安全与风险2 子任务1.1.1Web应用程序的发展历程与常见功能2 子任务1.1.2Web服务器写权限刺探4 子任务1.1.3Web核心安全问题及因素10 子任务1.1.4Web服务器及常用攻击技术12 子任务1.1.5Web应用剖析自动化运维16 子任务1.1.6Web应用程序安全的未来20 任务1.2Web安全实践——HTTP架构分析23 子任务1.2.1HTTP解析23 子任务1.2.2HTTP消息头注入26 子任务1.2.3HTTP Cookie数据29 子任务1.2.4截取HTTP请求33 子任务1.2.5编码与规范化漏洞38 任务1.3Web服务器应用程序规范40 子任务1.3.1攻击浏览器扩展的方法40 子任务1.3.2Web核心安全同源策略42 子任务1.3.3Web应用运行日志44 子任务1.3.4恶意网页及其检测技术50 子任务1.3.5Web服务器信息泄露52 子任务1.3.6Web服务器版本信息收集54 子任务1.3.7Web服务器端口扫描56 项目2Web信息漏洞与探测扫描技术60 任务2.1Google Hack60 子任务2.1.1搜索子域名60 子任务2.1.2搜索Web信息64任务2.2Nmap体验67 子任务2.2.1安装Nmap67 子任务2.2.2测主机信息71 子任务2.2.3Nmap脚本引擎75 任务2.3Burp Suite81 任务2.4AWVS89 任务2.5AppScan106 项目3Web站点漏洞攻击及注入技术118 任务3.1SQL注入攻击技术118 子任务3.1.1数字型注入123 子任务3.1.2字符型注入127 子任务3.1.3Access 的 SQL 注入128 子任务3.1.4MySQL的 SQL 注入135 子任务3.1.5Web注入工具144 子任务3.1.6SQL注入防御155 任务3.2跨站脚本(XSS)攻击156 子任务3.2.1XSS攻击的分类156 子任务3.2.2反射型XSS攻击159 子任务3.2.3存储型XSS攻击164 子任务3.2.4DOM型XSS攻击168 子任务3.2.5XSS攻击漏洞的利用171 子任务3.2.6XSS攻击的防御177 任务3.3跨站点请求伪造(CSRF)183 子任务3.3.1跨站点请求伪造简介183 子任务3.3.2CSRF 攻击场景(POST方式)188 子任务3.3.3CSRF 攻击场景(GET方式)191 子任务3.3.4浏览器Cookie机制193 子任务3.3.5CSRF攻击的防御197 任务3.4文件包含漏洞198 子任务3.4.1文件包含漏洞简介198 子任务3.4.2本地文件包含漏洞200 子任务3.4.3远程文件包含漏洞204 子任务3.4.4文件包含漏洞的防御208 任务3.5命令执行漏洞208 子任务3.5.1命令执行漏洞简介208 子任务3.5.2命令执行漏洞的利用211 子任务3.5.3命令执行漏洞的防御215 任务3.6上传漏洞219 子任务3.6.1上传漏洞简介219 子任务3.6.2客户端验证绕过222 子任务3.6.3服务端验证绕过225 项目4Web服务器端组件漏洞测试攻击与防御技术233 任务4.1文件包含漏洞233 子任务4.1.1本地文件包含漏洞233 子任务4.1.2远程文件包含漏洞235 子任务4.1.3文件包含漏洞修复237 任务4.2Web服务器漏洞240 子任务4.2.1IIS解析漏洞241 子任务4.2.2Apache解析漏洞243 子任务4.2.3PHP CGI解析漏洞244 任务4.3文件上传漏洞246 子任务4.3.1客户端检测绕过246 子任务4.3.2MIME类型检测绕过248 子任务4.3.3文件扩展名检测绕过250 子任务4.3.4内容检测绕过252 项目5Web应用程序客户端弱口令攻击与防御技术254 任务5.1暴力破解254 子任务5.1.1暴力破解简介254 子任务5.1.2暴力破解工具Hydra262 子任务5.1.3暴力破解工具Medusa270 子任务5.1.4密码工具软件John272 任务5.2Webshell提权279 子任务5.2.1Webshell提权简介279 子任务5.2.2Webshell提权的方法282 参考文献290