• 模糊测试面面观 | 车载以太网协议DOIP模糊测试实践案例分享


    在前期内容中我们了解了模糊测试是如何发现漏洞的,本期我们将以开源网安模糊测试平台(SFuzz)在车联网行业的实践为例,针对车载以太网DOIP协议详细阐释在实际过程的漏洞发掘过程。

    在开始之前我们先来了解几个名词。

    车载以太网

    用于连接汽车内各种电气设备的一种物理网络。在传统以太网协议基础上,改变了物理接口的电气特性,并结合车载网络需求定制了一些新标准。车载以太网主要涉及OSI的1、2层技术,同时车载以太网同时支持TSN/TTE、TCP/IP、DOIP、SOME/IP等多种协议或应用形式。

    DOIP

    一种用于汽车诊断和通信的协议,它允许车辆的电子控制单元(ECU)之间以及车辆与外部诊断设备之间通过互联网协议(IP)进行通信。DOIP的主要目的是提供高速、安全和可靠的诊断和编程通信,以支持车辆的诊断、维护和编程等任务。

    随机种子

    计算机所产生的随机数是通过一串很长的序列数模拟随机数,故称为伪随机数,在实际应用这些随机数时,这些随机数一般都能具有真实随机数的所有概率性质和统计性质,因此可以产生许许多多的序列伪随机数,一个序列的第一个随机数对应一个数,这个数称为种子数。

    了解以上名词后我们来看看车企是如何使用SFuzz发现车联网系统中的漏洞的。

    环境信息

    测试工具:SFuzz V3.0

    操作系统:Ubuntu 18.4

    被测件:某型号DOIP设备(客户设备,不便透露具体信息)

    测试套件:DOIP协议测试套件

    测试过程

    安装部署

    • 准备一台计算机,系统可以是Linux、Windows、Mac,该企业使用Ubuntu 18.4系统计算机;

    • 下载SFuzz V3.0安装包,按照安装手册进行部署安装,并导入DOIP协议测试套件;

    • 使用工程机RJ45接口直连被测件,使用ping + IP(被测件IP)确定被测件可以正常通信。

    测试执行

    登录SFuzz平台,选择“协议模糊测试“功能进行测试用例创建,配置对应的监视器,用于监控测试用例运行情况。本次测试使用TCP监视器。

    进入测试启动页,选择对应的测试代理和种子数开始测试。

    启动测试用例查看运行过程,同时监视被测件返回的日志。

    通过SFuzz平台测试界面,发现当测试进行到第60次迭代时,平台返回了漏洞警报,我们注意到被测件的日志中出现了崩溃提示。同时,我们使用的TCP监视器也监视到了端口关闭,开始持续上报缺陷信息。从控制台日志可以看到错误提示:

    terminate called after throwing an   instance of std;;bad alloc!

    what():std: :bad alloc

    Aborted

    漏洞验证

    此时我们可以使用SFuzz平台提供的“重放“功能来精准的定位漏洞。

    通过重放我们可以精准的定位到第60次是一个协议漏洞,它将会导致被测件发送崩溃。我们可以通过下载对应的bin文件(攻击报文),将其提供给开发人员深入分析,尽快修复。

    分析总结

    通过多次验证上述测试过程,发现在向被测件的DOIP协议服务传入特定的变异数据包时,会发生崩溃现象。我们可以判断这是一个真实的未被识别的漏洞,而开源网安模糊测试平台SFuzz能够帮助使用者发现测试目标的潜在问题,高效检测出未知漏洞,极大提升系统安全性。

    模糊测试面面观 | 揭示真实世界中的漏洞发现过程

    模糊测试面面观 | 模糊测试是如何准确定位问题的?

    模糊测试面面观 | 模糊测试是如何发现异常情况的?

  • 相关阅读:
    java基于ssm+vue网络考试信息网站
    Hadoop之HDFS分布式文件系统
    阿里云服务器系统怎么选?Alibaba Cloud Linux操作系统介绍
    Ubuntu 多用户管理及 SSH 远程连接
    [附源码]SSM计算机毕业设计智慧农业销售平台JAVA
    杭电oj 2043 密码 C语言
    存储过程、Statement详解
    云呐|机房监控服务平台,机房监控服务平台有哪些
    界面控件DevExpress WPF地图组件,助力轻松搭建自己的地图数据服务器!
    CITE2022丨中科创达发布一站式交钥匙边缘计算解决方案 解锁边缘应用落地新方式
  • 原文地址:https://blog.csdn.net/weixin_55163056/article/details/133160707