当前位置: 首页 > news >正文

昆明网站建设公司多少钱浙江省建筑培训网

昆明网站建设公司多少钱,浙江省建筑培训网,网站建设用什么开源程序好,互联网营销师证书有用吗安全之安全(security)博客目录导读 ATF(TF-A)/OPTEE之FUZZ安全漏洞挖掘汇总 目录 一、AFL简介 二、AFL的安装 三、代码示例及种子语料库 四、AFL插桩编译 五、AFL运行及测试 六、AFL结果分析 一、AFL简介 模糊测试(Fuzzing)技术作为漏洞挖掘最有…

安全之安全(security²)博客目录导读

ATF(TF-A)/OPTEE之FUZZ安全漏洞挖掘汇总

目录

一、AFL简介

二、AFL的安装

三、代码示例及种子语料库

四、AFL插桩编译

五、AFL运行及测试

六、AFL结果分析


一、AFL简介

        模糊测试(Fuzzing)技术作为漏洞挖掘最有效的手段之一,近年来一直是众多安全研究人员发现漏洞的首选技术。AFL、LibFuzzer、honggfuzz等操作简单友好的工具相继出现,也极大地降低了模糊测试的门槛。

        AFL(American Fuzzy Lop)是由安全研究员Michał Zalewski(@lcamtuf)开发的一款基于覆盖引导(Coverage-guided)的模糊测试工具,它通过记录输入样本的代码覆盖率,从而调整输入样本以提高覆盖率,增加发现漏洞的概率。其工作流程大致如下:

①从源码编译程序时进行插桩,以记录代码覆盖率(Code Coverage);

②选择一些输入文件,作为初始测试集加入输入队列(queue);

③将队列中的文件按一定的策略进行“突变”;

④如果经过变异文件更新了覆盖范围,则将其保留添加到队列中;

⑤上述过程会一直循环进行,期间触发了crash的文件会被记录下来。

