【20171025早】alert(1) to win 练习
本人黑绝楼,自称老黑,男,25岁,曾经在BAT工作过两年,但是一直都是底层人员,整天做重复性工作,甚敢无趣,曾和工作十年之久的同事聊天,发现对方回首过往,生活是寡淡如水,只有机械性工作。旋即老黑毅然决然辞职,现赋闲在家,打算从软件开发工程师转为安全研究,开这个博客记录平生,以飨各位看官。
老黑我无房,无车,无女友,身高一米七七,微胖,为计算机奋斗了四五年,可惜进步甚微,现决心发愤图强,在未来的七八个月里做最后的挣扎,不成功便安心结婚生子,随了父母的心愿。:)
人生处处都是选择,做出正确的选择才能谋取更大的局面。
开篇第一章,2017年10月25日早上7点起床,写了一章小说发到了起点网上,然后开始研究安全,呵呵。
网上安全研究的网站,文章,课题这么多,该将有限的时间用在哪个身上呢?
i春秋,知道创宇技能表,还是直接在补天上挖漏洞?
选择知道创宇的技能表,视频太浪费时间了,文字和实战是首选,视频能不看就不看。
XSS 练习网站
https://alf.nu/alert1
第三题
function escape(s) {s = JSON.stringify(s);return '<script>console.log(' + s + ');</script>';
}
目的是构造可执行alert(1)命令是s字符串,显示到页面是
<html>
<head></head>
<body>
<script>console.log("s")</script>
</body>
</html>
TRY:
1. 输入 ") 打算封闭log的函数,可是s经过了JSON.stringify()特殊处理,输入的 " 变成 \" 无法封闭log函数,打算查看JSON.stringify()有什么可以突破的地方,最后发现没有。
2. 简单粗暴的闭合<script>标签,直接构造新的。输入 </script><script>alert(1)</script>,OK!
回过头仔细查看了下JSON的stringify函数是要对特殊字符进行转义的像 ",\ 等,以便正确读取完整的s字符串,所以第一种尝试是不成功的,显而易见,如果连完整的字符串都读取不完整的话,开发人员早就不使用这种函数了。
第四题
function escape(s) {var url = 'javascript:console.log(' + JSON.stringify(s) + ')';console.log(url);var a = document.createElement('a');a.href = url;document.body.appendChild(a);a.click(); }
TRY:
1. 不能像第三题一样,闭合<script>,输入的内容都会套在可恶的双引号里边,结合外部代码,发现是一个url,通过提前对被转义的 " URL编码,尝试闭合log函数,输入
%22);alert(1)// 尝试成功!
原理:输入的字符串 -> URL编码 -> 到服务器后解析 -> 实现目的
参考:
https://my.oschina.net/heweipo/blog/395884
http://www.cnblogs.com/liuhongfeng/p/5006341.html
http://blog.sina.com.cn/s/blog_95c8f1ac010198j2.html
【20171025早】alert(1) to win 练习相关推荐
- 【20171025中】alert(1) to win 脚本渲染自建
游戏误人生,一下午玩了将近四个小时的三国杀,后悔不已,然后重新拾起xss challenge,突发奇想,自己构建渲染后的html. 从最简单的开始. 自动检测html: <!DOCTYPE ht ...
- alert(1) to win 16
转载于:https://www.cnblogs.com/natian-ws/p/8275470.html
- 网络安全如何学习?(学习路线及资料)
概括来说,网络安全课程的主要内容包括: 安全基本知识 应用加密学 协议层安全 Windows安全(攻击与防御) Unix/Linux安全(攻击与防御) 防火墙技术 入侵监测系统 审计和日志分析 下面分 ...
- ext.js组件的基本操作
MessageBox组件 //Ext.onReady 准备函数 类似于window.onload Ext.onReady(function(){//提示信息 // Ext.MessageBox.ale ...
- ExtJS 组件添加子组件
2019独角兽企业重金招聘Python工程师标准>>> [1 添加子组件] Ext.onReady(function(){//ex002 : 在组件中添加子组件 ,并进行一系列针对于 ...
- 父窗口、子窗口和Silverlight之间的相互调用
啊哈~ 爷爷,爸爸,儿子~ 三代同堂~ 前两天做 silverlight 的东西,主页面打开一个子页面,然后子页面中包含一个 silverlight 应用程序 那难免会涉及到他们三者相互调用的问题 其 ...
- 4、ExtJs——Ext.window.Window
第一个组件:Ext.window.Window.对于组件,也就是Ext最吸引开发者的地方. - xtype:组件的别名 - Hierarchy 层次结构 - Inherited mixins 混入 ...
- 前端安全系列(一):如何防止XSS攻击?
前端安全 随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点.在移动互联网时代,前端人员除了传统的 XSS.CSRF 等安全问题之外,又时常遭遇网络 ...
- jquery iframe 父子互操作
父页面 View Code <html><head><scriptsrc="jquery.js"type="text/javascript& ...
最新文章
- 华为抢购助手_华为MateBook 13轻薄本:出差者的首选,学生党的福音
- markdown数学公式手册
- python中0o10_Python基础10—I/O编程
- dbnetlib sqlserver不存在或拒绝访问_部署IIS+PHP+SQL server环境
- 【设计素材】表格数据形平面海报素材
- Iterables和迭代器
- 42. 确保lessT与operator小于具有相同的语义
- java tcp socket 关闭_JAVA SOCKET和TCP四次挥手
- 使用虚拟机win7安装_STEP7 V5.6
- 竖版1:2500万标准中国地图
- 智能客服搭建(4) - 语音流的分贝计算
- Uniapp设置页面的背景图片
- linux鼠标手势软件,linux 系统中全能的鼠标手势——easystroke
- 沧海的孤塔-chimera
- Windows应用商店0x80131500错误
- 体验论文新神器!AMiner人工智能工具,自动溯源论文来龙去脉
- java项目遇到难题_Java项目遇到的常见问题
- 教你如何快速突破TikTok限流--TK领航社tiktok苹果版安卓版下载教程
- V2V Data Offloading for Cellular Network Based on the SDN Inside MEC Architecture 学习笔记
- C\C++ 输出8位,不足时全补0
热门文章
- ar面部识别_国内手机厂商AR布局报告
- linux 如何获得后缀_Bugku:杂项 linux
- datax导入MySQL报错_导入MySQL方法对比
- 家用光纤猫设备、光纤收发器和光电交换机介绍
- 【渝粤教育】 国家开放大学2020年春季 1190当代中国政治制度 参考试题
- 【渝粤题库】陕西师范大学202101 公共政策学
- php 获取文件最后几行,php获取文件的最后N行数据
- python怎么把数据写进txt_python 如何将数据写入本地txt文本文件的实现方法
- java中线性结构的例子_java数据结构--线性结构
- 还不会子网划分?看这篇文章还远远不够!