程序员常见WEB安全漏洞.pptx

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序员常见的WEB安全漏洞 点苍@淘宝-新业务 2010-08-30 0.大纲 1.引子 不安全的淘宝,一直被紧盯,经常被攻击 影响力 – 宕机、篡改页面 交易 – 盗取银行账号、钓鱼攻击 用户 – 登录密码以及cookie/refer/ip隐私 2.SQL注入 – 简介 SQL注入攻击也俗称黑客的填空游戏 定义:攻击者提交恶意SQL并得到执行 本质:由于输入检验不充分,导致非法数据被当做SQL来执行 特点: 很常见,使用数据库的应用多如牛毛 多见于小PHP站,采用字符串拼SQL的应用 直接攻击服务器 2.SQL注入 – 危害 字符串填空 绕过登录鉴权 select * from user where name=‘’ or ‘1’=‘1’ and pw=‘’ or ‘1’=‘1’ 执行任意SQL,利用注释,select * from item whre item=‘’;your sql--’ 或整型字段,select * from item where item_id=0;your sql; 篡改系统账号 alter login sa with password=‘123456’ 用户隐私外泄 select * from user 系统细节外泄 select * from sys.tables 控制操作系统 xp_cmdshell “net stop iisadmin” 损害硬盘宕机 xp_cmdshell “FORMAT C:” 埋入XSS漏洞 insert into comment(cnt) values(‘script…/script’) 2.SQL注入 – 防范 避免字符串拼SQL,完全使用参数化查询 将单引号字符取代为连续2个单引号字符 利用框架的防SQL注入功能 2.SQL注入 – iBatis 1 根据彩种ID和彩期名得到一个彩期, int type=123; String title=“123”。 结果: select * from item where type=123 and title=‘123’ $不过滤直接文本替换: select * from item where type=$type$ and title=‘$title$’ #根据变量类型来替换: select * from item where type=#type# and title=#title# 尽量使用#,避免使用$ 2.SQL注入 – iBatis 2 尽量使用#,避免使用$ 若不能避免$,则带上元数据标识 SQL中需要用户提交的ASC、DESC等SQL关键字 select * from user order by gmt_create  $ordertype:SQLKEYWORD$ SQL中需要用户提交的字段名、表名等元数据 select * from user order by $orderByColumn:METADATA$ 2.SQL注入 – iBatis 3 尽量使用#,避免使用$ 若不能避免$,则带上元数据标识 用迭代替换IN关键字中的$ int orderStatus = {0,1,2,3}                   List orders = sqlMap.queryForList(“OrderDAO.findLlOrder,  orderStatus );     select id=“findOrder” parameterClass=“java.lang.Array” resultClass=“java.lang.Object”  select * from order where order_status in            iterate open=“(“ close=“)” conjunction=“,”               #orderStatus[]#           /iterate       /select    3.XSS – 简介 Cross-Site Scripting,跨站脚本攻击 定义:攻击者在页面里插入恶意脚本,当用户浏览该页时,嵌入其中的恶意代码被执行,从而达到攻击者的特殊目的 实质:用户提交的HTML代码未经过滤和转义直接回显 特点: 攻击授信和未授信用户,不直接攻击服务器 很常见,例如贴图、 AJAX回调、富文本(如评论留言) 恶意脚本可能位于跨站服务器,但必须用户浏览器执行,最暴力的防范就是禁用JS脚本 3.XSS – 实例 彩票业务AJAX回调导致的XSS漏洞/lottery/order/getDcSpInfoAjax.htm?callback=%3Cscript%3

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档