系统安全攻防

系统安全攻防


1.同ip并发限制
防御措施:
(同一个ip窗口时间内限制访问次数)

2.各中间件环境限流 
防御措施:
(网关,tomcat,数据库连接池,线程池,应用限流,存储中间件限流)

3.加密存储敏感信息
防御措施:
密码加密

4.传输层未加密
防御措施:HTTPS

5.传输层相关参数校验。
防御措施:
(前后端根据算法算出一个盐值比较)

6.SQL注入攻击(防止sql拼接)
防御措施:
1、特殊字符过滤,不要用拼接字符串的方法来凑sql语句。
2、对sql语句进行预编译,比如java的preparedstatement。
3、关闭错误信息,攻击者可能会通过不断的尝试来得到数据库的一些信息,所以关闭错误信息变得重要起来。
4、控制数据库的权限,比如只能select,不能insert,防止攻击者通过select * from test ;drop tables这种操作


7.CSRF(Cross Site Request Forgery),即跨站请求伪造
防御措施:
1、验证referer字段,这个字段主要是反映了访问某个网页只能有referer发起请求,所以通过referer验证,可以抵御一部分csrf攻击。
2、在请求地址中加token验证,攻击者发送恶意请求时,通过token验证来进行身份验证,而token必须是一个攻击者猜不到的,很难去模拟出来的。
3、在htttp请求头中定义字段,其实就是将2中说得token字段放入请求头,解决了每次在请求头中加入token的不便,同时在其也不会记录在地址栏里,降低了token泄露的风险

8.XSS(Cross Site Scripting),跨站脚本攻击
防御措施:
文本输入做中对js关键字做编码,让回给用户浏览器的js不可执行
浏览器的同源策略,浏览器只允许访问cookie的IP+port必须同最初创建cookie的ip+port相同
web app或者浏览器提供“禁用script”的选项


8.身份认证和会话劫持
防御措施:
session token定期失效

9.拒绝服务攻击DoS
防御措施:
对于SYN flood:启用SYN Cookie、设置SYN最大队列长度以及设置SYN+ACK最大重试次数。

10.限制网站后台访问权限
防御措施:
禁止公网IP访问后台;禁止服务员使用弱口令。

11.防火墙
防御措施:
在服务器与网络的接口处配置防火墙,用于阻断外界用户对服务器的扫描和探测。


12.项目发布前使用使用漏洞扫描软件
防御措施:
项目发布前使用使用漏洞扫描软件,如IBM appScan,UnisWebScanner,对安全性进行评估。


 

猜你喜欢

转载自my.oschina.net/xiaominmin/blog/1816678