SlideShare a Scribd company logo
程序员常见的WEB安全漏洞点苍@淘宝-新业务2010-08-30
0.大纲
1.引子不安全的淘宝,一直被紧盯,经常被攻击影响力 – 宕机、篡改页面
交易– 盗取银行账号、钓鱼攻击
用户 – 登录密码以及cookie/refer/ip隐私2.SQL注入 – 简介定义:攻击者提交恶意SQL并得到执行本质:由于输入检验不充分,导致非法数据被当做SQL来执行特点:很常见,使用数据库的应用多如牛毛多见于小PHP站,采用字符串拼SQL的应用直接攻击服务器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和彩期名得到一个彩期,inttype=123; String title=“123”。 结果:select * from itemwhere 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漏洞http://caipiao.taobao.com/lottery/order/getDcSpInfoAjax.htm?callback=%3Cscript%3Ealert%28%27xss%27%29%3C/script%3E
3.XSS – 危害挂蠕虫、木马、病毒盗取用户的cookie/referer/ip等信息制作钓鱼网站用户被提交恶意数据、被执行恶意操作帮助CSRF,绕过CSRF的token验证
3.XSS – 代码分析<span>$!productName</span><input type="hidden" Name="OrinSearchText" value="$!searchBarView.LastKeyword" id="OrinSearchText_rfs" $disabledFlag /><script>varfromgcn = '$!rundata.Parameters.getString('fromgcn')';</script><span><iframesrc=http://hacker.com></iframe></span><input type="hidden" Name="OrinSearchText" value="" ><iframesrc=http://hacker.com></iframe>< "" id="OrinSearchText_rfs" $disabledFlag /><script>varfromgcn = '';hackerFunction(document.cookie);''; </script>
3.XSS – 防范输入过滤,RichTextXssFilter.filter(input)输出转义,HTML ESCAPE
4.CSRF – 简介Cross Site Request Forgery,即跨站请求伪造,有时也缩写为XSRF定义: 在恶意站点上,促使用户请求有CSRF漏洞的应用的 URL或欺骗性的表单,从而修改用户数据实质:利用session机制,盗用授信用户对应用做一些恶意的GET/POST提交特点:不同于XSS,恶意脚本一定位于跨站服务器攻击授信用户,不直接攻击服务器近年增多,授信用户的贴图、表单提交、页面交互、AJAX调用都可能导致该漏洞
4.CSRF – 实例黑客在服务器端编写恶意脚本,并构造授信操作的URL,例如评论恶意用户回复帖子时候贴图,图片地址指向黑客事先编写的恶意脚本当用户浏览这些帖子时,就会请求该图片,不知觉访问了恶意脚本恶意脚本利用302重定向,根据帖子不同跳转到对应的评论URL用户在不知情情况下发表了评论,帮恶意用户顶贴所以,论坛一般会让用户在评论时输入验证码,来防止类似攻击
4.CSRF – 危害获得管理员权限盗取用户银行卡、信用卡信息授信用户被提交恶意数据、被执行恶意操作
4.CSRF – 防范服务器区分GET/POST,增加攻击难度REFERER校验,补充手段改长授信为短授信时间戳关键流程使用验证码Token验证严防XSS,否则短授信可能被伪造
5.其它漏洞命令行注入文件上传漏洞缓冲区溢出DDoS访问控制漏洞Logic Flaw,逻辑漏洞无限制URL跳转漏洞表单重复提交Struts/Webwork远程命令执行漏洞
6.安全开发流程提高安全开发意识遵守安全编码规范引入WEB安全测试逆向思维,从黑客角度发现潜在的漏洞网络安全 ≠ WEB安全 ≠ XSS ≠ alert
7.黑客攻击思路找漏洞分析产品或开源代码浏览器、操作系统的0day漏洞编写恶意脚本蛊惑用户访问恶意链接,执行恶意脚本完成攻击得到用户隐私拿管理员权限钓鱼网站挂木马
9.安全开发Checklist
10.参考文献SQL INJECTION SQL注入iBATIS使用$和#的一些理解XSS Wikipedia不能忽视的XSS漏洞CSRF WikipediaGoogle GMail E-mail Hijack TechniqueStruts2/XWork < 2.2.0远程执行任意代码漏洞分析及修补Struts2和Webwork远程命令执行漏洞分析

More Related Content

PDF
伺服器端攻擊與防禦III
Taien Wang
 
PDF
Android Taipei 2013 August - Android Apps Security
Taien Wang
 
PDF
淡江大學 - 產品測試+安全性測試+壓力測試
Taien Wang
 
PDF
伺服器端攻擊與防禦II
Taien Wang
 
PDF
使安全成為軟體開發必要部分
Taien Wang
 
PDF
伺服器端攻擊與防禦I
Taien Wang
 
PPTX
資訊安全入門
Tyler Chen
 
PPTX
2017.11.22 OWASP Taiwan Week (Lucas Ko)
Lucas Ko
 
伺服器端攻擊與防禦III
Taien Wang
 
