前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我在赏金计划中发现的RACE条件漏洞

我在赏金计划中发现的RACE条件漏洞

作者头像
陈殷
发布2020-07-23 11:34:52
4750
发布2020-07-23 11:34:52
举报
文章被收录于专栏:山丘安全攻防实验室

部分翻译预览(新增“译者序”部分可跳过直接到正文):

author:Pravinrp

translator:陈殷

本文关键词:Race Condition Vulnerability

【译者序:这是一个竞争条件漏洞的示例 By Wenliang Du at Syracuse University

代码语言:javascript
复制
/* vulp.c */
#include 
#include
#define DELAY 10000
int main()
{
char * fn = "/tmp/XYZ";
char buffer[60];
FILE *fp;
long int i;
/* get user input */
scanf("%50s", buffer );
if(!access(fn, W_OK)){
/* simulating delay */
Laboratory for Computer Security Education 2
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");

该示例将用户输入字符串附加到临时文件/tmp/XYZ的末尾。由于代码使用root权限,所以它将检查用户是否实际上具有对文件/tmp/XYZ的访问权限。实际上,这是access()调用的主要目的。一旦程序验证了目标用户具有该特权,该程序将打开文件并将用户输入写入文件。

乍一看该程序似乎很不错。但是,它包含一个竞争条件漏洞。由于检查(access) 和使用(fopen)之间的窗口(the simulated delay) ,虽然它们共享文件名,但访问所使用的文件可能与fopen使用的文件不同/tmp/XYZ。可以使/tmp/XYZ为指向/etc/shadow的符号链接的恶意攻击者,可能导致用户输入附加到/etc/shadow。该程序以root权限运行,会可以覆盖任何文件。

漏洞危害:

一旦入侵者使用竞争条件攻击破坏了系统,就可以更改,操纵或窃取数据,更改权限,插入恶意代码,释放拒绝服务(DoS)攻击并停用安全控制。竞争条件攻击也可能包含API。在一个引人注目的案例中,FBI报告说,攻击者使用这种方法从位于加利福尼亚和内华达州的赌场通过现金提款自动柜员机从花旗银行窃取了超过100万美元。攻击者在60秒的时间内发送了几乎相同的查询。

正文:

我最近在Bug赏金计划中发现了RACE条件漏洞。

描述:

当设计为按特定顺序处理任务的计算系统被迫同时执行两个或多个操作时,就会发生条件竞争攻击。最终,应用程序被迫执行意外动作。这将导致应用程序进行安全利用。

攻击场景:

在这个项目中,每个创建好的管理员在其团队中只能新增3个三个成员。

但是,我通过使用RACE条件竞争漏洞创建了4个团队成员。

我遵循的步骤是:

1.单击添加团队成员按钮发出请求并使用burp捕获该请求

2.” 邮件和姓名”将会作为被攻击字段以利用条件竞争漏洞。

3.接下来,我们需要配置intruder来准备进行RACE条件竞争攻击。

首先我们需要设置屏幕截图中所示的参数值。

现在我们需要更改发送请求的线程数。这一步是最重要的一步,线程设置得高一些,发送到服务器请求包速率就越大。

4.现在,在intruder选项中单击“attack”。

5.Burp将在点击的一瞬间向服务器发送请求。由于存在RACE条件竞争漏洞,我成功地添加了4个团队成员。现在,我的团队中共有4位团队成员。(脱敏处理过的截图)

成功利用!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 山丘安全攻防实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 描述:
  • 攻击场景:
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档