拼拼被攻击网站求大神看漏洞

2015-02-23 08:43:11 +08:00
 Jack

网站 subhd.com
VPS Linode
DNS防护 CloudFlare Business Plan
程序语言 PHP + MYSQL + Redis + Sphinx

现在的问题是,DDoS攻击一上来网站就挂,Linode就把IP挂空,等攻击结束才会恢复。
给CF客服写信,说流量bypass了CF,没有全部通过CF,所以可能是通过什么方法得到了网站的真实IP。
话说对这种攻击,即使我服务器本身做了IP限制,攻击只要得到我的服务器IP,流量一样会到机房,Linode依旧会挂空IP吧,所以我服务器怎么设置都没啥用,唯一办法是确定流量都通过CF进行防护。

所以求大神看下我的网站,是否可以通过扫描端口,或者PHP程序本身有什么漏洞导致的IP地址露出?
http://subhd.com/upload <== 是否是因为上传呢?

5372 次点击
所在节点    站长
37 条回复
imlonghao
2015-02-23 10:54:09 +08:00
@Jack 这个20G不是20G流量的意思吧,指的是家里带宽那种几兆几兆的那种
Jack
2015-02-23 11:37:55 +08:00
@imlonghao 知道了,谢谢
invite
2015-02-23 11:40:07 +08:00
按道理, 应该是获取不到真实IP的.
ryd994
2015-02-23 11:54:24 +08:00
1.申请换IP试试,新IP注意保密
2.一般机房都有硬防服务,买
dndx
2015-02-23 12:04:36 +08:00
iptables DROP 掉不是来自 CloudFlare 的包。

Linode 的 IP 段就这么大,扫起来很容易的。
hadg
2015-02-23 12:05:16 +08:00
方法1:扫Linode全部IP段,先扫出所有80端口开放的机器再匹配网站,带宽够大的话,1个小时左右就搞定了。
方法2:用DNS保护之前真实的IP被某些网站记录了
暂时想到2种
a2z
2015-02-23 12:57:49 +08:00
注册/找回密码的时候发邮件泄露的吧……
Yamade
2015-02-23 13:18:05 +08:00
大哥:

1.你首先要找到你的被攻击日志,找到问题根源才能找防护的办法;

2.别重复发帖;在之前的帖子都告诉你方法了;


给你看Nginx 在 使用 CF 下获取用户真实IP的方式.

当服务器使用了CloudFlare的cdn后,无法获取客户端正确的ip地址,为了获取到真实的客户端ip,nginx要配置realip模块和指定CloudFlare的节点ip地址.

配置CloudFlare节点ip
vi /etc/nginx/nginx.conf //写在http区域里
ipv4:
set_real_ip_from 199.27.128.0/21;
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
set_real_ip_from 103.31.4.0/22;
set_real_ip_from 141.101.64.0/18;
set_real_ip_from 108.162.192.0/18;
set_real_ip_from 190.93.240.0/20;
set_real_ip_from 188.114.96.0/20;
set_real_ip_from 197.234.240.0/22;
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
ipv6:
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
real_ip_header CF-Connecting-IP;

检查是否有错误,如果没有错误就可以重启nginx了.

ps:
如果CloudFlare节点ip变更,大家可以去下面地址获取最新的节点ip.
https://www.cloudflare.com/ips
Jack
2015-02-23 13:52:04 +08:00
@a2z 目前没提供这种功能。。
LazyZhu
2015-02-23 13:58:54 +08:00
feelapi
2015-02-23 15:01:30 +08:00
https://blog.cloudflare.com/ddos-prevention-protecting-the-origin/
这里貌似有推荐的DNS设置和相关的建议,你可以检查下看看。尤其是:
1 Never initiate an outbound connection based on user action
2 DNS records are public domain and there are many places where historical records are archived. These historical DNS records will contain your original IP from before signing up with CloudFlare. If you are a target, the attacker probably already has your previous DNS record.
zts1993
2015-02-23 15:10:45 +08:00
subhd站长居然在v2
icloudnet
2015-02-23 16:27:10 +08:00
这样大流量的攻击只能抗吧
只能做些小工作抗一些小公鸡吧:
iptables禁止端口扫描,每分钟访问次数,超过就ban掉
然后就是注册邮箱发送时候的IP地址吧,不知道CF的pro隐藏你的Mail源地址没。
加个Fail2ban试试。
推荐个文章:
https://icloud.net/blog/120/the-most-important-iptables-rules-for-your-linux-server/
23. Prevent DoS Attack
hellogbk
2015-02-23 19:36:02 +08:00
想问一下楼主,CF的CDN你用着一直没有出现过问题吗? 我之前用过几天,时不时出现被墙的情况。。
Jack
2015-02-23 22:09:41 +08:00
@hellogbk 没有,一直还算正常,可能第一天会略有不正常
chinvo
2015-02-23 23:38:38 +08:00
……我記得上一個帖子大家都已經回覆了各種解決方案,樓主如果想要更詳細的方案,又不發log……

@Livid 重複發帖
dynfeisu
2015-02-25 00:58:36 +08:00
@Yamade 有APACHE下获得CLOUDFLARE 保护下的用户IP的方法么

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/172255

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX