zoukankan      html  css  js  c++  java
  • 网络安全知识培训学习笔记

    逻辑漏洞

    条件竞争

    多个线程竞争同一个共享代码、变量、文件等称之为条件竞争。那么什么情况存在竞争条件?

    实例:
    上传文件,下面是一个上传文件的例子,上传文件之前先校验权限

    #include <stdio.h>
    #include <unistd.h>
    #include <string.h>
    #define DELAY 10000
    
    int main()
    {
         char * fn = "/tmp/XYZ";
         char buffer[160];
         FILE *fp;
         long int  i;
         //get user input
         scanf("0s", buffer );
         if(!access(fn, W_OK))
         {
         //simulating delay
            for (i=0; i < DELAY; i++){
              int a = i^2;
            }
            fp = fopen(fn, "a+");
            fwrite("
    ", sizeof(char), 1, fp);
    
            fwrite(buffer, sizeof(char), strlen(buffer), fp);
    
            fclose(fp);
        }else{
            printf("No permission 
    ");
        }
    }
    

    从例子看并没有看出什么,可是对于专业安全人员来说,什么程序就是一个很典型的竞争条件。分析一下,首先上传文件之前会进行权限校验,然后才可以上传,在校验权限直接存在一个时间差,在这个时间差直接就可以形成一个竞争条件,黑客完全可以利用这个竞争条件,在时间差,暴露破解,不断发请求上传文件,竞争上传文件,当然黑客上传的不是正规文件,一般都是一些脚本木马。

    渗透测试工具

    渗透测试工具:BurpSuite(数据包抓取)
    渗透测试Burp的intruder功能实现多个并发请求

    逻辑漏洞分类

    暴力破解
    越权漏洞
    条件竞争

    安全案例

    密码重置
    邮箱找回:分析token构造,时间戳md5值
    MD5(time+username)

    验证码方式找回:
    防御:设置更复杂的验证码,设置时间

    验证身份->修改密码界面(session,验证身份用户到修改密码界面是同个用户)

    越权漏洞

    越权漏洞:平行越权,垂直越权

    平行越权:用户的等级相同进行越权

    用户A,B:普通用户
    用户C:管理员用户

    A->B:平行越权

    A->C:垂直越权

    例子:购物车 订单信息例子

    越权漏洞测试挖掘,查订单操作,修改个人信息

    • 鉴权参数,accountId
    • 操作:抓包->鉴权参数

    相关名词:
    ECB模式
    分组加密模式
    Hash碰撞
    数字签名

  • 相关阅读:
    jumpserver安装教程
    正则表达式基础->
    Awk基础
    shell脚本练习题->1
    idea开发工具下载安装教程
    shell 数组基础->
    动荡的国庆前后
    Linux命令之查找
    2013年9月游戏测试总结-文档习惯
    将C#程序做成服务后服务自动停止的问题
  • 原文地址:https://www.cnblogs.com/mzq123/p/11747842.html
Copyright © 2011-2022 走看看