JS正则和点击劫持代码(第十二天 9.27)
JS正则
正则表达式:用单个字符串描述或者匹配符合特定语句规则的字符串
一些字符序列组合在一起,可以简单也可以复杂模式的,可以去搜索,可以去替换
语法:/表达式/修饰符(可选)
var para=/icq/I; //不区分大小写
使用search( ),replace( ) 去和正则表达式结合使用。
var str="I'm a Hacker";
var n=str.search(/hacker/i); //匹配的字符串的索引值
修饰符:i忽略大小写 g全局匹配(查找所有的匹配) m多行匹配
正则表达式中常用的模式
[abc]匹配adc中任意一个字符
[0-9]匹配0-9之间任意一个数字
(x|y)查找任意以|分割的选项
元字符:有特殊含义的字符
\d 表示数字
\s 空白字符
\b 匹配单词边界
\uXXXX uincode字符 X是十六进制的
量词:
n+ 至少匹配一个n
n* 匹配0个或多个n
n? 匹配0个或一个n
var pa=new RegExp(); //该对象定义属性和方式的正则表达式
test()它是正则表达式的方法 var para=”/test/i”;para.test(完整的原始的字符),检测字符串中是否有我们想要的结果,如果找到返回true,找不到返回flace,test()和new RegExp()结合去使用。
<script type="text/javascript"> var pa=new RegExp("o");//实例化的过程、new对象的过程 document.write( pa.test("test i pentest")); </script>
exec()该函数返回一个数组,其中存放匹配的结果(第一个)
JS错误处理
try{
//异常的抛出,可能要出问题的代码,写在这里
}catch(e){
//异常的处理,针对跑出来的问题,需要怎么处理,对应
的代码写在这里
}finally{
//结束处理,不管是否异常,或者异常怎么处理,此处代码均要执行
}
<meta charset="utf-8"> <script type="text/javascript"> var txt=""; function message(){ try{ adddlert("welcome!!"); } catch(e){ txt='有错误。 \n\n'; txt+='描述:'+e.message+'\n\n'; txt+="点击确定。 \n\n"; alert(txt); } } </script> <input type="button" name="bu" value="点我" onclick="message()">
throw 语句允许我们创建自定义错误
throw 自定义的异常信息
注意:catch(e){}中的e就是用户自定义的错误,不需要使用e.message
JS操作表单
var date=document.forms["myform"]["myname"].value;
//获取名称为myform的表单,然后操作名称为myname的输入框
用JS写一个文件,页面有可视的图片,单机之后被劫持到其他网站
<body>
<img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1568885634487&di=2e24ecd15d69cf946c736a2a0d9e6f5c&imgtype=0&src=http%3A%2F%2Fphotocdn.sohu.com%2F20160206%2Fmp58277588_1454729539175_1_th.jpeg" height="100" width="200"> <a href="http://www.baidu.com" target="_blank" style="position: absolute; z-index: 2147483647; top:13.3333px; left:0px; cursor:default; opacity:0; display:block !important;">
<div style="width: 980px; height: 1151px;"></div>
</a>
</body>
JS正则和点击劫持代码(第十二天 9.27)的更多相关文章
- JS 正则查找与替换
JS正则查找与替换 一.前提/背景 今天遇到个问题,需要替换字符串中部分字符,这些字符相对整个字符串而言,与其他子字符串类似,无法单独提出:重要的是,该字符串是动态的生成的,就像我们日常看到的网页Ur ...
- 网页中嵌入可以点击“运行代码”执行html/css/js代码
html代码 <textarea name="textarea" cols="60" rows="10" id="rn01& ...
- js正则实现从一段复杂html代码字符串中匹配并处理特定信息
js正则实现从一段复杂html代码字符串中匹配并处理特定信息 问题: 现在要从一个复杂的html代码字符串(包含各种html标签,数字.中文等信息)中找到某一段特别的信息(被一对“|”包裹着),并对他 ...
- Js 正则限制只能输入数字或中文的代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 撸一个JS正则小工具
写完正则在浏览器上检测自己写得对不对实在是不方便,于是就撸了一个JS正则小demo出来. demo demo展示 项目地址 代码部分 首先把布局样式先写好. <!DOCTYPE html> ...
- XSS学习笔记(一个)-点击劫持
所谓XSS这个场景被触发XSS地方,在大多数情况下,攻击者被嵌入在网页中(问题)该恶意脚本(Cross site Scripting),这里的攻击始终触发浏览器端,攻击的者的目的.一般都是获取用户的C ...
- 点击劫持漏洞之理解 python打造一个挖掘点击劫持漏洞的脚本
前言: 放假了,上个星期刚刚学习完点击劫持漏洞.没来的及写笔记,今天放学总结了一下 并写了一个检测点击劫持的脚本.点击劫持脚本说一下哈.= =原本是打算把网站源码 中的js也爬出来将一些防御的代码匹配 ...
- Cookie中设置了 HttpOnly,Secure 属性,有效的防止XSS攻击,X-Frame-Options 响应头避免点击劫持
属性介绍: 1) secure属性当设置为true时,表示创建的 Cookie 会被以安全的形式向服务器传输(ssl),即 只能在 HTTPS 连接中被浏览器传递到服务器端进行会话验证, 如果是 HT ...
- 点击劫持漏洞解决( Clickjacking: X-Frame-Options header missing)
点击劫持漏洞 X-Frame-Options HTTP 响应头, 可以指示浏览器是否应该加载一个 iframe 中的页面. 网站可以通过设置 X-Frame-Options 阻止站点内的页面被其他页面 ...
随机推荐
- 第1节 kafka消息队列:10、flume与kafka的整合使用
11.flume与kafka的整合 实现flume监控某个目录下面的所有文件,然后将文件收集发送到kafka消息系统中 第一步:flume下载地址 http://archive.cloudera.co ...
- Numpy与List之间的转换
说明:在做NLP的时候,经常需要查看当前数组数据的维度,也就是data.shape,而List是没有这个属性的,因此需要先将其转换成Numpy,以下为两者户想转换的方法 List转Numpy:nump ...
- Android程序的入口点是什么,不是Main()吗
很多初入Android开发的网页可能不知道Android程序的入口点是什么,不是main()吗,当然我相信回复onCreate的在字面上不算错,但是你们想的是Activity中的onCreate 方法 ...
- Oracle 修改 提交后 回退
1. -- 查询你执行update 语句之前的数据 精确到什么时间 select * from 表名 as of timestamp to_timestamp('2017-07-21 17:16:38 ...
- C++编程学习(十一) 指针和引用的区别
1.指针有自己的一块空间,而引用只是一个别名: 2.使用sizeof看一个指针的大小是4,而引用则是被引用对象的大小: 3.指针可以被初始化为NULL,而引用必须被初始化且必须是一个已有对象 的引用: ...
- ThinkCMF框架上的任意内容包含漏洞
一.背景 ThinkCMF是一款基于PHP+MYSQL开发的中文内容管理框架,底层采用ThinkPHP3.2.3构建. ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据 ...
- Windows使用Nexus搭建Maven私服
简介 Maven私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件,有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库,否则,私服请求外部的 ...
- springboot学习3事务控制
springboot学习3事务控制 spring的事务控制本质上是通过aop实现的. 在springboot中使用时,可以通过注解@Transactional进行类或者方法级别的事务控制,也可以自己通 ...
- java中数组输出的方式
方式1:遍历输出 public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 } ...
- 006.CI4框架CodeIgniter, 加载框架的helper辅助类,调用helper类中的各种函数
01. CI4框架作为一个很成熟的框架,给我们提供了很多helper辅助类,我们在代码中可以很方便的使用,如下所示,我们在Controllers中调用Cookies类的set_cookie函数 < ...