我的网站使用WHMCS。付款时,在线银行服务访问我的网站(我网站上的一个秘密页面),该网站接收信息(POST
),告诉我的脚本我已经收到了付款。然后我的脚本使用WMHCS API创建一个新的主机帐户。
我必须使用哪些方法来保护此页面不被黑客不当使用?
我想到的第一件事是拥有一个秘密密码变量(POST
),必须传递该脚本以运行代码。但我认为这还不够。
答案 0 :(得分:2)
我的建议是为该特定页面使用单独的文件夹。 然后,您可以在该文件夹中使用.htaccess,拒绝来自您所需的域之外的所有请求。 在你的.htaccess中,类似下面的东西可以满足你的需要。
order deny,allow
deny from all
allow from .somedomain.com
答案 1 :(得分:0)
使用SSL,设置>一般并在安装证书后分配ssl路径。
答案 2 :(得分:0)
通常,您应该为whmcs实例编写自定义支付网关。 http://docs.whmcs.com/Gateway_Module_Developer_Docs
答案 3 :(得分:0)
如果您使用paypal的ipn或任何其他付款通知,您至少可以验证它来自合法来源,例如:
$remotehost = gethostbyaddr($_SERVER['REMOTE_ADDR']); // turn remote ip into real host (paypal people configure dns properly)
$address = 'paypal.com'; // what to look for
if(preg_match("/\b".preg_quote($address)."\b/i",$remotehost))
{
// do ipn and it's ok
}
else
{
// no ipn, because I cannot resolve that host to something paypal.com
}