问答 百科手机端

Web安全漏洞如何修复?

2022-01-27 15:01

作为信息安全领域的从业人员很高兴回答你的问题。关于Web安全如何修复我认为漏洞修复分四步发现漏洞、确定漏洞的危害、确定有那些修复方案及成本、综合比较选择修复方案进行修复。

发现漏洞在进行漏洞修复之前肯定要确定漏洞是什么?(如注入、XEE、跨站、信息泄露、反序列化等OWASP top10常见漏洞或支付、验证码、密码修改等逻辑漏洞)。可以通过专业的漏洞扫描工具或者专业的安全服务团队发现漏洞,不同类型的漏洞修复方案不同。如注入、XEE、跨站、反序列化可以通过对输入进行控制也可以通过IPS/IDS,逻辑漏洞则要对逻辑进行重新设计。

确定的漏洞的危害同样的漏洞对于不同的情况造成的危害也不一样,例如同样是sql注入漏洞,一些公司数据库中存放的是极为重要的敏感数据(如身份证、手机号、账号、密码等),另外一些公司可能只是存放一些无关紧要的数据(如一些新闻消息),那么可以根据实际情况选择是否修复。

确定有那些修复方案及成本确定是什么漏洞之后那么就能找到相应的修复方案,如下举例说明几种漏洞的修复方案:

sql注入修复方案:

1.使用正则表达式过滤传入的参数.

2.预编译:执行阶段只是把输入串作为数据处理,而不再对sql语句进行解析,准备,因此也就避免了sql注入问题.

3.权限控制:在创建一个SQL数据库的用户帐户时,要遵循最低权限法则。

4.IDS/IPS:从网络层来进行过滤请求,来缓解风险呢

支付逻辑漏洞修复方案:

多重校验如下图:

确定自己Web中漏洞有几种修复方案,每种修复方案的成本及影响。

确定修复方案根据修复漏洞所需要的成本,不修复漏洞带来的损失、对公司的业务影响、对公司的声誉影响(如果修复成本100万,损失10万完全没有必要修复),选择相应的修复方案或者缓解措施。如重要信息未加密漏洞,如果立即修复对业务影响比较大(如代码需要更改加入加密算法、数据库结构要重新设计、可能第三方对接业务代码也需要更改),可以使用协议及其他缓解措施来增加攻击的难度,后续慢慢更改 。总之要根据自身的实际情况进行调整。

热门