
···················································································································································································
第一:DDOS 攻击
简述现象:一个 IP 正经历着1G及其远超1G以上的的流量访问。
第二:SQL注入
如果官网使用的是 PHP 开发,由于框架比较老旧,存在着一些 SQL 注入的点,被一些黑客找到了突破点,
为什么 PHP 一般比 Java 更容易暴露出 SQL 漏洞的情况?可能有两方面的原因:
1,PHP 前端使用较多,受攻击的机会更多一些,Java 一般做为后端服务攻击的可能性会比较少;
2,PHP 框架较多而且很杂,很多早期的框架并没有特别考虑 SQL 注入的情况,Java 大量普及了 mybaits\hibernate 这种 orm 框架,框架本身对常见的 SQL 注入有防范的功能,但不是说mybaits/hibernate 框架就没有被 SQL 注入的可能,大部分场景下可以。另外参数化查询可以有效的避免 SQL 注入。
第三:短信攻击
现在的网站几乎都有发送短信或者短信验证码的功能,如果前端不做校验,黑客会写一个 for 循环来发短信,一般系统的短信会进行全方位的防控,比如:
1,前端加验证(字符验证码,有的是拖拽的动画);
2,后端根据用户或者 IP 加限制,比如用户一分钟只可以发送一条短信,忘记密码的短信一天只能发送10条、一个 IP 地址限制每天只能发送100条短信等。
机房常用的安全设备有:VPN 服务器、防火墙、WAF 防火墙。
1,VPN 服务器:主要用于运维人员通过口令可以登录到机房内网中进行日常运维工作,也可以用做不同机房网络互通,保证在特定的网络下信息传输安全。
2,防火墙 :外网访问进入机房的第一道大门,负责三层网络的安全检测,隔离内网和外网环境,外网为非信任区,内网为信任区。
3,WAF 防火墙:最重要的安全设备之一,WAF 防火墙主要是对 Web 特有入侵方式的加强防护,如 DDOS 防护、SQL 注入、XML 注入、XSS 等。属于应用层的安全防护,我们经常遇到的黑客攻击行为,主要就靠它的防护能力。
软件方面的防护主要有两方面,一方面使用证书保证传输层的数据安全,另一方面所有对外的接口都需要做好安全规划。
1,HTTPS 证书:在 web 服务器部署 HTTPS 证书,保证用户在交互的过程中数据没有被篡改。
2,网络规划:所有非必须的服务都不要开放外网访问,需要开放外网访问的服务器仅开放需要的端口,比如常用的 80。和合作公司有数据交互或者接口调用的需求,需要绑定固定的外网访问地址。
3,技术选择:选择成熟的框架可以避免很多安全问题,早期的很多 PHP 框架根本就没有考虑SQL 注入的相关问题,当初 strust2 的安全漏洞多少企业被坑。选择成熟稳定的技术体系可以避免很多低级的问题。
···················································································································································································
常见的攻击手段有:ARP攻击,DoS攻击,DDoS攻击,SYN攻击,缓冲区溢出攻击,等等。
1 ARP攻击
ARP(Address Resolution Protocol)是地址解析协议,是一种利用网络层地址来取得数据链路层地址的协议。ARP欺骗是黑客常用的攻击手段之一,其中最常见的一种形式是针对内网PC的网关欺骗。它的基本原理是黑客通过向内网主机发送ARP应答报文,欺骗内网主机说:“网关的IP地址对应的是我的MAC地址”,也就是ARP应答报文中将网关的IP地址和黑客的MAC地址对应起来。这样内网PC本来要发送给网关的数据就发送到了黑客的机器上了。
2 DoS攻击
拒绝服务(Denial of Service,DoS)攻击,其原理就是想办法让目标机器停止提供服务货或资源访问,这些资源包括磁盘空间、内存、进程甚至网络带宽,从而阻止正常用户的访向。
DoS的攻击方式有很多种,根据其攻击的手法和目的不同,有两种不同的存在形式。
一种是以消耗目标主机的可用资源为目的,使目标服务器忙于应付大量非法的,无用的连接请求,占用了服务器所有的资源、造成服务器对正常的请求无注再做出及时响应,从而形成事实上的服务中断。这是最常见的拒绝服务攻击形式之一。这种攻击主要利用的是网络协议或者是系统的一些特点和漏洞进行攻击,主要的攻击方法有死亡之Ping 、SYN Flood、UDP Flood、ICMP Flood、Land、 Teardrop 等。针对这些漏洞的攻击,目前在网络中都有大量的工具可以利用。
另一种拒绝服务攻击以消耗服务器链路的有效带宽为目的。攻击者通过发送大量的有用或无用数据包,将整条链路的带宽全部占用,从而使合法用户请求无法通过链路到达服务器。例如,蠕虫对网络的影响。具体的攻击方式很多,如发送垃圾邮件,向匿名FTP塞垃圾文件,把服务器的硬盘塞满;合理利用策略锁定账户,一般服务器都有关于账户锁定的安全策略,某个账户连续3次登录失败,那么这个账号将被锁定。破坏者伪装一个账号,去错误地登录,使这个账号被锁定,正常的合法用户则不能使用这个账号登录系统了。
3 DDoS攻击
分布式拒绝服务(Distributed Denial of Service, DDoS)攻击,是一种基于DoS的特殊式的攻击,是一种分布、协作的大规模攻击方式,主要攻击比较大的站点,如商业公司、搜索引擎和政府部]的站点。
DDoS借助数百台、甚至数千台被植人攻击守护进程的攻击主机同时发起进攻,这种攻击对网络服务提供商的破坏力是巨大的。
攻击准备:
(1)攻击者攻击诸客户主机以求分析他们的安全水平和脆弱性。
(2)攻击者进入其已经发现的最弱的客户主机之内(“肉鸡”),并且秘密地安置一个其可远程控制的代理程序(端口监督程序demon)。
发起攻击:
(3)攻击者使他的全部代理程序同时发送由残缺的数字包构成的连接请 求送至目标系统。
(4)包括虚假的连接请求在内的大量残缺的数字包攻击目标系统,最终将导致它因通信淤塞而崩溃。
SYN Flood攻击
SYN Flood攻击利用的是TCP缺陷。通常一次TCP连接的建立包括3个步骤:客户端发送SYN包给服务器端;服务器分配一定的资源并返回SYN/ACK包,并等待连接建立的最后的ACK包;最后客户端发送ACK报文。这样两者之间的连接建立起来,并可以通过连接传送数据。攻击的过程就是疯狂地发送SYN报文,而不返回ACK报文。当服务器未收到客户端的确认包时,规范标准规定必须重发SYN/ACK请求包,一直到超时,才将此条目从未连接队列删除。SYN Flood 攻击耗费CPU和内存资源,而导致系统资源占用过多,没有能力响应其他操作,或者不能响应正常的网络请求。
由于TCP/IP相信报文的源地址,攻击者可以伪造源IP地址,为追查造成很大困难。如果想要查找,必须通过所有骨干网络运营商的路由器,逐级地向上查找。
SYN Flood攻击除了能影响主机外,还危害路由器、防火墙等网络系统。
4 缓冲区溢出攻击
缓冲区是一块连续的计算机内存区域,在程序中,通常把输入数据存放在一个临时空间内,这个临时存放空间被称为缓冲区。在计算机内部,如