请咱们先调查下面这条JavaScript句子:
̀̀̀̀̀́́́́́̂̂̂̂̂̃̃̃̃̃̄̄̄̄̄̅̅̅̅̅̆̆̆̆̆̇̇̇̇̇̈̈̈̈̈̉̉̉̉̉̊̊̊̊̊ͅͅͅͅͅͅͅͅͅͅͅalert(̋̋̋̋̋̌̌̌̌̌̍̍̍̍̍̎̎̎̎̎̏̏̏̏̏ͅͅͅͅͅ1̐̐̐̐̐̑̑̑̑̑̒̒̒̒̒̓̓̓̓̓̔̔̔̔̔ͅͅͅͅͅ)̡̡̡̡̡̢̢̢̢̢̛̛̛̛̛̖̖̖̖̖̗̗̗̗̗̘̘̘̘̘̙̙̙̙̙̜̜̜̜̜̝̝̝̝̝̞̞̞̞̞̟̟̟̟̟̠̠̠̠̠̣̕̕̕̕̕̚̚̚̚̚ͅͅͅͅͅͅͅͅͅͅͅͅͅͅͅ
写在前面的话
当Twitter宣告将推文字符约束从140提升到280之后,我就想弄清楚在这种新的字符约束下,怎么运用Unicode字符来“搞工作”。我测验了某些特别字符,并在Twitter上引起了一些显现过错,即所谓的ZalgoScript。此刻我就想知道怎么自动化地去辨认这些字符,由于你无法经过查看页面DOM树结构来发现某些字符的特别行为,咱们需求截图才干知道浏览器所要出现的视图。我一开始运用的是JavaScript和canvas技能来进行截图,但生成的图片并不匹配浏览器中真实出现的画面。所以我需求其他的办法,Headless Chrome便是更佳的挑选。我在这里运用了puppeteer,这是一个Node *** 模块,答应咱们操控Headless Chrome并获取截图。
生成字符
为了生成Zalgo字符,你能够重复运用单个字符,或许运用两个字符并重复第二个字符。下面的码点能够经过自我重复来发生视觉作用,它们大多都是Unicode兼并字符:
834,1425,1427,1430,1434,1435,1442,1443,1444,1445,1446,1447,1450,1453,1557,1623,1626,3633,3636,3637,3638,3639,3640,3641,3642,3655,3656,3657,3658,3659,3660,3661,3662
比如说,下面的JavaScript代码能够运用上面的某些字符来生成十分丑陋的文本:
script>document.write(String.fromCharCode(834).repeat(20))script>
得到的成果为: ͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂͂
风趣的是,假如兼并运用多个字符的话,还能够发生不同的作用。比如说,用字符311和844兼并之后,相同的技能会发生如下的作用:
script>document.write(String.fromCharCode(311)+String.fromCharCode(844).repeat(20))script>
得到的成果为:ķ͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌͌
构建含糊测验器
含糊测验器的构建其实十分简略,首要咱们需求一个用来出现字符作用的Web页面,然后经过CSS来添加页面宽度,并让正常字符平移到页面右侧,这样咱们就能够检测页面的左边、顶部和底部了,我把需求测验的div元素放在了页面中心。
下图为字符“a”和“b”出现在fuzzer中的作用,为了让咱们更好地了解fuzzer的处理进程,咱们把fuzzer查看的当地在图中进行了标示:
而上述代码所出现的字符ķ和~的码点为311和834,fuzzer也记载下了这两个字符所生成的风趣的视图作用:
style>
.parent{
position: absolute;
height: 50%;
width: 50%;
top: 50%;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}
.fuzz{
height: 300px;
width:5000px;
position: relative;
left:50%;
top: 50%;
transform: translateY(-50%);
}
style>
head>
body>
divclass="cd11-a4d7-922a-354a parent">
div class="a4d7-922a-354a-feb4 fuzz"id="test">div>
div>
script>
varchars = location.search.slice(1).split(',');
if(chars.length> 1) {
document.getElementById('test').innerHTML =String.fromCharCode(chars[0])+String.fromCharCode(chars[1]).repeat(100);
[1] [2] [3] 黑客接单网
HTML5 安全问题解析 标签: html html5 web安全 本文参阅: w3school:html5相关基础知识(w3school.com.cn)...
本文我得先从我最近参加的一个安全检测项目开端谈起,本次的客户是一家企业,不得不说,本次咱们的客户的安全防护做得非常好。他们的安全运营中心(SOC)装备了许多先进的内部反常检测东西以及坚强的作业呼应团队...
前段时间做了南京邮电大学网络攻防渠道上面的标题,写了一个writeup之后,还有必要总结一下。因为做的标题都是web类型的,一切的标题都是运用PHP来写的,所以许多标题并没有调查到传统的如SQL注入...
JSON Hijacking缝隙的具体使用,有点相似与CSRF,不过原理使用方法不同,在这边文章我侧重解说json跨域绑架的使用环境建立与方法。 0×01缝隙的发掘 一般发掘的过程中,burpsuit...
SQL注入又称hacking之母,是形成网络世界巨大损失而臭名远扬的缝隙之一,研究人员现已发布了许多关于不同SQL服务的不同进犯技巧相关文章。关于MSSQL,MySQL和ORACLE数据库来说,SQL...
关于一张网页,咱们往往期望它是结构杰出,内容明晰的,这样搜索引擎才干精确地认知它。 而反过来,又有一些情形,咱们不期望内容能被容易获取,比方说电商网站的交易额,教育网站的标题等。由于这些内容,往往是...