• [测试技术分享]easyFuzzer使用案例分享


    easyFuzzer使用案例分享

    1、简介:

             easyFuzzerwooyun的一位白帽子(光刃)提供的一款用于fuzz文件的工具。平时主要是和网络协议安全打交道,和本地软件安全打交道比较少,所以没怎么关注这款软件,但是今天发现YSPC客户端多了一个视频编辑的功能,而且还做成了单独的编辑器,在对这个编辑器进行安全评估时我当然想到了本地溢出的一些安全问题,这让我重新关注了这款软件,也就有了下文的实际案例来说明这款软件的用法。

    具体使用说明和文件下载地址:

    http://bbs.pediy.com/showthread.php?t=193340

    2、实际案例:

    YS视频编辑器播放库解析不当,可能存在被溢出利用的安全隐患

    问题描述:

        YS视频编辑器使用了2方播放库,该库在解析一些定制的畸形视频文件时会崩溃,根据一般的经验为对文件数据格式解析不当造成溢出,这种看似普通bug的问题往往可以利用来进行恶意攻击,一旦利用成功,可以在用户端执行恶意代码。

    测试步骤:

    (1)、  使用easyFuzz导入并生成畸形MP4文件,如图:

    clip_image002

    clip_image004

    (2)、  打开YS视频编辑器,以此选择导入生成的畸形文件,并添加到编辑栏,如图:

    clip_image006

    (3)、  选择某个畸形文件并点击加入,在进行视频预览时编辑器崩溃。

    clip_image008

    clip_image010

    问题扩展

             崩溃的点存在于不同的地方,有的在导入视频时即崩溃,有的在拖入编辑区崩溃,还有的在播放视频文件时崩溃,故需要全面排查。    

             如果该问题可以进行利用攻击,攻击手法一般是使用社会工程学欺骗用户去添加该带恶意代码的视频文件,最终利用该漏洞执行这些恶意代码。

    解决建议:

    (1)、  在播放库中对播放文件进行严格的数据校验,包括但不限于:数据长度、类型、范围,并建议使用白名单的校验方式,即只允许指定的数据通过,对于指定之外的数据不做处理。

    3、总结:

             由于YS编辑器并不能直接关联播放MP4文件,而是需要手动拖放的过程,因此不能像说明文档那样,直接使用easyFuzzer关联程序进行Fuzz,因此,需要写一个调用播放库的demo实现自动化测试,流程如下:

     
      clip_image011
  • 相关阅读:
    java-String类
    多线程的细节
    java-多线程的练习----妖,等待唤醒,代码重构,lock到condition
    javascript函数的声明和调用
    表单
    java-多线程的入门_进阶总结
    uboot命令
    u-boot移植 III
    u-boot移植 II
    汇编词典
  • 原文地址:https://www.cnblogs.com/fishou/p/4172564.html
Copyright © 2020-2023  润新知