AddressSanitizer使用记录

 http://theelectronjungle.com/2015/02/15/use-after-free-in-vlc-2.1.x文中,对vlc的uaf漏洞进行分析,其中采用了AddressSanitizer对漏洞进行分析。下面为AddressSanitizer的简单使用。

1.      准备

官网:https://code.google.com/p/address-sanitizer/wiki/AddressSanitizer

版本要求: LLVM3.1 或者gcc4.8(我选择的linux发行版为ubuntu14.04)

sudo apt-get install clang-3.3

Ubuntu14.04的默认gcc版本为4.8

 

2.      使用

编写有漏洞的代码uaf.c:

#include <stdlib.h>
int main() {
  char *x = (char*)malloc(10 * sizeof(char*));
  free(x);
  return x[5];
}


2.1 clang编译命令:

clang -fsanitize=address -O1-fno-omit-frame-pointer -g uaf.c



2.2  gcc编译命令:

gcc -fsanitize=address -O1-fno-omit-frame-pointer -g uaf.c



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值