常见漏洞的应对方式(一)

简介: 常见漏洞的应对方式(一)

   之前的一篇 常见漏洞总结 介绍了工作中可能常见的一些漏洞,今天来学习下关于这些漏洞的一些应对方式。

1. sql注入

   1)JDBC的预编译

PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,username);
ps.setString(2,password);
ResultSet rs = ps.executeQuery();

   如上图示例:使用预编译PreparedStatement,通过setXXX方法传递变量,可解决SQL注入问题。

  2)MyBatis

   示例如下:

select * from table 
where username = ${username}
and passeord = #{password};

   mybatis中,使用 # 可以解决注入问题。如上图示例,username存在注入风险,而password不存在。

  3)总结

   两种防注入方式实际都是通过对输入进行预处理,使输入都变为一个字符串,从而忽略sql语句的拼接来达到防注入的效果。


2. XSS漏洞

   1)过滤

注意事项:
  有时过滤会导致一些错误处理,例如将alice's 过滤为alices;
  有时需要进行多次过滤操作,例如<htm<html>l> 过滤掉<html>之后还存在<html>标签
  需要注意多个过滤器生效的先后顺序。多个过滤器一起生效时,有可能后生效的会导致先生效的过滤失效。

   2)输入输出编码

   输入编码往往有全局的解决方案,但是对于持久性的xss,已经入库之后,就难以使用编码来处理。

   3)恶意流量拦截

   通过一些前置的恶意流量检测和拦截,来提前预防攻击产生

   4)CSP解决方案

   内容安全策略(CSP):网站通过发送一个 CSP 头部,来告诉浏览器什么是被授权执行的与什么是需要被禁止的。通过配置浏览器渲染规则,来限制浏览器执行的js代码、html标签等。


3. CSRF漏洞

   1)请求附带随机参数

   每次请求带一次有效的随机数(隐藏 input)。

   2)避免跨域请求

   校验origin,referer;post发送json数据

  3)跨域策略

    Double Submit Cookie


4. 文件上传和下载

   1)文件上传

  • 限制目录不可执行
  • 上传文件的类型和大小检查

   2)文件下载

  • 禁止用户自定义文件路径
  • 对用户请求的文件名进行安全处理
相关文章
|
3月前
|
机器学习/深度学习 人工智能 安全
应对安全威胁:移动及其他领域的可信执行挑战
应对安全威胁:移动及其他领域的可信执行挑战
26 0
|
4月前
|
SQL 安全 网络安全
服务器入侵如何防护,业务被攻击如何处理,服务器安全防护方案
服务器入侵如何防护,业务被攻击如何处理,服务器安全防护方案
|
6月前
|
云安全 安全 Linux
网站服务器怎么做防御?遇到攻击如何解决?
如今黑客攻击越来越多也十分猖獗,我们应如何防护呢?
45 0
|
6月前
|
安全 Cloud Native Linux
开源软件的漏洞响应:应对安全威胁
开源软件的漏洞响应:应对安全威胁
40 0
|
6月前
|
运维 安全 数据库
渗透攻击实例-系统/服务运维配置不当
渗透攻击实例-系统/服务运维配置不当
|
11月前
|
监控 安全 Java
如何使用基于风险的方法应对网络安全威胁
如何使用基于风险的方法应对网络安全威胁
|
11月前
|
人工智能 监控 供应链
应对2023年不可避免的数据泄露的5个步骤
应对2023年不可避免的数据泄露的5个步骤
137 0
|
安全
应对CSRF 攻击常见解决方案
CSRF(Cross-site request forgery)也被称为 one-click attack或者 session riding,中文全称是叫***\*跨站请求伪造\****。一般来说,攻击者通过伪造用户的浏览器的请求,向访问一个用户自己曾经认证访问过的网站发送出去,使目标网站接收并误以为是用户的真实操作而去执行命令。常用于盗取账号、转账、发送虚假消息等。攻击者利用网站对请求的验证漏洞而实现这样的攻击行为,网站能够确认请求来源于用户的浏览器,却不能验证请求是否源于用户的真实意愿下的操作行为。
412 0
|
存储 SQL 安全
如何应对PHP应用的安全问题?如何处理安全漏洞?底层原理是什么?
如何应对PHP应用的安全问题?如何处理安全漏洞?底层原理是什么?
115 0
|
监控 安全 druid
如何强化应用安全能力,全面拦截 Log4j 漏洞攻击
「ARMS应用安全」为企业业务安全保驾护航!
如何强化应用安全能力,全面拦截 Log4j 漏洞攻击