自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 1_20_使用collection中的ChainMap从逻辑上连接两个字典

from collections import ChainMapa = {"x": 1, "y": 2}b = {"x": 2, "z": 3, "y": 4}c = ChainMap(a, b)# ChainMap连接起来的数据结构在进行查找的时候是先从第一个元素对应的字典中查找相应的键,没有找到才会找第二个print(c["x"], c["y"], c["z"])# ChainMap得到的数据结构和字典差不多,仍然可以使用字典的常用方法print(list(c.keys())) #

2021-07-02 09:18:00 141

原创 subprocess模块的使用

当我们运行python的时候,我们都是在创建并运行一个进程。正如我们在Linux进程基础中介绍的那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序。在Python中,我们通过标准库中的subprocess包来fork一个子进程,并运行一个外部的程序(fork,exec见Linux进程基础)。subprocess包中定义有数个创建子进程的函数,这些函数分别以不同的方式创建子进程,所以我们可以根据需要来从中选取一个使用。另外subprocess还提供了一些管理标准流(standard s

2021-02-21 19:12:07 780

原创 7_js逆向学习笔记之md5加密代码的扣取

目标网站:https://m.wcbchina.com/invite/invite.html学习目的:学习md5加密的代码如何扒取1、打开网站,输入手机号,这里使用15222222222为例 。打开F12抓包, 发送短信验证码,抓取到发送短信验证码的请求如下图:图1:发现发送短信验证码的需要三个参数timestamp、sign、phone,其中sign是加密参数,需要进行js逆向分析。2、直接在全局搜索sign的值(也可以使用xhr断点调试法)在这里具体的调试方法不再介绍,不懂得看下以前的文章。

2021-01-08 15:21:09 537

原创 6_js逆向学习笔记之hook

什么是hook替换原有方法的这种处理方式我们就叫hookhook的三种方式:1、 覆盖原方法// hook示例1function hello(){ console.log("1111"); }// 不修改hello中的代码的情况下,调用hello()输出2222hello = function(){ console.log("2222") }// hook示例2:// 替换js内部的alert使其,在调用alert的时候,不再弹出警示框, 而是在控制台输出hello wo

2021-01-07 22:34:23 915

原创 5_js逆向学习笔记之xhr断点调试法

佛挡杀佛

2021-01-06 15:28:51 1630

原创 4_js逆向学习笔记之搜索定位调试法

实例网站:https://sk.open.com.cn/stuspace-auth/#/login学习目的: 找到登录所用的password的加密位置小知识点:1、一种常见的加密算法的加密特征密文长度是32位或者16位的有可能是md5加密,密文长度位40位的有可能是sha12、 js调试的时候调试技巧1. 对象中,逗号作为一行的结尾时,对象中的代码不能打断点,可以向上找var或者fucnction定义处来打断点2. 如果想调试函数内的代码,要把断点打在函数内,或者函数的结尾"}"所处的行3.

2021-01-05 22:04:55 819

原创 3.2_js逆向学习笔记之dom事件与断点调试

实例网站:https://www.gm99.com/目的:运用dom事件调试找到登录时的password的加密位置与方式1、打开网站,输入相应的账号、密码、验证码。这里以账号:13511111111, 密码:123456 验证码:1111示例。F12抓包,如下图所示:发现只有两个网络请求,一个是校验验证码的,另一个是重新请求图片验证码的,并没有登录的包,因此这里应该是先校验验证码,验证码输入正确才发送登录请求。因此后面的步骤都要输入正确的验证码。2、输入正确的验证码,重新抓包,结果如下图所示:

2021-01-05 15:40:13 467

原创 3.1_js逆向学习笔记之dom事件断点调试

js调试之dom事件与断点调试实例网站:http://www.xinshangmeng.com/xsm2/?Version=2020121900目的:分析password的加密方式1、打开这个网站,输入相应的账号、密码、验证码。这里以账号:13511111111, 密码:123456 验证码:1111示例。F12抓包,发现登录请求是以下链接:http://login.xinshangmeng.com/login/users/dologin/dfaup?jsonp=jQuery17201513695

2021-01-04 23:33:11 1789

原创 1_js逆向学习笔记-html的基础知识

列表标签: 无序列表 有序列表 定义列表1 1 定义列表2图片标签:<img src=“图片路径”/ alt=“当图片显示不出来的时候会显示这里的文本”>超链接标签:点我锚点: 我在这里 跳转到锚点 表格标签 普通单元格, 不会自动居中和加粗 普通单元格, 不会自动居中和加粗 普通单元格, 不会自动居中和加粗

2021-01-04 13:16:53 224

原创 2_js逆向学习笔记-js基础

js基础js的组成:EDMAScript:制定了一些JavaScript的标准DOM:文档对象模型:DOM可以把html看作文档树,通过DOM提供的api可以操作这个文档树BOM:浏览器对象模型:通过BOM可以操作浏览器窗口比如弹出框、控制浏览器跳转BOM:window对象:不但充当全局作用域,而且表示浏览器窗口,它有如何属性和方法:window对象的属性:closed:窗口是否已被关闭,值为true或者falsedefaultStatus:设置或返回窗口状态栏的默认文本

2021-01-04 13:05:00 586 1

原创 汇编篇---01

什么是机器语言计算机只认识0和1,机器语言就只包括0和1,很难。什么是汇编语言一些指令集,依靠编译器可以将汇编语言转化为机器语言。什么是高级语言c、c++等,更加贴合人类的思维方式。仍然需要编译器进行转化为机器语言。高级的实质上就是编译器变得高级了。c和c++本质上是没有区别的,只是编译器做了更多的事情。学习环境vc6,其他的也可以,不过只要是做底层的人一定是使用的是vc6的开发环境,因为越高版本的开发环境在编译的时候添加的额外代码越多,不利于我们的学习,因此,我们选择的开发环境

2020-12-21 14:29:17 221

原创 os.walk, fnmatch模块的使用

os.walk的使用python中os.walk是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。1.载入要使用os.walk,首先要载入该函数可以使用以下两种方法import osfrom os import walk2.使用os.walk的函数声明为:walk(top, topdown=True, οnerrοr=None, followlinks=False)参数top 是你所要便利的目录的地址topdown 为真,则优先遍历top目录,否则优先

2020-12-07 13:57:23 105

原创 从零开始学习安卓逆向(四)

发烧的

2020-08-24 21:18:30 161

原创 从零开始学习安卓逆向(二)

apk的打包流程

2020-08-22 21:04:34 243

原创 从零开始学习安卓逆向(三)

修改包名实现分身实现apk程序分身功能只需要修改如下两个属性:1、在androidmainfest.xml中的第一行找到package属性,修改包名。2、在androidmainfest.xml中的标签中修改android:authorities属性即可,多个的话,都需要进行修改。修改资源去广告的方法(apk的入口广告和弹窗广告):1、在androidmainfest.xml中删除除了INTERNET之外的所有与网络有关的权限(去除apk中的联网弹窗广告),因为INTERNET权限如果被删除后可能

2020-08-22 21:02:30 265

原创 从零开始学习安卓逆向(一)

环境搭建1、jdk环境搭建:java开发环境2、jre环境搭建:java的运行环境

2020-08-06 12:55:00 663

原创 01.http的基本原理

URL和URIURI 的全称为 Uniform Resource Identifier,即统一资源标志符,URL 的全称为Universal Resource Locator,即统一资源定位符。URL 是 URI 的子集,也就是说每个 URL 都是 URI,但不是每个 URI 都是 URL。URI 还包括一个子类叫作 URN,它的全称为 Universal Resource Name,即统一资源名称。URN 只命名资源而不指定如何定位资源,比如 urn:isbn:0451450523 指定了一本书的

2020-06-30 13:37:52 111

原创 Python单例模式的采坑

class A(): _instance = None def __new__(cls, *args, **kwargs): if cls._instance is None: cls._instance = super().__new__(cls) print(cls._instance) return cls._instance def __init__(self): print("heh

2020-06-15 17:50:36 167 1

原创 csc文件的读写

csv读取文件1、新建一个test.csv文件,数据如下:Symbol,Price,Date,Time,Change,Volume"AA",39.48,"6/11/2007","9:36am",-0.18,181800"AIG",71.38,"6/11/2007","9:36am",-0.15,195500"AXP",62.58,"6/11/2007","9:36am",-0.46,935000"BA",98.31,"6/11/2007","9:36am",+0.12,104800"C",53

2020-06-15 10:37:52 1073

原创 django学习笔记(1)

django中的模块模型model:数据层,处理与数据相关的所有事物视图view: 视图层,用来处理用户发出的请求模板template:模板,通过视图函数渲染html模板,得到动态的前端页面路由url:网站的入口,关联到对应的视图函数,访问网址就对应一个函数表单forms:表单,用在浏览器输入数据提交,并对这些数据进行验证后台admin:django自带一个管理后台,对你提交的数据进行管理配置settings:django的设置,配置文件virtualenvvirtualenv是一个

2020-06-07 17:08:38 378

原创 01_python数据模型

数据模型:是对Python框架的描述,它规范了这门语言自身构建模块的接口,这些模块包括但不限于序列、迭代器、函数、类和上下文管理器。Python解释器碰到特殊的句法时,会使用特殊方法去激活一些基本的对象操作,这些特殊方法的名字以两个下划线开头,以两个下划线结尾(例如__getitem__)。比如obj[key]的背后就是__getitem__方法1.1 一摞Python风格的纸牌import...

2020-01-14 17:02:08 157

原创 docker学习笔记一:镜像篇

docker学习笔记一:镜像篇1. docker核心技术之镜像镜像:镜像是一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。通过镜像可以创建一个或多个容器。1.1 镜像管理1. docker search :作用搜索dockerhub上的镜像资源。命令格式:docker search [OPTIONS] TERM命令参数(OP...

2019-12-25 19:21:24 233

原创 15_上下文管理器和else块

上下文管理器和else块with语句的作用:with 语句会设置一个临时的上下文,交给上下文管理器对象控制,并 且负责清理上下文。while、for、try中的else块for 仅当 for 循环运行完毕时(即 for 循环没有被 break 语句中止) 才运行 else 块。while 仅当 while 循环因为条件为假值而退出时(即 while 循环没有被 break 语句中止...

2019-10-18 21:37:22 191

原创 python学习踩坑

class A(): def __init__(self, name="a"): self.name = nameclass B(A): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) print(kwargs) pas...

2019-10-04 18:51:16 119

原创 pyqt5学习笔记(1)

from PyQt5.Qt import *import sys# 使用sys.argv是为了让gui程序接收到用户传递的参数app = QApplication(sys.argv)# app.arguments()这个方法就是得到传递到这个gui程序的参数也就是sys.argv# print(app.arguments()) # sys.argv的结果相同# qApp是在包p...

2019-09-22 08:13:07 229

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除