首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >代理和盗版-网站安全

代理和盗版-网站安全
EN

Stack Overflow用户
提问于 2012-10-30 08:58:52
回答 3查看 211关注 0票数 0

我正在建设我的第一个网站。这是一个在线房地产中介机构。用户可以创建自己的个人资料,然后插入广告和上传图片。

有人告诉我,我应该检测多次日志记录尝试,以防止Brute攻击。通过下面的代码,我可以检测到IP:

代码语言:javascript
复制
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{ $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];} else
{ $ip=$_SERVER['REMOTE_ADDR'];} 

系统在一定的延迟内对未完成的日志记录尝试进行计数,并在DB中保存禁止列表。效果很好..。至少当我亲自测试的时候!

然后,当我被告知‘通过假IP的盗版',我得到的印象,我的保护系统上面提到的是无效的。

有:

1)盗版软件,包括可以隐藏其真实IP的代理。

2)网络上的代理也可以隐藏真实的IP。

1和2之间有什么区别?

我想知道如何使用代理,以及它们能在非法行为方面做些什么

  • 有些人能随意改变吗?是叶?
  • 中国或俄罗斯的某个人能模拟西欧或美国的知识产权吗?
  • 我能做比我所做的更多的事情来发现任何可疑的活动吗?

非常感谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-30 09:24:30

代理是一种可以屏蔽您的ip的服务器。它将发送您的请求,就好像它是它的,然后发送回您得到的响应。

有些人能随意改变吗?是叶?

不,他们不能随便改变他们的ip。但他们可以掩盖它。

中国或俄罗斯的某个人能模拟西欧或美国的知识产权吗?

我能做比我所做的更多的事情来发现任何可疑的活动吗?

如果您检测到某些用户名多次使用蛮力技术登录错误的密码,则可以使用sleep函数减慢他的速度。这种技术,你不会切断用户使用代理,没有坏的意图,你将减缓蛮力黑客。

代码语言:javascript
复制
if($wrongAttempts > 5) sleep(3000);

if($password == $_GET[pass]) 
{
   // ...
}

您也可以开始包括captcha图像,以提高安全性或阻塞帐户一段时间。

票数 2
EN

Stack Overflow用户

发布于 2012-10-30 09:07:41

任何人都可以改变ip,代理,vpn.

我使用这个函数来检测真正的IP地址,如果它是有效的:

代码语言:javascript
复制
function getrealip() {
    if (getenv('HTTP_CLIENT_IP') && long2ip(ip2long(getenv('HTTP_CLIENT_IP')))==getenv('HTTP_CLIENT_IP') && validip(getenv('HTTP_CLIENT_IP')))
        return getenv('HTTP_CLIENT_IP');

    if (getenv('HTTP_X_FORWARDED_FOR') && long2ip(ip2long(getenv('HTTP_X_FORWARDED_FOR')))==getenv('HTTP_X_FORWARDED_FOR') && validip(getenv('HTTP_X_FORWARDED_FOR')))
        return getenv('HTTP_X_FORWARDED_FOR');

    if (getenv('HTTP_X_FORWARDED') && long2ip(ip2long(getenv('HTTP_X_FORWARDED')))==getenv('HTTP_X_FORWARDED') && validip(getenv('HTTP_X_FORWARDED')))
        return getenv('HTTP_X_FORWARDED');

    if (getenv('HTTP_FORWARDED_FOR') && long2ip(ip2long(getenv('HTTP_FORWARDED_FOR')))==getenv('HTTP_FORWARDED_FOR') && validip(getenv('HTTP_FORWARDED_FOR')))
        return getenv('HTTP_FORWARDED_FOR');

    if (getenv('HTTP_FORWARDED') && long2ip(ip2long(getenv('HTTP_FORWARDED')))==getenv('HTTP_FORWARDED') && validip(getenv('HTTP_FORWARDED')))
        return getenv('HTTP_FORWARDED');

    $ip = htmlspecialchars($_SERVER['REMOTE_ADDR']);
    /* Added support for IPv6 connections. otherwise ip returns null */
    if (strpos($ip, '::') === 0) {
        $ip = substr($ip, strrpos($ip, ':')+1);
    }

   return long2ip(ip2long($ip));
}

关于X-转发的更多信息

票数 5
EN

Stack Overflow用户

发布于 2012-10-30 09:21:11

正如大根所说,IP地址是识别用户的一种很弱的方式,黑客几乎肯定不会使用他们自己的IP地址,而是一台被盗的机器或僵尸网络;另一方面,许多企业用户似乎都来自同一个IP地址,如果有人忘记了他们的密码,那么您很容易就会阻止每一个用户离开该大楼/公司。

对暴力攻击的第一个防御是有一个强大的密码策略;通常,这被假定为至少7个字符,至少有一个数字和一个标点符号。这经常使用户感到烦恼,并使他们讨厌您的网站。

下一个防御措施--如果你认为你真的有危险--是CAPTCHA;这会让用户更讨厌你。

底线是:如果你正在建立你的第一个网站,我会看一个现成的框架,而不是自己发明一切。考虑一下梨:8月

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13135568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档