二、AFL的安装

        下载AFL源码(https://github.com/google/AFL/),解压后,编译安装。

        make
        sudo make install

安装成功

安装目录

三、代码示例及种子语料库

        首先创建一个简单的vulnerable.c源文件,其功能无外乎接受一行命令行输入(一个整数、一个字符、再一个整数),然后根据中间这个字符当作运算符,输出四则运算结果。可以看见,这个被测程序的内容和普通的用户交互程序一模一样,看不出来任何不同,就是以stdin/stdout作为交互的输入输出,以main函数作为执行入口。

        作为模糊测试,AFL需要提供初始的种子输入。

        但实际上,你完全可以提供任何无意义的输入作为种子,模糊测试也一般能达到效果,只不过效率会低一些而已,是否提供有意义种子?提供多少?无外乎在种子获取难度和测试的效率要求之间进行权衡而已。

四、AFL插桩编译

        编译过程和普通gcc编译也是一样,除了使用的命令需要带上afl-前缀,因此

afl-gcc -g -o vulnerable vulnerable.c 

五、AFL运行及测试

执行命令,

afl-fuzz -i testcases/ -o outputs -- ./vulnerable

但是不出意外命令会报错,

[-] Hmm, your system is configured to send core dump notifications to anexternal utility. This will cause issues: there will be an extended delaybetween stumbling upon a crash and having this information relayed to thefuzzer via the standard waitpid() API.To avoid having crashes misinterpreted as timeouts, please log in as rootand temporarily modify /proc/sys/kernel/core_pattern, like so:echo core >/proc/sys/kernel/core_pattern[-] PROGRAM ABORT : Pipe at the beginning of 'core_pattern'Location : check_crash_handling(), afl-fuzz.c:7275

以及

[-] Whoops, your system uses on-demand CPU frequency scaling, adjustedbetween 781 and 4003 MHz. Unfortunately, the scaling algorithm in thekernel is imperfect and can miss the short-lived processes spawned byafl-fuzz. To keep things moving, run these commands as root:cd /sys/devices/system/cpuecho performance | tee cpu*/cpufreq/scaling_governorYou can later go back to the original state by replacing 'performance' with'ondemand'. If you don't want to change the settings, set AFL_SKIP_CPUFREQto make afl-fuzz skip this check - but expect some performance drop.[-] PROGRAM ABORT : Suboptimal CPU scaling governorLocation : check_cpu_governor(), afl-fuzz.c:7337

具体原因上述信息已经提到了,大致就是AFL测试时用到功能需要还没有开启,因此,切换到root用户执行上面报错中给出的命令即可。不过因为上述命令中修改的都是/proc/sys目录下的文件,二者Linux内核映射出来的逻辑文件,并非实际的磁盘文件,重启之后所有修改都会丢失,避免麻烦还是将这几个语句保存成为脚本有利于重复执行。

root用户切换
sudo su
echo core >/proc/sys/kernel/core_pattern
cd /sys/devices/system/cpu
echo performance | tee cpu*/cpufreq/scaling_governor

再次执行命令,

afl-gcc -g -o vulnerable vulnerable.c 

可以正常运行,输出一段信息后呈现如下界面,表示fuzz已经开始了,可以在该界面中查看运行时间、崩溃数量等信息。

ctrl-C结束fuzz,可以看到当前目录下已经多出了outputs目录,这是本次模糊测试的结果。

六、AFL结果分析

        引起崩溃的测试样例会位于outputs/crashes文件夹下,文件名大致形如id:000000,sig:08,src:000002,op:flip1,pos:3,本次测试中,获得的崩溃样例的内容为:

其中包含10/0三个可打印字符和一个换行符。并未出乎意料,就是这种输入会导致程序中发生除零意外。

crashes:导致目标接收致命signal而崩溃的独特测试用例queue:存放所有具有独特执行路径的测试用例。AFL输出文件:

crashes/README.txt:保存了目标执行这些crashes文件的命令行参数。

hangs:导致目标超时的独特测试用例。

fuzzer_stats:afl-fuzz的运行状态。

plot_data:用于afl-plot绘图。

afl-plot outputs plots

参考:GitHub - google/AFL: american fuzzy lop - a security-oriented fuzzer

http://www.yayakq.cn/news/149726/

相关文章:

  • 网站标签设置凡科做网站技巧
  • 帝国网站管理系统安装教程河北邯郸是几线城市
  • 如何申请自己的网站阿里云1m服务器可以搭建网站
  • 电子招标投标平台网站建设北京最大做网站的公司
  • 牛皮纸东莞网站建设技术支持金水郑州网站建设
  • 网站制作文件wordpress回复下载
  • 做拍卖网站有哪些想做电商运营怎么入手
  • 做旅游攻略网站整站网站模板
  • wordpress站点地图样式企业网站管理系统下载
  • 做网站简单吗wordpress语言文件编辑
  • 哪些网站可以做兼职设计做网站怎样调用支付宝接口
  • 比较好的网站建设公司怎么破解wordpress模板
  • 网站rp原型图怎么做aspx网站架设
  • 网站建设方案书下载肥料网站建设 中企动力
  • 怎么自建一个网站淘宝网站开发多少金额
  • 有什么做木工的网站个人网页设计dw
  • 电子商务网站是什么wordpress 后台设置
  • 手机端网站怎么做的网页设计与制作学些什么
  • 山东青岛68元建网站网站系统建设费用
  • 网站策划编辑是干嘛的wordpress增加访问性能
  • 网站积分的作用室内设计培训网课
  • 福建公司网站建设百度网站禁止访问怎么解除
  • 河南金建建设有限公司网站wordpress图片缓冲
  • 怎么做p2p的网站产品怎样推广有效
  • 网站如何做二级域名怎么做企业的网站
  • 汽车销售在哪些网站做推广免费发布推广信息的app
  • 做a 免费网站阿里云网站建设考试题目
  • 站长工具最近查询百度指数 网站
  • 怎样做理财投资网站惠州做网站优化
  • 做团餐的企业网站做外贸用什么软件找客户