网络应用安全技术详解
4
HTTP协议工作过程
❖HTTP 请求(Requests)
▪ 一个HTTP请求包含三个部分:
• 方法,URL,协议/版本(Method-URI-Protocol/Version) • 请求包头(Request headers) • 实体包(Entity body)
❖HTTP 响应(Responses)
❖ Web浏览器
▪ WEB应用的客户端 ▪ 展示网页供用户查看和支持用户操作 ▪ Internet Explorer、Firefox、Opera和Safari等
❖ 可能存在安全漏洞
▪ 基于Cookie的攻击
❖ 可能存在软件配置缺陷
14
WEB协议安全问题
❖ HTTP协议
▪ Hypertext Transfer ol ▪ HTTP/1.1
10
Web应用安全问题原因
❖ Web服务支撑软件 ❖ Web程序 ❖ Web浏览器 ❖ Web协议
11
Web服务支撑软件安全问题
❖ Web服务支撑软件
▪ Apache、IIS、Tomcat、WebSphere和 WebLogic等
▪ 这些服务支撑软件中如果存在安全隐患,则都可能 被攻击者利用,从而影响WEB应用的安全性
分离开的
7
Web服务常见威胁
❖ 网络层面
▪ 拒绝服务、电子欺骗、嗅探
❖ 系统层面
▪ Web服务漏洞、配置错误
❖ 应用层面
▪ 代码缺陷(SQL注入、XSS……) ▪ 信息泄露 ▪ 电子欺骗 ▪ 钓鱼、流程缺陷
8
常见Web应用安全威胁(一)
❖ 注入攻击
▪ Injection ▪ WEB应用程序对用户输入数据的合法性判断不够
网络应用安全技术详解
知识域:网络应用安全
❖ 知识子域:Web安全基础及安全配置
▪ 理解Web工作机制及Web应用安全问题产生的原 因
▪ 了解常见Web应用安全威胁,理解注入攻击和跨 站脚本攻击特点和危害
▪ 了解Web应用程序开发编码安全要点 ▪ 了解IIS和Apache的安全配置要点 ▪ 了解浏览器上网安全威胁和IE安全配置方法
▪ 一个HTTP响应也包含三个部分
• 协议状态代码描叙(Protocol-Status code-Description) • 响应包头(Response headers) • 实体包(Entity body)
5
HTTP协议工作过程
❖ HTTP请求范例:
POST /servlet/default.JSP HTTP/1.1 Accept: text/plain; text/HTML Accept-Language: en-gb Connection: Keep-Alive Host: localhost Referer: http://localhost/ch0/SendDetails.htm User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98) Content-Length: 33 Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip, deflate LastName=Franks&FirstName=Michael
,对用户输入过滤不足 ▪ SQL注入和命令注入
❖ 跨站脚本攻击
▪ Cross Site Scripting,XSS ▪ 恶意攻击者往Web页面里插入恶意代码,当其他
用户浏览该页之时,嵌入其中的恶意代码会被执行 ,从而达到恶意攻击用户的特殊目的
9
常见Web应用安全威胁(二)
❖ 失效的验证和会话管理 ❖ 不安全的对象直接引用 ❖ 跨站请求伪造 ❖ 不安全的配置管理 ❖ 不安全的密码存储 ❖ 错误的访问控制 ❖ 传输层保护不足 ❖ 未经验证的网址重定向 ❖ 不恰当的异常处理 ❖ 拒绝服务攻击
2
Web工作机制
❖ 什么是WEB ▪ 万维网(World Wide Web),是一个由许多 互相链接的超文本文档组成的系统。
❖Web的重要概念
▪ 资源:web系统中对象称为资源 ▪ URI:统一资源标识符,用于标识一个资源(HTML
文档、图像、视频片段、程序) ▪ URL:统一资源定位符(URI的一个子集) ▪ HTTP:超文本传输协议,用于传输资源,使用者
Content-Type: text/HTML
Last-Modified: Mon, 11 Jan 2010 13:23:42
GMT
Content-Length: 112
响应包头和请求包头相似,也
包含一些有用的信息。响应的
实体是HTML那一部分的内容。
Welcome to CISP.
包头和实体也都是被CRLF序列
❖ 可能存在安全漏洞
▪ IIS 5.0超长URL拒绝服务漏洞
❖ 可能存在软件配置缺陷
▪ 存在默认帐号和口令
12
Web程序安全问题
❖ 输入输出处理 ❖ 会话控制 ❖ 文件系统处理 ❖ 用户访问机制 ❖ 日志处理 ❖…
是人开发的就可能 存在安全隐患
WEB应用程序是 程序员开发的
13
WEB浏览器安全问题
❖ 信息泄漏
▪ 明文传输(用户名和口令、向服务器提交的数据)
❖ 弱验证
▪ 简单的认证
❖ 缺乏状态跟踪
▪ 无状态的协议 ▪ Session存在安全隐患
15
Web服务器常见安全漏洞和防范方 法
蠕 虫
不必要端口
杀 软
黑 客
弱口令
防 火 墙
威胁
病
网
其
毒
马
他
系统安全
未装防护软 件
6
HTTP协议工作过程-响应范例
HTTP响应范例:
HTTP/1.1 200 OK Server: Microsoft-IIS/6.0
第一行的响应包头和请求包头 很相似。第一行说明协议是使 用的HTTP1.1,响应请求已成
Date: Mon, 3 Jan 2010 13:13:33 GMT 功(200表示成功),一切已OK。
通过http来获得资源
❖ WEB应用越来越广泛
3
超文本传输协议
❖ 什么是超文本传输协议(HTTP)
▪ 一种通信协议 ▪ 使用超文本标记语言 (HTML) 将资源从服务器传
送到客户端
❖ 超文本传输协议特点
▪ 请求、响应模式 ▪ 协议简单,客户端只需传输请求方法和路径 ▪ 无连接(一个请求一个连接,完成后断开) ▪ 无状态