【问题标题】:Is a hosted button the safest option for accepting PayPal donations?托管按钮是接受 PayPal 捐款的最安全选择吗?
【发布时间】:2013-11-13 20:47:13
【问题描述】:

我想创建一个慈善网站,唯一的选择是使用 PayPal 处理付款。我正在努力让用户可以在我的网站上有一个输入字段,他们可以在其中决定捐赠多少,但我怀疑这是否会引发许多安全漏洞,例如有人篡改输入的金额由用户。有一个托管按钮,您不能在您的网站上向用户询问他们想要提供的金额,他们会在 PayPal 付款表单中输入。

那么让用户在用户点击捐赠按钮时出现的支付表单中输入他们希望捐赠的金额会更安全吗?如果我想确保 PayPal 表单中的“业务”和“金额”等变量没有被篡改,如何确保网站的安全性?

是否可以将表单的“操作”值更改为指向一个函数,在该函数中我可以过滤变量并进行检查,然后将值发送到 PayPal(我正在使用 PHP/CodeIgniter)?

【问题讨论】:

    标签: security paypal donations


    【解决方案1】:

    从 PayPal 支付的角度来看,将不安全的 <form> 元素用于捐赠按钮是没有问题的。
    是的,这意味着客户可以修改表单的 amountbusiness,但这并不重要,因为您希望他们能够修改金额。
    如果有人更改了business;这仅适用于他们的捐赠。所以那里也没有问题。

    要做唯一要保护的是您的后端/源文件,以防止有人永久更改 business 以指向不同的帐户。

    【讨论】:

    • 感谢您的回复。什么样的漏洞可以让某人永久性地改变商业价值?我现在将使用托管按钮以避免任何漏洞。它本身是否安全(不添加任何其他类型的检查,因为所有变量都保存在贝宝中)?另外,将 https 添加到捐赠页面是否有助于保护后端?
    • 回复。 HTTPS;不,那只会影响数据的传输,不会影响数据本身的安全性。如果有人控制您的后端/使用任何方式生成呈现的网站内容,则托管按钮将不够用。他们可以简单地用自己的元素替换整个
      元素。
    • 总之;就保护 PayPal 交易而言,非托管或托管按钮都可以,并且没有任何区别。您应该将大部分注意力花在保护您的后端/控制您网站内容的任何事情上。 OWASP 的前 10 个 webapp 漏洞是一个好的开始; owasp.org/index.php/Top_10_2013-Top_10 - 确保你有足够的保护来抵御这些攻击。
    • 谢谢,知道 PayPal 表单是安全的,我感到有点安心。我使用 PayPals 沙箱进行了模拟,一切正常。我根本没有使用数据库或任何其他表单(用于发送电子邮件的表单除外),我只使用 json 文件在 jQuery 中读取图像文件名。另外,我有一个轮播插件,仅此而已。 CodeIgniter 负责全局 XSS 过滤,我不设置会话或 cookie(但 PayPals 表单呢?)。它只是一个非常简单的慈善网站,我想确保我不会把它搞砸。
    猜你喜欢
    • 2012-06-21
    • 2014-10-24
    • 2012-04-29
    • 2011-12-13
    • 1970-01-01
    • 2022-01-04
    • 2012-03-12
    • 2017-09-24
    • 2013-02-23
    相关资源
    最近更新 更多