基于黑盒的补环境梭哈系列 RS4-某房地产

本文通过黑盒思维分析了RS4房地产数据采集中的逻辑,介绍了如何通过观察输入输出行为理解瑞数运行机制,以及如何通过源码分析和环境补全模拟浏览器环境,最终通过Python实现伪装。
摘要由CSDN通过智能技术生成


声明
此帖仅为记录我的逆向学习,过程文章中所有内容仅供学习交流使用,不用于其他任何目的,严禁用于非法用途,否则由此产生的一切后果均与作者无关!

补环境-梭哈系列 RS4 某房地产

RS系列在数据采集领域吸引了大量的爱好者,这种情况难以用言语准确描述。

对于初次遇到的小伙伴,可能会觉得有些难以适应,但随着时间的推移和彼此的相处,我们会更好地了解彼此,在加上很多大佬的文章,能很快的解决问题。
下面我们以黑盒的思维去分析了解 RS4.0

什么是黑盒

在计算机科学和信息安全领域中,“黑盒”通常指的是一种测试方法或模型,其中测试者或分析者只能观察系统的输入和输出行为,而无法访问或了解系统内部的工作原理或实现细节。换句话说,黑盒测试或黑盒模型只关注系统的外部行为,而不考虑内部结构或算法。

在软件测试中,黑盒测试是指测试人员仅根据软件的需求规格或功能说明来设计和执行测试用例,而不考虑软件的内部代码结构或实现方式。这种测试方法旨在验证软件是否符合预期的功能和性能,而不关心软件的内部逻辑。

总的来说,黑盒在计算机领域中通常用来描述一种依赖于输入输出关系的抽象模型或测试方法,而不需要了解内部的具体实现细节。

瑞数运行的逻辑分析

基于源码分析一下

查看源码

通过html中的源码结合我们调试的经验(可以看其他大佬文章),可以确定红框中的代码,就是cookie生成的主要代码。
按照黑盒思路,我们无需知道里面干了什么,全部拿下,不改变任何代码逻辑。
在这里插入图片描述

伪装浏览器环境

将代码放在本地运行,发现缺少环境,根据报错缺什么补什么,就好了。
在这里插入图片描述
根据报错提示,我们补全代码。

var window = {
    $_ts: {},
};

运行一下看看,发现没有有效信息输出,无法看到内部具体原因。
解决办法多种多样,下面列举3种:

  • 打断点去看,具体代码原因
  • 本地替换和浏览器联调
  • 上代理(proxy)
    在这里插入图片描述
    当没有有效信息输出时,直接上代理,发现 eval 没有定义,接下补上就好了。
    在这里插入图片描述
    根据代理提示,我们补全代码,又出现新的错误。
var window = {
    $_ts: {},
    eval: function () {

    },
};

在这里插入图片描述
就按照这个思路,往下补全代码,就能初步达到伪装浏览器的环境的过程。主要就是 dom节点 和 系统函数的伪造,要什么给什么。

document.createElement = function (val) {
    if (val == 'div') {
        debugger;
       return {}
    } else if (val == 'a') {
        debugger;
        return {}
    } else if (val == 'form') {
        debugger;
        return {}
    } else {
        debugger;
        return {}
    }
};

结果

最后基于上面的逻辑 通 python 代码实现衔接,结果如下:
在这里插入图片描述

感谢大家的观看,希望这篇文章能够给您带来一些启发和思考。如果有任何意见或建议,欢迎与我分享。谢谢!!

  • 19
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红皮西瓜绿了心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值