zoukankan      html  css  js  c++  java
  • 常见Web攻击



    第一次写网站特意用下面的方式去测试一下安全,发现全部入坑


    1. DDos攻击

    拒绝服务攻击:使系统过于忙碌而不能执行有用的业务并且占尽关键系统资源,常见有TCP泛洪,UDP泛洪。
    利用了TCP的三次握手,大量请求连接发送给服务器端,即SYN同步请求,当服务器响应ACK时,客户端消失了,那么服务端就会重试,导致半连接数量过多而宕机

    防范:

    • CDN分散静态内容,隐藏源服务器IP地址
    • 验证码+黑名单机制
    • 限流降级,访问频率


    2. SQL注入

    在SQL语句中的参数中注入SQL语句,改变原本的语句

    select * from user where username="userName" and password="password";
    
    select * from user where username=" or 1 = 1 -- " and password="password";
    

    防范:

    • 使用占位符 ?,#{},还有预编译效果


    3. XSS

    跨站脚本攻击:没有对用户提交的数据进行转义处理,然后用户添加攻击代码,其他用户访问后会被攻击

    防范:

    • HttpOnly避免Cookie劫持
    • 编码过滤转义特殊字符,标签,属性


    4. CSRF

    跨站请求伪造:在用户已经登录的网站上执行非用户意愿的操作。

    比如用户在站点A登录后有了Cookie,然后去访问站点B,站点B返回攻击性代码,要求访问站点A并执行某些操作

    防范:

    • 添加一个不能伪造的token,且不存在于Cookie中
    • 验证Http Referer字段,来源


    5. 文件上传漏洞

    在允许用户上传图片或者普通文本文件保存,而用户上传恶意代码并执行从而控制服务器。

    防范:

    • 前后端进行文件后缀判断,设置黑白名单
    • 服务区端重命名


  • 相关阅读:
    MySQL Replication主从复制
    使用Amoeba 实现MySQL DB 读写分离
    Amoeba For MySQL入门:实现数据库水平切分
    11条理由告诉你,为什么你的网站不卖座
    很有用的观察者设计模式
    Apache + Tomcat集群配置详解 (1)
    Nginx+tomcat配置负载均衡
    JSON-RPC轻量级远程调用协议介绍及使用
    nginx的upstream目前支持5种方式的分配
    rpc远程过程协议调用
  • 原文地址:https://www.cnblogs.com/Howlet/p/13175414.html
Copyright © 2011-2022 走看看