首页 >>  正文

instance+of+an+object

来源:baiyundou.net   日期:2024-07-17

在前期内容中我们了解了模糊测试是如何发现漏洞的,本期我们将以开源网安模糊测试平台(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协议测试套件

测试过程

安装部署

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

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

  3. 使用工程机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能够帮助使用者发现测试目标的潜在问题,高效检测出未知漏洞,极大提升系统安全性。

","gnid":"9020c986cb4b36747","img_data":[{"flag":2,"img":[{"desc":"","height":"383","title":"","url":"https://p0.ssl.img.360kuai.com/t0113e361b02d340049.png","width":"900"},{"desc":"","height":"442","title":"","url":"https://p0.ssl.img.360kuai.com/t01f44f66418d621ce1.png","width":"869"},{"desc":"","height":"341","title":"","url":"https://p0.ssl.img.360kuai.com/t01f178b63bae543310.jpg","width":"554"},{"desc":"","height":"365","title":"","url":"https://p0.ssl.img.360kuai.com/t0176f16fd6f26146dd.jpg","width":"554"},{"desc":"","height":"501","title":"","url":"https://p0.ssl.img.360kuai.com/t0104d011401e22d0d8.jpg","width":"863"},{"desc":"","height":"379","title":"","url":"https://p0.ssl.img.360kuai.com/t01b71a13dd141f4417.jpg","width":"554"},{"desc":"","height":"379","title":"","url":"https://p0.ssl.img.360kuai.com/t01acb4f1812793530e.jpg","width":"554"}]}],"original":0,"pat":"art_src_0,fts0,sts0","powerby":"pika","pub_time":1695352656000,"pure":"","rawurl":"http://zm.news.so.com/e3e56a42a52cf07e3010f858f1842bbd","redirect":0,"rptid":"c68a6d9468ae15fb","rss_ext":[],"s":"t","src":"开源网安","tag":[],"title":"模糊测试面面观 | 车载以太网协议DOIP模糊测试实践案例分享

蓟易夜2575求JavaScript中instanceof运算符的用法
步厕差13361026521 ______ nstanceof和typeof都能用来判断一个变量是否为空或是什么类型的变量. typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined.我们可以使用typeof来获取一个变量是否存在,如if(...

蓟易夜2575instanceof和typeof运算符的区别详解 -
步厕差13361026521 ______ 一.instanceof运算符: 此运算符可以判断一个变量是否是某个对象(类)的实例,返回值是布尔类型的. 想要理解它的作用,必须对面向对象有所理解: 代码实例如下: .代码如下: var str=new String("antzone"); console.log(str instanceof String);...

蓟易夜2575java 中 instanceof 怎么理解,能否举个例子,看了书还是有点模糊 -
步厕差13361026521 ______ instanceof 类似一个符号一样,类似+号,-号,=号这种的,你可以这样理解的举个例子哈,假如现在我有两个父类,Person类和Animal类,现在有以下关系Student extends Person(学生肯定是一个人,所以学生类继承人类)Dog extends ...

蓟易夜2575什么是instanceof????
步厕差13361026521 ______ 判断指定对象是否某类型的对象 比如,你的程序中,如果Employee是从Manager间接或直接继承的 那么 "e instanceof Manager"返回true 否则返回 false

蓟易夜2575one+instance+of+windows+enabler+is+enough是什么意思 -
步厕差13361026521 ______[答案] one+instance+of+windows+enabler+is+enough的意思Windows启用一个实例是足够的例句:1.Select this check box if you want to create a windows service to run the instance on this computer. 如果希望创建windows...

蓟易夜2575instanceof是java里的保留字吗?? -
步厕差13361026521 ______ 是Java保留关键字.它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据.可以用在继承中的子类的实例是否为父类的实现

蓟易夜2575java的instanceof -
步厕差13361026521 ______ 比堆内存的对象,也就是引用的对象.

蓟易夜2575关于 instanceof -
步厕差13361026521 ______ 你已经自己发现问题了 instanceof 不能作用在两个没有继承关系的类上 但这是编译期的判定你上面是Object引用 他和所有类都有关系 当然可以用instanceof 你下面用Dog2引用 他和Person没有继承关系在编译就能判断出来所以再次理解instanceof 编译期他先看引用类型运行期他看实际类型只要d是Person的类型或其子类型 返回都是true

蓟易夜2575instanceof有什么作用 -
步厕差13361026521 ______ 判断对象是否属于某个类,一个用处就是可以确定有哪些可用的properties和method等

蓟易夜2575java中 instanceof 运算符的用法 -
步厕差13361026521 ______ AA只能是一个对象,而BB只能是一个类名,不能为变量,instanceof的作用就是判断这个对象是否属于BB这个类或其子类的实例,明确了吧!

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024