网络安全系列之培训笔记整理
逻辑漏洞
条件竞争
多个线程竞争同一个共享代码、变量、文件等称之为条件竞争。那么什么情况存在竞争条件?
实例:
上传文件,下面是一个上传文件的例子,上传文件之前先校验权限
#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("\n", sizeof(char), 1, fp); fwrite(buffer, sizeof(char), strlen(buffer), fp); fclose(fp); }else{ printf("No permission \n"); }
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
从例子看并没有看出什么,可是对于专业安全人员来说,什么程序就是一个很典型的竞争条件。分析一下,首先上传文件之前会进行权限校验,然后才可以上传,在校验权限直接存在一个时间差,在这个时间差直接就可以形成一个竞争条件,黑客完全可以利用这个竞争条件,在时间差,暴露破解,不断发请求上传文件,竞争上传文件,当然黑客上传的不是正规文件,一般都是一些脚本木马。
渗透测试工具
渗透测试工具:BurpSuite(数据包抓取)
渗透测试Burp的intruder功能实现多个并发请求
逻辑漏洞分类
暴力破解
越权漏洞
条件竞争
安全案例
密码重置
邮箱找回:分析token构造,时间戳md5值
MD5(time+username)
验证码方式找回:
防御:设置更复杂的验证码,设置时间
验证身份->修改密码界面(session,验证身份用户到修改密码界面是同个用户)
越权漏洞
越权漏洞:平行越权,垂直越权
平行越权:用户的等级相同进行越权
用户A,B:普通用户
用户C:管理员用户
A->B:平行越权
A->C:垂直越权
例子:购物车 订单信息例子
越权漏洞测试挖掘,查订单操作,修改个人信息
- 鉴权参数,accountId
- 操作:抓包->鉴权参数
相关名词:
ECB模式
分组加密模式
Hash碰撞
数字签名
文章来源: smilenicky.blog.csdn.net,作者:smileNicky,版权归原作者所有,如需转载,请联系作者。
原文链接:smilenicky.blog.csdn.net/article/details/102648862
- 点赞
- 收藏
- 关注作者
评论(0)