为啥银行支付验证系统使用 JavaScript 重定向
Posted
技术标签:
【中文标题】为啥银行支付验证系统使用 JavaScript 重定向【英文标题】:Why do banks payment validation systems use JavaScript redirects为什么银行支付验证系统使用 JavaScript 重定向 【发布时间】:2019-02-18 01:23:42 【问题描述】:当您通过在线支付系统(有或没有 3DSecure)付款时,您需要填写表格并进行验证,从严格的视觉角度来看,事情似乎非常简单。但后面往往是多次重定向,都是通过 javascript 来处理的。
基本上,您的数据已提交,然后您进入一个带有预填表单的页面,该表单会立即通过 JavaScript 提交,有时会连续多次提交(如果连接速度足够快,您甚至看不到这些步骤来自浏览器)。
我想知道他们为什么这样做(而不是正确的后端重定向),但我找不到答案。 我的猜测是,这只是让脚本更难遵循它,但它仍然可以做到(所以为什么要麻烦),而且在我看来,它的“肮脏方面”(从编码人员的角度来看)是不值得对尝试自动验证的脚本施加限制。
您对此有何见解?
【问题讨论】:
随着系统银行的使用,很可能是一个开发人员启动了它,现在只需维护很久以前编写的代码就更容易了,而不是重构它。 即使是最近的系统也是这样,所以一定有其他原因。 我没有得到反对票和关闭这个问题的请求。我找不到类似的,而且它并不愚蠢。如果该问题有问题,至少发表评论。 【参考方案1】:在我看来,使用 JavaScript 将有效地检测机器人或人类。
如您所见,Google 如何验证机器人。
这只是一个简单的复选框,但如果您尝试编写机器人来验证或通过检查,那就相当复杂了。 (现在还是不知道怎么过去^)
【讨论】:
Google 验证码远非“只是一个复选框”,它附带了一个完整的系统。另外,我正在谈论的 javascript 重定向甚至没有实现这些东西。它们基本上只是表单验证。例如,您可以使用 curl 轻松模拟。 是的,你可以用 curl 来做,但他们可能会使用 javascript 来生成更多的字段,比如:secure_code 或者做很多其他的事情......正如我所说的那样,它只会创造更多的困难让你分析他们的系统。在他们的系统中,他们必须做更多关于私人业务或其他事情的事情......以再次检测和验证您。使用它可以消除 90% 的 bot,值得使用。 是的,我在我的问题中指出了这种可能性,我只是想知道是否还有其他我想不到的原因。 是的,这是个有趣的问题。但我的回答可能缺少一些东西;)。希望我们有银行安全或集成方面的专家来提供帮助。以上是关于为啥银行支付验证系统使用 JavaScript 重定向的主要内容,如果未能解决你的问题,请参考以下文章