D-Link的“福利”:开源固件包里放私钥彩蛋

恶意软件开发者并不是每一次都需要为他们的恶意软件来窃取或者购买一个有效的代码签名证书,有时候制造厂商在无意中的泄露,就会给黑客提供了便利。

被“临时工”泄露的私钥

这次泄露事件来自台湾的网络设备制造商D-Link(友讯),它在开源固件包里无意中泄露了公司内部使用的私有代码签名密钥。

荷兰的新闻网Tweakers获悉到了这个消息,一位网名为bartvbl的读者购买了D-Link DCS-5020L的安全相机,然后从D-Link源下载了固件包,这是经过GPL开源的。然而他在审计固件源代码时,这位读者发现了四个不同的做代码签名的私钥。

黑客可以对恶意软件进行签名

在测试后,该读者成功创建一个Windows应用程序,然后用D-Link的其中一个代码签名密钥进行了签名,现在似乎还有效。

然而另外三个代码签名似乎并没有什么卵用。

目前并不清楚这些私钥是否已经被恶意的第三方供应商所使用,这些私钥也可能被黑客用来对他们的恶意软件进行签名。由于许多安全检测技术都会对该签名放行,就连VirusTotal之类通过恶意样本检测的技术,也得先发现可疑文件才行。综合各种原因,这个签名证书的泄露的危害会不小。

专家分析和厂商回应

荷兰安全公司Fox-IT的Yonathan Klijnsma表示:

“该代码签名证书确实是一个固件包,版本号为1.00b03,其源码曾于今年2月27日发布。我认为这个事件是打包代码时出现的失误,这个代码签名证书只出现在特定的版本里。”

与此同时,D-Link对此事件做出了回应。他们撤销了该证书,并且发布了新版本的固件,里面没有包含任何代码签名认证。

作者:dawner

来源:51CTO

时间: 2024-10-26 00:04:06

D-Link的“福利”:开源固件包里放私钥彩蛋的相关文章

Myeclipse中怎么查看开源架包的源代码啊?

问题描述 Myeclipse中怎么查看开源架包的源代码啊?都是一些.class文件,看不了源码,有什么好点方便的方法吗??? 解决方案 引用Myeclipse中怎么查看开源架包的源代码啊?都是一些.class文件,看不了源码,有什么好点方便的方法吗???直接到开源jar包的官方网站下载源代码啊!!然后在eclipse里引入jar包后,在build path里,选中jar包,有个source attachment属性,把你下载的对应的源代码路径放上去就好了然后就可以像我们平时ctrl+左键快捷键查

Google-Guava Concurrent包里的Service框架浅析

原文地址  译文地址 译者:何一昕 校对:方腾飞 概述 Guava包里的Service接口用于封装一个服务对象的运行状态.包括start和stop等方法.例如web服务器,RPC服务器.计时器等可以实现这个接口.对此类服务的状态管理并不轻松.需要对服务的开启/关闭进行妥善管理.特别是在多线程环境下尤为复杂.Guava包提供了一些基础类帮助你管理复杂的状态转换逻辑和同步细节. 使用一个服务 一个服务正常生命周期有: Service.State.NEW Service.State.STARTING

这款路由器是从FCC拯救开源固件的英雄

开源固件与FCC(联邦通信委员会)的规定一直是路由器领域的一大热门话题.近日,一家设计MIPS处理器的硬件公司表示,采用该公司处理器的无线路由器,将可以安装开源固件,并且保证不会与联邦通信委员会的规定相冲突.联邦通信委员会要求路由器制造商遵守规定,以防止第三方固件擅自修改无线发射频段和频率,干扰警用通信频道/天气雷达系统等. 特殊的MIPS处理器(图片来源:Imagination Technologies) 对于无线路由器的制造商来说,避免被处罚最简单的办法就是阻止用户安装开源固件.整个无线路由

把所有的jar包打进一个包里的Ant脚本Merge All jars into One jar

http://yulimin.javaeye.com/blog/27419 http://iamin.blogdriver.com/iamin/1218247.html 今天有个变态的需求就是这样的...于是有了以下的脚本... 把所有的jar包打进一个包里的Ant脚本Merge All jars into One jar <target name="AllJarsInOne"> <jar jarfile="AllJarsInOne.jar" ma

inux下的jython-Linux下运行jython脚本不识别jar包里的package名,报错,no modle ..

问题描述 Linux下运行jython脚本不识别jar包里的package名,报错,no modle .. Linux下运行jython脚本不识别jar包里的package名,报错,no modle ..Windows下可以 解决方案 可能是没有安装setuptools这个模块 http://pypi.python.org/pypi/setuptools 这个地方下载setuptools-0.6c11-py2.7.egg文件到本地,使用chmod +x setuptools-0.6c11-py2

ajax-在Java中有哪些包里边封装有Ajax

问题描述 在Java中有哪些包里边封装有Ajax 今天同学问到一个问题,问我知不知道有什么包里边封装有Ajax的类似于dwr的一种封装包,请各位路过的大神给推荐一下

求助各位大大,如何保存volley包里onresponse方法的返回值

问题描述 求助各位大大,如何保存volley包里onresponse方法的返回值 代码如下: Volley.newRequestQueue(getApplication()); RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext()); final HashMap<String,String> map = new HashMap<String,String>(); Request js =

c++-C++程序怎样调用软件R包里的函数

问题描述 C++程序怎样调用软件R包里的函数 5C 要写一个空间统计的C++程序,软件R里有这样的函数,想在C++程序里调用这个函数,有什么方式?有什么生成动态链接库之类的方法,谢谢! 解决方案 R软件附加绘制函数 解决方案二: 你看一下计算机图形学中的openGL函数看能不能解决

viewdraghelper-为什么在v4包里面的widget目录下找不到ViewDragHelper.class这个文件?

问题描述 为什么在v4包里面的widget目录下找不到ViewDragHelper.class这个文件? 程序报错 v4包里没有 解决方案 ViewDragHelper是Google最新V4包下一个算是比较隐藏的帮助类不过在sdk--->simple-->ui.里面可以找到. 解决方案二: 这是什么包,没有这个类当然报错了 解决方案三: class文件找不到. 解决方案四: 可能是V4包版本太低造成的,建议更换最新版本的包.