2013-11-02 36 views
0

我想創建一個慈善網站,唯一的選擇是使用PayPal處理付款。我試圖讓用戶可以在我的網站上有一個輸入字段,他們決定捐贈多少,但我懷疑這是否會打開許多​​安全漏洞,例如有人篡改輸入的金額由用戶。擁有託管按鈕,您不能要求網站上的用戶提供他們想要提供的金額,他們會將其輸入PayPal付款表格。託管按鈕是接受PayPal捐款的最安全選擇嗎?

那麼讓用戶在用戶點擊捐贈按鈕時出現的付款表單中輸入他們希望捐贈的金額會更安全嗎?如果我想確保PayPal表單中沒有篡改「業務」和「金額」等變量,我如何確保我的網站具有這種安全性?

是否有可能將表單的'action'值改爲指向一個函數,我可以過濾這些變量並執行檢查,然後將值發送給PayPal(我正在使用PHP/CodeIgniter)?

回答

0

從PayPal付款的角度來看,使用無擔保<form>元素作爲捐贈按鈕沒有問題。
是的,這意味着客戶可以修改表格的amountbusiness,但這並不重要,因爲無論如何您都希望他們能夠修改金額。
如果有人更改了business;只適用於其捐贈。所以那裏也沒有問題。

希望獲得的唯一的事情就是你的後端/源文件,以防止有人永久改變business指向一個不同的帳戶。

+0

感謝您的回覆。什麼樣的漏洞可以讓某人徹底改變業務價值?我現在要使用託管按鈕來避免任何漏洞。它本身是否安全(不添加任何其他類型的檢查,因爲所有的變量都與貝寶持有)?另外,將https添加到捐贈頁面有助於保護後端? – a7omiton

+0

Re。 HTTPS;不,這隻會影響數據的傳輸,但不影響數據本身的安全性。如果某人控制了後端/無論用於生成渲染網站內容的方式,託管按鈕都不夠用。他們可以簡單地用他們自己的一個替換整個元素。 – Robert

+0

所以總之;就PayPal交易的安全性而言,無論是託管還是託管的按鈕都沒問題,並沒有什麼不同。您應該將大部分注意力集中在確保您的後端/控制您網站內容的任何方面。 OWASP的前10個webapp漏洞是一個好的開始; https://www.owasp.org/index.php/Top_10_2013-Top_10 - 確保你有足夠的保護來抵禦這些攻擊。 – Robert