发信人: williamlong(蓝色月光) 
整理人: williamlong(2002-03-13 16:41:52), 站内信件
 | 
 
 
跨站脚本执行漏洞讲义
 
 【前言】
 漏洞定义
 正规定义:
 个人理解:
 	形式:CGI漏洞
 方式:利用别人站点攻击,
 效果:执行HTML代码和脚本
 	举一个例子,如修改IE标题
 	特点:
 1.	隐藏身份
 2.	被动式攻击
 	
 漏洞起源
 Cert安全公告(2002-02)正式提出
 国外1997年即有人在SF上发布此类漏洞
 国内1998年经常看到关于炸聊天室,留言板的脚本也属于此类漏洞,不过方法比较单一,危害也仅限制使页面变形
 
 漏洞发展及原因
 SF	1997		1
 2000	2
 2001	22
 2002	15(2个月)
 安全意识,攻击难度,CGI安全(跨站脚本执行漏洞是CGI安全的一种)
 
 【漏洞成因】
 CGI程序没有过滤或转换用户提交的HTML代码
 	
 【漏洞危害】
 获取其他用户Cookie中的敏感数据
 	HTTP无状态协议,产生server端session和client端cookie
 	一般情况下,Cookie只能被设置它的站点访问,即相同域名
 document对象 + cookie属性
 重定向到一个可以获取传递变量的CGI程序
 		
 屏蔽页面特定信息
 	HTML特点
 	举例
 <a href=”
 “>haha
 	
 伪造页面信息
 	原理同上
 	
 拒绝服务攻击
 	打开无穷窗口等
 	
 突破外网内网不同安全设置
 	举例
 		攻击者A
 		被攻击者B
 		存在CSS漏洞服务器C
 		后者在同一内网
 		A修改B的IE标题
 	B在内网和外网设置的安全级别不同
 Internet	安全级别较高
 Intranet	安全级别较低
 	
 与其它漏洞结合,修改系统设置,查看系统文件,执行系统命令等
 	IE执行任意命令
 	Eml未经提示执行任意命令
 		
 【利用方式】
 URL编码
 	%2E
 隐藏在其它对象之下
 	按钮
 嵌入页面中
 	iframe
 合理利用事件
 	onerror
 
 【实例解析】
 http://www.securityfocus.com
 firstname	<img src=1
 lastname	onerror = alert(document.cookie) >
 bugtraq maillist	<a href=”email”>firstname lastname
 
 http://www.5460.net
 	no tips
 	
 http://chat.263.net
 	直接<h1>无效
 	//haha
 	//<h1>
 	
 http://bingle.pku.edu.cn
 	改了
 	以前	“><h1>haha
 	现在 <h1>haha
 	
 bbs2www
 	no tips
 	
 tomcat
 	referrer to newsgroup
 	
 resin
 referrer to newsgroup
 	
 Microsoft
 	referrer to bugtraq
 	
 Intel
 	referrer to bugtraq
 	
 【解决方法】
 程序员:
 1.	过滤或转换用户提交数据中的HTML代码
 2.	限制用户提交数据的长度
 
 用户:
 1.	不要轻易访问别人给你的链接
 2.	禁止浏览器运行JavaScript和ActiveX代码
 
 
 直接显示
 存储到数据库后显示
 
 
 
  ----
      | 
 
 
 |