js逆向笔记
1.nodejs运行js的时候
navigator如果找不到可以可设置为空对象
var navigator={};
2.使用nodejs如果window对象找不到的时候
可以使用jsdom模块
3.顶层代码调用的对象的this
浏览器里表示window,nodejs中表示object
4.以下获取属性的两种方式
obj.x //写死代码里
obj["x"] //可以动态调用属性,[]内是字符串
5.xhr相关
var xhr = new XMLHttpRequest(); //创建xhr对象
xhr.open("GET", url, true); //请求数据 用GET方法 异步获取
xhr.onreadystatechange = function() { //一个事件可以获取请求之后的东西
if (xhr.readyState == 4 && xhr.status == 200) {
console.log(xhr.responseText);
}
};
6. 在js中使用Function可以实例化函数对象,也就是说在js中函数和普通对象一样。
函数是Function的实例
语法:
new Function(arg1, arg2........argN, body);
1,Function中的参数全部是字符串。
2,构造函数的作用是将参数连接起来构成函数。
* 如果参数只有一个即是表示函数体。
* 如果参数多个,最后一个为函数体,前面的全是表示函数参数。
* 如果没有参数,即创建空函数。
以下两种创建函数示例的方法是一样的
function foo(num) {
console.log(num)
}
等价于
var func = new Function("num","console.log(num);"); //参数都是字符串,最后一个参数是函数体的内容。
分别通过以下方式调用
foo(5)
func(5)
7.使用require模块化,define使用
define(['myLib'], function(myLib) {
function foo() {
myLib.somefunction()
}
return {
foo: foo
};
});
8.use strict 指令
严格模式中 所有的变量都要声明(在非严格模式中,给未声明的变量赋值,是给全局对象window对象添加一个属性)
严格模式中 函数(不是方法)中的this值为undefined,非严格模式指代全局对着(window)
9.&&可以当if使用
var a;
1==1 && a=2
表示如果前面条件1==1为true,则a=2。
10.btoa是window下的方法,相当于base64
11.参数加密规则
对于不知道的加密字符串,首先为HEX,然后按照下面表尝试
ggzip 1f .8b. 08
lzma 6c.00
zlib 78.51
12. 参数获取途径
1.直接HTML源码
2.写死在JS
3.来自cookie
4.响应中获取
13. 无限debugger
当
(function(){}).constructor ===Function
执行
Function.prototype.constructor=function(){};
回车
可以置空。
js逆向笔记的更多相关文章
- JS逆向-抠代码的第二天【手把手学会抠代码】
今天的学习项目:沃支付:https://epay.10010.com/auth/login 清空浏览器缓存后,打开网页,输入手机号,密码222222,按照网站要求填入验证码(sorry,我没有账号密码 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- js读书笔记
js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...
- React.js入门笔记
# React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...
- JS 学习笔记--9---变量-作用域-内存相关
JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的 ...
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
- JS面向对象笔记二
菜单导航,<JS面向对象笔记一>, 参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...
- WebGL three.js学习笔记 使用粒子系统模拟时空隧道(虫洞)
WebGL three.js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图: 时空隧道demo演示 Demo地址:https://nsytsqdtn.github.io/demo/sprite ...
随机推荐
- 纯 CSS 画 iphone
好几天没有更新了,直接上效果吧,哈哈!(我想这个应该大部分都会!哈哈哈!) 代码如下: html: <div class="container"> <div cl ...
- RedHat6.9下替换yum源
因为RedHat的yum需要收费,且要注册后才能使用.因此想把Yum源更新为CentOS的.使用的RedHat版本为6.9,因此对应的CentOS版本也要为6.9 1. 检查并删除原有的yum源 rp ...
- 为群晖加把锁:使用ssh密钥保障数据安全
对每一个使用群晖nas的人而言,能保证群晖里保存的数据不被未经授权的人访问下载甚至破坏可能是最重要的事情.但数据只要上网,就免不了担心密码被破解,群晖被侵入.现在网络上,要破解密码可能是最简单不过的事 ...
- [ike][ipsec] child sa rekey机制的细节分析
子标题:ipsec rekey是否会导致丢包 author: classic_tong 前言 什么叫rekey. rekey是指ipsec的通信两端定期更换加密信道秘钥的机制. 为了安全性考虑,随着秘 ...
- python的time模块和datetime模块
1. 将当前时间转成字符串 strftime 方法,并输出 import datetime # 获取当前时间 datetime.datetime.now() print(datetime.dateti ...
- 十七.protobuf在rpc中的使用
关于protobuf在rpc中的使用,设计到gRPC,相关内容待续....
- 接口中的xml报文和实体类的之间转换
需求:湖南保险行业意健险承保风险预警平台数据接口 平台提供HTTPServlet服务,接受保险公司的数据请求,并在处理后返回给保险公司相应的处理结果.数据接口格式为XML数据报文,在每次接口的交易中, ...
- Dubbo源码分析(5):ExtensionLoader
背景 Dubbo所有的模块加载是基于SPI机制的.在接口名的上一行加个@SPI注解表明要此模块要通过ExtensionLoader加载.基于SPI机制的扩展性比较好,在不修改原有代码,可以实现新模块的 ...
- 【二分答案】Expanding Rods POJ 1905
题目链接:http://poj.org/problem?id=1905 题目大意:原长度为L的线段因受热膨胀为一段弧,线段L.弧长L'.温度n.膨胀率c满足L' =(1+n/c)*L;求线段的中点移动 ...
- 2019-2020-1 20199302《Linux内核原理与分析》第六周作业
一 .万能函数 1.过程抽象 (1)接口:指明模块要做什么,标识符/类型.函数等,.h ,函数调用者 (2)实现:指明模块如何完成接口,一个接口多个实现(可能),.c ,函数实现者 (3)函数签名:函 ...