网络与信息安全教程 第十一讲Web安全 段云所副教授 北京大学计算机系 2001/5/1北京大学
第十一讲 Web安全 网络与信息安全教程 网络与信息安全教程 段云所 副教授 段云所 副教授 北京大学计算机系 2001/5/11 北京大学
Web的结构(bs模式) 数据库 中间动态 生成器 浏览器 应用 server browser
Web的结构(b/s模式 浏览器 中间动态 生成器 应用 数据库 browser server
Web开发环境 e CGI ●ASP e Java
CGI ASP Java Web开发环境
CG安全威胁 非正常的表单数据 上传表单数据可能不是预期的: 选项错误、大于最大长度、字段不符 路径数据错误 利用PATH_NFO变量,例如在以下源代码中提交不同路径将导致不同结果: echo File echo Here is the requested fileIn' cat SPATH INFO echo <HTML Url:http:/www.server.com/chi-bin/fool.sh/public/faq.txtftEnfAq.txt URL:http:/www.server.com/chi-bin/fool.sh/etc/passwd打印passwd文件
非正常的表单数据 上传表单数据可能不是预期的 选项错误 大于最大长度 字段不符 路径数据错误 利用PATH_INFO变量,例如在以下源代码中提交不同路径将导致不同结果 echo “File” echo “ Here is the requested file\n” cat $PATH_INFO” echo “” URL: http:/www.server.com/chi-bin/fool.sh/public/faq.txt 打印faq.txt URL: http:/www.server.com/chi-bin/fool.sh/etc/passwd 打印passwd文件 CGI安全威胁
CG的安全威胁 0字节问题 Parse Suser input Database=user input. db Open(FILe" ); 提交etc/passwd0时就可能打开 passwd 处理文件名 分号:命令分隔 目录分割 当前目录 :上级目录 处理HTML 处理外部进程 处理内部函数
0字节问题 Parse $user_input $database=“user_input.db”; Open(FILE”); 提交/etc /passwd\0 时就可能打开passwd 处理文件名 分号 命令分隔 / 目录分割 ./ 当前目录 ../ 上级目录 处理HTML 处理外部进程 处理内部函数 CGI的安全威胁
ASP的安全威胁 泄露源代码 httplwwwsomehostcomsomeaspdata http:www.somehost.com/some.asp&2e http://www.somehost.com/some.asp http://wwwsomehostcom/some%2ea41sp http:/wwwsomehostcom/some%2e%
ASP的安全威胁 泄露源代码 http://www.somehost.com/some.asp::$DATA http://www.somehost.com/some.asp&2e http://www.somehost.com/some.asp http://www.somehost.com/some%2e@41sp http://www.somehost.com/some%2e%asp …
ASP的安全威胁 Filesystemobject 文件操作可通过VB的 FileSystemObject,执行 例:查看文件的ASP源码调用格式:M/(a的文件名): Response. Context Type="text/plain file=Request Query String(file) set fsFilesys-=CreateeObiect(Scripting FileSystemObject) set tsCoffee-fs Filesys. Open Text File(file) Response. Write tsCoffee Readall ts Coffee. Close set fs Filesys=Nothing set fs Filesys=Nothing
ASP的安全威胁 FileSystemObiect 文件操作可通过VB的FileSystemObiect来执行 例 查看文件的ASP源码(调用格式 http://xxxx/cat.asp?file=文件名
ASP的安全威胁 数据库密码验证 sql="select* from user where username"&username& and pass-& pass&" sql="select* from user where username- "hacker"or I=1& and pass="&pass& 包含文件inc
ASP的安全威胁 数据库密码验证 sql=“select * from user where username=“”&username&””and pass=“”& pass&”” sql=“select * from user where username=“”hacker” or ‘1’=1 & ”and pass=“”& pass&”” 包含文件 .inc
Cookies的安全性 Cookies的作用:浏览状态记忆 危害:留下痕迹 ActiveX的安全性 作用:本地编译可执行2进制代码,用于分发软件 危害:即使经过签名仍然有可能破坏
Cookies Cookies的安全性 Cookies的作用 浏览状态记忆 危害 留下痕迹 ActiveX ActiveX的安全性 作用 本地编译可执行2进制代码 用于分发软件 危害 即使经过签名仍然有可能破坏
Web安全性威胁与对策 威胁 后果 对策 完整性修改用户的数据 信息丢失 加密校验和 特洛伊木马浏览器 机器暴露 修改内存 其它所有威胁的弱点 修改传输的数据流 保密性网上偷听 丢失信息 加密、Web代理 从服务器处偷信息 丢失隐私 从客户端处偷信息 关于网络配置的信息 关于客户连接的信息 业务否决-中断用户连接 中断 难以防范 用伪造的威胁淹没服务器骚扰 塞满硬盘或内存 阻止用户完成正常工作 攻击DNS隔离服务器 认证鉴别冒充合法用户 以假乱真 加密技术 数据伪造 误信错误信息
威胁 后果 对策 完整性 修改用户的数据 特洛伊木马浏览器 修改内存 修改传输的数据流 信息丢失 机器暴露 其它所有威胁的弱点 加密校验和 保密性 网上偷听 从服务器处偷信息 从客户端处偷信息 关于网络配置的信息 关于客户连接的信息 丢失信息 丢失隐私 加密 Web 代理 业务否决 -中断用户连接 -用伪造的威胁淹没服务器 塞满硬盘或内存 攻击 DNS 隔离服务器 中断 骚扰 阻止用户完成正常工作 难以防范 认 证鉴别 冒充合法用户 数据伪造 以假乱真 误信错误信息 加密技术 Web安全性威胁与对策 安全性威胁与对策