js杂记文章

js基础
用户输入明文 -> 方法1 -> 发包函数 。。。 -> 加密函数
1.作用域:
改js的问题
js变量生命周期
局部变量在函数执行完毕后销毁
全局变量在页面关闭后销毁
局部变量

	function jb()

		{

			var a = "局部变量"

			return a;

		}
	全局变量 

		var a = "全局变量"

		function qj()

		{

			console.log(a)

		}

		console.log(a)

2.自执行函数 - 在js加载的时候这个函数就能自己运行
加不加!都可以,加!更规范,这个自执行函数也可以叫做 匿名函数

	!(function(){

		console.log(2)

	})()

	

	(function(){

		console.log(3)

	})()

3.内部函数如何外部调用?

	var jm_;

	!(function(){

		function jm(){

			console.log("加密成功")

		}

		jm_ = jm;

	})()

	jm_();

4.浏览器环境
脱离浏览器 在外部不能直接调用的
window 是一个全局变量 浏览器提供的
(浏览器环境,引擎的环境(js虚拟机,html渲染环境),自己写的代码)

location 

host 主机名

href 网址

5.html渲染环境
document 全局变量 js引擎自带(v8)

补头 - 补齐缺失的环境

主要补齐 事件 点击事件 滑动事件 (滑块)

奇葩的网站 加密利用了我们的 提交按钮(submit) 菠菜网站一般喜欢用

document.write+“”

document.write.toString()

document.getElementById

当用户点击鼠标时 登录

当网页已经加载时 浏览器指纹(检测你是不是用一个用户)

收集你是否是浏览器环境

当图像已加载时 浏览器指纹 滑块图片还原

当鼠标移动到元素上时 浏览器指纹 无感验证

当输入字段被改变时

当提交 HTML 表单时

当用户触发按键时
document.createElement

6.插件环境(不需要补齐)

QQ sso   unicode 字符

ua

ip
代码:

	<form name="myForm" action="demo_form.php" onsubmit="return validateForm()" method="post">

	名字: <input type="text" name="fname">

	<input type="submit" value="提交">

	</form>

知识点:

抓到包了,在js中没有找到一些断点,断点断不到

就是在他提交的地方触发的是 onsubmit 的 validateForm() 这个表单里面

8.逆向 - 加密

加密特征:

	32位  16位   大概率是 md5

	40位    大概率是 sha1

	

搜索参数得到的js名字存在  Axios vue react jq  可以先忽略(经验)

	

调试:

	stringify     对象转json字符串()

	

js写法

	(  前面的别管他怎么写 大部分都是个方法

	() 之间的就是参数



   小知识点:

	js 的运行顺序 不一定是js文件的编写顺序

		开始的位置 解析

			自执行方法   !function(){}()

			变量的定义   var xx;

			赋值语句     a = 1

			方法的调用   xxx()



反调试

	debugger(绕过)

		1. 在 debugger 右键 -> Never pause here 选择这个就可以过了

		2. 使用抓包工具
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值