Android Taipei 2013 August - Android Apps Security
Taien Wang
 
淡江大學 - 產品測試+安全性測試+壓力測試
Taien Wang
 
伺服器端攻擊與防禦II
Taien Wang
 
使安全成為軟體開發必要部分
Taien Wang
 
伺服器端攻擊與防禦I
Taien Wang
 
資訊安全入門
Tyler Chen
 
2017.11.22 OWASP Taiwan Week (Lucas Ko)
Lucas Ko
 

What's hot (19)

PDF
網站程式資安白箱與黑箱檢測處理經驗分享
Ying-Chun Cheng
 
PDF
用戶端攻擊與防禦
Taien Wang
 
PDF
HITCON GIRLS: Android 滲透測試介紹 (Elven Liu)
HITCON GIRLS
 
PPTX
資訊安全入門
Tyler Chen
 
PDF
網站系統安全及資料保護設計認知 2019
Justin Lin
 
PPTX
OWASP Top 10 (2013) 正體中文版
Bruce Chen
 
PDF
議題二:Web應用程式安全防護
Nicolas su
 
PPTX
滲透測試 Talk @ Nisra
Orange Tsai
 
PPTX
網頁弱點掃描服務簡報 20120606
Fionsu
 
PDF
基礎網頁程式攻擊檢驗
Taien Wang
 
PPTX
WebConf 2013「Best Practices - The Upload」
Orange Tsai
 
PPTX
OWST - Orange Web Security Toolkit Documentation
Orange Tsai
 
PDF
6.web 安全架构浅谈
Hsiao Tim
 
PPTX
一個微信專案從0到000的效能調教
Bruce Chen
 
PDF
HITCON GIRLS_惡意程式分析介紹_in 成功大學_by Turkey_2016.04.28
Shang Wei Li
 
PPT
渗透测试思路技术与方法
 
PPT
Ccns 網路基礎概論
世平 梁
 
PPTX
.NET Security Application/Web Development - Part I
Chen-Tien Tsai
 
PDF
網站系統安全及資料保護設計認知
Justin Lin
 
網站程式資安白箱與黑箱檢測處理經驗分享
Ying-Chun Cheng
 
用戶端攻擊與防禦
Taien Wang
 
HITCON GIRLS: Android 滲透測試介紹 (Elven Liu)
HITCON GIRLS
 
資訊安全入門
Tyler Chen
 
網站系統安全及資料保護設計認知 2019
Justin Lin
 
OWASP Top 10 (2013) 正體中文版
Bruce Chen
 
議題二:Web應用程式安全防護
Nicolas su
 
滲透測試 Talk @ Nisra
Orange Tsai
 
網頁弱點掃描服務簡報 20120606
Fionsu
 
基礎網頁程式攻擊檢驗
Taien Wang
 
WebConf 2013「Best Practices - The Upload」
Orange Tsai
 
OWST - Orange Web Security Toolkit Documentation
Orange Tsai
 
6.web 安全架构浅谈
Hsiao Tim
 
一個微信專案從0到000的效能調教
Bruce Chen
 
HITCON GIRLS_惡意程式分析介紹_in 成功大學_by Turkey_2016.04.28
Shang Wei Li
 
渗透测试思路技术与方法
 
Ccns 網路基礎概論
世平 梁
 
.NET Security Application/Web Development - Part I
Chen-Tien Tsai
 
網站系統安全及資料保護設計認知
Justin Lin
 
Ad

Similar to 程序员常见的Web安全漏洞 (11)

PPT
第四节课:web安全2.0
Tommy Chang
 
PDF
Php应用程序常见安全问题解析
mysqlops
 
PDF
浅谈前端安全与规范(渔隐)
tbmallf2e
 
PDF
6kbbs vulnerability report
insight-labs
 
PPTX
【反讲 银翘】Web安全
xiaomogu11
 
PPTX
网站离线数据安全分析漫谈 2012cert
ph4nt0m
 
PDF
Web development overview
Wei Sun
 
PDF
深入浅出My sql数据库开发、优化与管理维护 (1)
colderboy17
 
PDF
深入浅出My sql数据库开发、优化与管理维护
colderboy17
 
PPTX
Web开发与运维安全浅见
mysqlops
 
PPTX
[xKungFoo2012]Web Service Hack
pnig0s pnig0s
 
第四节课:web安全2.0
Tommy Chang
 
Php应用程序常见安全问题解析
mysqlops
 
浅谈前端安全与规范(渔隐)
tbmallf2e
 
6kbbs vulnerability report
insight-labs
 
【反讲 银翘】Web安全
xiaomogu11
 
网站离线数据安全分析漫谈 2012cert
ph4nt0m
 
Web development overview
Wei Sun
 
深入浅出My sql数据库开发、优化与管理维护 (1)
colderboy17
 
深入浅出My sql数据库开发、优化与管理维护
colderboy17
 
Web开发与运维安全浅见
mysqlops
 
[xKungFoo2012]Web Service Hack
pnig0s pnig0s
 
Ad

程序员常见的Web安全漏洞