- 博客(23)
- 收藏
- 关注
原创 分享个新的反爬思路
将xhr请求放到浏览器插件中,且不允许页面刷新,页面刷新即关闭或作其他包括但不限于(跳转404,退出登录,关闭tab等),这样是不是就已经难以开始调试了,那么再加上现有的反爬策略混淆加密,vmp,wasm等,阁下们应该如何应对呢。当然插件不适用于大部分的网站,因为不可能为了你这个网页让用户去安装插件,这样网页的便捷性便失去了,但是企业公司内部网站却可以,试用此方案的可以是公司内部,币圈的,原宇宙那些。
2024-10-23 08:16:12
146
原创 某气网168城市空气质量排序
今天无意间翻到了去年的面试题,当时的我对于这堆全是字符的返回值,真是头疼无比,但我觉得今天的我应该没问题,那么就直接开始。技术仍需加强,还可以用python还原完整算法,但是我觉得没必要了,纯粹自娱自乐,没有业务需求。大佬们如果有更好的意见欢迎与我交流。
2024-06-03 17:26:03
361
原创 web逆向常用的6种断点
这样一来,当用户点击按钮时,代码会暂停执行,你就可以检查事件监听器的代码,查看它是如何响应事件的,以及代码中是否存在任何错误或问题。当你设置了一个事件监听断点时,它会在特定的DOM事件被触发时暂停JavaScript代码的执行,允许你检查事件监听器的行为和代码的执行情况。当你设置了一个异常捕获断点时,它会在JavaScript代码中抛出异常时暂停代码的执行,以便你可以检查异常的类型、位置和代码的执行情况。条件断点是一种在调试过程中设置的断点,但与普通的断点不同,它只在满足特定条件时才会触发。
2024-04-24 18:02:48
1847
2
原创 scrapy
Scrapy架构图(绿线是数据流向)scrapy Engine(引擎):负责spider、ItemPipeline、Downloader、Scheduler中间的通讯、信号、数据传递等。Scheduler(调度器):它负责接受引擎发过来的Request请求,并将其获取到的Response交还给Scrapy Engine(引擎),有引擎交给Spider来处理。
2023-10-09 21:56:46
182
1
原创 某财经报逆向记录
一开始看到webpack就发憷了,所以找了几天webpack如何调用某个函数,但是知道后面无意间看到崔老的案例,也是webpack是直接扣js的方法,这才想起来js逆向原本是扣js而不是调用js文件,所以已有一定要长个记性,不要上来就发憷不知道怎么办。可以看到这是调用类似于MD5加密时间戳生成的,现在该w的值了,注意,这里连着进行3次加密,应该是发了不同的包,而经过测试发现在最后一次发包才是获取到数据的包。经过重复的测试,发现v的值和y的值是固定的,而b的则是每次都变化,定位js函数的位置。
2023-08-17 17:57:52
799
1
原创 猿人学第六题
明面是告诉你window.o大于等于6的话就会刷新网页,那背地里的意思不就是如果winow.o等于6就不是正常参数了,我一开始忽略了这点苦恼了我半天。提示:在控制台中window无法定义,所以在第28行的window={}要注释掉,而使用自己定义的window。可以看到他是先调用了r函数,在调用了z函数,那么这就是加密的地方了,先看一下这段代码。在r函数传递了一个t和window.o两个参数,正好在截图中发现可以看到t的来源。提示:经过我的不断测试发现他在r函数中的这个判断,是有特别意义的。
2023-08-01 13:50:39
317
1
原创 猿人学第五题
然后又来了一次的_0x4e96b4['_$pr']['push'](_0x474032(_$yw));现在定位_0x4e96b4['_$qF'],直接搜索发现他在1444行和146行都有,那么下断点看走的那个最终发现他走的是1444行的赋值操作。然后再来定位_0x4e96b4['_$pr']找他的生成来源,像这样直接搜索_0x4e96b4['_$pr'],然后都打上断点。经过尝试后发现他是调用了4次的_0x4e96b4['_$pr']['push'](_0x474032(_$Wa));
2023-07-31 16:41:00
1230
1
原创 qq音乐js逆向
最后发现同样的参数出来的结果却不一样,只能补环境了,这里一定要记得document和navigator。发现他是通过调用这个o函数,传t.data,进去生成的,那么直接扣js就可以了。顺着堆栈往上爬,找加密的位置 ,发现找了几个都不是,那么直接搜搜sign试试,昨天试了网易的js,今天就想着把qq音乐的也看看,OK,下面直接开始。发现一下就能看到,sign的赋值,那么直接进去下断点。是在window里面的,而不是单一定义的。首先抓包找接口,发现有一个sign加密。下面附上对应的Python代码。
2023-07-29 20:40:00
2085
15
原创 网易云js逆向
正好他这个有name和id,那么现在直接看有没有加密就好啦,如果没有直接发包就行,结果总是不能令人满意的,发现他携带了一个params=xxx的东西,这个是什么呢?初步估计就是搜索的东西了,因为他也没有在其他的地方传递参数,那么就只有这个地方了,那咱们进去看看他的来源。在调用js的时候发现与直接运行js输出的加密结果就可以获取到数据,而通过python的。首先通过点进去几个歌的详情页,发现单歌曲仅有id又区别,那么直接找歌id的来源就好了。抠js的过程据说用了哪里直接放在哪里就可以了,我这里就不演示了。
2023-07-28 22:14:56
1086
2
原创 猿人学第四题
现在接着测试,发现图片有偏移,与他返回来的顺序有变化,看到上面的有style样式那可能有样式偏移,计算这个偏移量可是烦了我好几天,如何通过偏移量计算出图片顺序呢?这句话是判断,判断经过MD5加密后的数据是否存在于img标签,如果相等那么添加display为none,相当于把这些与MD5加密的数据存在于img给隐藏掉了。这句话显示删除了他原本的类在添加一个新的类,相当于把原来数据包发回来的img标签的class给删掉,并添加一个新的空类。先求出应该在的顺序,在按照顺序的大小进行排序得出最终顺序。
2023-07-26 18:45:00
365
1
原创 猿人学第三题
按照请求原理,把请求头拿过来直接用原请求头理论上是没有问题的,但是不知道为什么不好使,终于经过我一系列百度的情况下得知requests的header排序是会按照默认顺序进行排序的而session则不会,那么接下来直接定义session就ok啦。可以看到在ajax中定义了一个beforeSend,这个不清楚什么意思,直接百度看到是在发送请求前,那这段代码的意思就是在发送页面接口前,先发送一个/jssm的请求,那直接去看这个请求干了什么。那就直接发包看看能不能获取到。
2023-07-21 12:57:35
99
1
原创 mysql笔记
不是将表中所有数据都查出来,是查询出来符合条件的。 语法格式: select 字段1,字段2 ,字段3… from 表明 where 条件;select …from …where …having … 以上关键字的顺序不能颠倒1. from2. where4. having5. select 从某张表查询数据,先经过where条件筛选出来有价值的数据,对这些有价值的数据进行分组,
2023-05-23 07:10:40
241
1
原创 记录问题:spring使用依赖注入弹出警告org.springframework.core.LocalVariableTableParameterNameDiscoverer inspectClass
记录问题:org.springframework.core.LocalVariableTableParameterNameDiscoverer inspectClass警告: Using deprecated '-debug' fallback for parameter name resolution. Compile the affected code with '-parameters' instead or avoid its introspection: com.xxx.xxx.xxx
2022-02-26 08:17:00
5275
1
原创 完美解决Python的UnicodeEncodeError: ‘gbk‘ codec can‘t encode character ‘\x等‘ in position 0:报错问题
UnicodeEncodeError: 'gbk' codec can't encode character '\xbb' in position 0: illegal multibyte sequence
2022-01-13 15:04:51
3424
1
原创 猿人学第二题
打开f12进入浏览器控制台,发现进入了无限debuger,那么直接在控制台中输入Function.prototype.constructor = function(){}回车,解决无限debuger。通过fd抓包发现他是进行了两次请求,先返回的是一对script的标签定义的js代码,第二次返回的才是正常的html代码。网络上搜索了一下这是ob混淆,直接用他自带的ob反混淆工具,下图为script包含的部分js代码格式化的样子。那剩下的就是直接看每个函数都在干什么就可以啦,
2021-12-28 20:18:55
689
原创 记录问题:python爬虫爬取数据出现requests.exceptions.TooManyRedirects: Exceeded 30 redirects
解决 requests请求超过30个重定向解决 请在微信客户端打开链接
2021-12-24 10:07:09
3739
原创 记录问题:严重: Web应用程序注册了JDBC驱动程序 [com.mysql.cj.jdbc.Driver],但在Web应用程序停止时无法注销它
如果是mysql5.0系列的数据库应该直接调用shutdown方法,则代码行应为AbandonedConnectionCleanupThread.shuthutdown();这里需要注意的是AbandonedConnectionCleanupThread.uncheckedShutdown();这行代码的mysql版本是8.0系列。ServletContextListener中的contextDestroyed方法。设置一个监听类在servlet注销的时候实现。
2021-12-19 11:21:14
1770
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人