欢迎来到天天文库
浏览记录
ID:39991977
大小:1.20 MB
页数:24页
时间:2019-07-16
《程序员常见的web安全漏洞》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、程序员常见的WEB安全漏洞点苍@淘宝-新业务2010-08-300.大纲1.引子不安全的淘宝,一直被紧盯,经常被攻击影响力–宕机、篡改页面交易–盗取银行账号、钓鱼攻击用户–登录密码以及cookie/refer/ip隐私2.SQL注入–简介SQL注入攻击也俗称黑客的填空游戏定义:攻击者提交恶意SQL并得到执行本质:由于输入检验不充分,导致非法数据被当做SQL来执行特点:很常见,使用数据库的应用多如牛毛多见于小PHP站,采用字符串拼SQL的应用直接攻击服务器2.SQL注入–危害字符串填空绕过登录鉴权select*from
2、userwherename=‘’or‘1’=‘1’andpw=‘’or‘1’=‘1’执行任意SQL,利用注释,select*fromitemwhreitem=‘’;yoursql--’或整型字段,select*fromitemwhereitem_id=0;yoursql;篡改系统账号alterloginsawithpassword=‘123456’用户隐私外泄select*fromuser系统细节外泄select*fromsys.tables控制操作系统xp_cmdshell“netstopiisadmin”损害硬盘
3、宕机xp_cmdshell“FORMATC:”埋入XSS漏洞insertintocomment(cnt)values(‘’)2.SQL注入–防范避免字符串拼SQL,完全使用参数化查询将单引号字符取代为连续2个单引号字符利用框架的防SQL注入功能2.SQL注入–iBatis1根据彩种ID和彩期名得到一个彩期,inttype=123;Stringtitle=“123”。结果:select*fromitemwheretype=123andtitle=‘123’$不过滤直接文本替换:sel
4、ect*fromitemwheretype=$type$andtitle=‘$title$’#根据变量类型来替换:select*fromitemwheretype=#type#andtitle=#title#尽量使用#,避免使用$2.SQL注入–iBatis2尽量使用#,避免使用$若不能避免$,则带上元数据标识SQL中需要用户提交的ASC、DESC等SQL关键字select*fromuserorderbygmt_create $ordertype:SQLKEYWORD$SQL中需要用户提交的字段名、表名等元数据sel
5、ect*fromuserorderby$orderByColumn:METADATA$2.SQL注入–iBatis3尽量使用#,避免使用$若不能避免$,则带上元数据标识用迭代替换IN关键字中的$intorderStatus={0,1,2,3}Listorders= sqlMap.queryForList(“OrderDAO.findLlOrder",orderStatus);6、lang.Object”>select * fromorderwhereorder_statusin#orderStatus[]#3.XSS–简介Cross-SiteScripting,跨站脚本攻击定义:攻击者在页面里插入恶意脚本,当用户浏览该页时,嵌入其中的恶意代码被执行,从而达到攻击者的特殊目的实质:用户提交的HTML代码未经过滤和转义直接回显特点:攻击授信和未授信用户,不直接攻击服务器很常见
6、lang.Object”>select * fromorderwhereorder_statusin#orderStatus[]#
7、,例如贴图、AJAX回调、富文本(如评论留言)恶意脚本可能位于跨站服务器,但必须用户浏览器执行,最暴力的防范就是禁用JS脚本3.XSS–实例彩票业务AJAX回调导致的XSS漏洞http://caipiao.taobao.com/lottery/order/getDcSpInfoAjax.htm?callback=%3Cscript%3Ealert%28%27xss%27%29%3C/script%3E3.XSS–危害挂蠕虫、木马、病毒盗取用户的cookie/referer/ip等信息制作钓鱼网站用户被提交恶意数据、被
8、执行恶意操作帮助CSRF,绕过CSRF的token验证3.XSS–代码分析$!productName
此文档下载收益归作者所有