- 天线宝宝说害怕
-
随着数字电视的普及,模拟电视信号将停止播放,对一家几台电视机来说,迫切希望用一台机顶盒带多台电视机的愿望,这里介绍一些电子刊物讨论方法,共大家参考:
一、破解思路
有线电视加密的原理是这样的:电视台把接改来的电视信号先输入数字加密设备,把电视信号通过算法加密后向外输出终端的解密设备(机顶盒子)解密后输出普通的射频信号,再送到我们的终端接收设备,由电视放出画面。因电视只能是接收普通的射频信号(模拟信号),所以只能解密后再输入电视,由电视放出画面。有线电视加密法有多种,这里的是使用“加扰法”。在加密到解密这段线路,要想非法接入偷接电视信号,成功的可能性几乎是10000000分之一。但经解密器(机顶盒)解密后的信号任何可以常接收电视信号的电视机都能播放(即通用性,也可说是共用性),这就是破解的切入点(破解软件也需要切入点)。既然这样,但为什么一个机顶盒只能接一台电视机用呢?我也试验过,当通简单的方法接上两台电视机的时候,什么画面也没有了(因机顶盒有智能的识别功能)。问题就在这里,也是我要教会大家的精要所在。
至于如何利用这个“切入点”进行我们的“小人”行为呢?我们通过什么手段来欺骗机顶盒,让他以为是一台电视机呢?(就如破解软件的时候,我们有时也要采用欺骗的方法来进行破解)。我将会在下一点“破解原理”中向大家说明。
二、破解原理:
装在我们家里的那个盒子的工作原理:经加密的信号经输入端子输入,由其内部有关电路解除干扰信号(加扰法加密),再经输出端子输出正常的信号。其解密电路是否工作要有一个外部条件,就是电视的高频头反馈回来的信号。如果没有这个信号反馈回机顶盒,则其解扰电路不工作,照样输出未解密的信号,因而不能正常收看。其解密的频段分做若干段解密,如电视正在接收3频道,则电视的高频头就反馈3频道的谐振频率给机顶盒,机顶盒就能输出1——5频道的正常信号,如此类推。
因此可用以下两种方法进行破解:
1、把机顶盒放在其中一台电视机(下称电视1)高频头附近,让其可以正常收看,再用分支器从输出端分支出信号到另外的电视机。这样的做法的一个缺点:就是另外的电视机只能接收电视1接收的频道附近的5个频道。
2、用非与门电路或555电路制作一个开放式多谐振动器,其谐振频率只要能履盖有线电视的整个频段即可。(制作成本约6元左右)把这个谐振动器放在机顶盒的旁边。让机顶盒能接收到振动器发出的信号,再用分支器从机顶盒的输出端分支出多台电视机,这样,所有电视机就能接收所有频道的信号了。(下次发图)
3、用高频三极管如9018做一个高频发射电路,利用射频输出再次发射,只要小小发射功率,让机顶盒能接收得到即可。或用同轴视频线分支接入输入或输出端,的除去外层屏蔽线,只留中间的线长约1米,把这线绕在机顶盒。让泄漏出来的信号感应给机顶盒接收。
破解电视机顶盒,可接多台电视
游走在灰色地带,大打擦边球的数字电视机顶盒共享器
随着有线电视数字化发展进程的加快,数字电视这一新兴的电视观看及传输方式已经开始被更多的普通市民所熟悉,数字电视以接近于DVD的画质和立体声甚至5.1声道伴音这两大最明显的特点受到了不少有线电视用户的关注,同时更多可选择的电视台、点播节目也为丰富市民的业余生活增添了不少色彩,不过在数字电视刚刚起步的萌芽阶段,还有多的不足和缺点需要改进。
按照国际惯例,数字电视机顶盒(SET-TOP-BOX,简称STB)分为数字地面STB、数字卫星STB、数字有线STB和网络STB这4种,目前正在大力发展的数字电视类型是数字有线STB,是目前成本最为低廉,也最适合大力向普通市民所推广的。整体来说,数字机顶盒以支持HDTV和互动性作为发展方向,而就目前的机顶盒产品来看,一部机顶盒内包括了接收数字信号的调制解调芯片、视频信号编解码芯片、音频处理器、音视频数模转换芯片等,一些高端的机顶盒中甚至还会整合安全芯片甚至可录像硬盘,可见数字电视机顶盒在未来的发展空间还是相当宽广的
上图中的三部机顶盒中包括了目前所使用的三款不同品牌、型号的机顶盒,其中最上方的创维C6000采用了意法的Qami5516方案;熊猫3216采用了意法的5516芯片,带有180MHZ的CPU,而最下方的银河则采用了最为简单的富士通功能单芯片H20A,虽然这三种机顶盒在内部的设计上有一定的区别,但它们都是需要通过插入数字电视智能卡才能够工作的,而数字电视智能卡就相当于一个人有了驾照才能合法地驾驶汽车一样。
在使用模拟电视信号的时候,大家只需要申请有线电视开户之后就可以在家中通过自带电视信号调谐器的电视观看节目,如果有多部电视的话只要购买有线电视信号分配器就可以在所有的电视上观看有线电视。而数字电视却将这种免费的电视信号共享给“封杀”了,机顶盒需要在插入有效的智能卡之后才能使用就是为了保证数字电视信号不被盗用的一种方式,同时也能够保证数字信号不被盗版商用来作为盗版节目源。
为了保证数字信号不被盗用,数字电视内容管理方式以条件式接取(CA)和数字版权管理(DRM)作为基本保护机制,目前国内的数字电视机顶盒采用的管理方式就是条件式接取这种机卡分离的方式,用户必须通过专属的智能卡来取得授权才能够接收被解码的信号,而服务提供商也能够通过这种方式接收用户的信息,包括用户户名、地址、智能卡卡号和收看数字电视的费用等信息。这种机卡分离的机顶盒使用方式被美国、欧洲和亚洲等国视为数字电视发展的机顶策略。
DRM采用的是许可证管理策略,由数字电视信号运营商对节目源进行加密,在用户通过机顶盒发出节目接收请求之后系统会自动检查是否经过许可,而认证的方式也同样是通过IC卡等带有帐号、密码等信息的进行的,不过DRM管理的规格相当繁多:Windows Media的DRM、开放移动联盟OMA推出的DRM 1.0/2.0规格、UT-DRM、NDS、SecureMedia、WideVine、BesDRM等,规格的不统一使其并不被大多数有限数字电视运营商所接受。
由于数字电视信号必须通过机顶盒才能接收,同时采用了用户身份认证的防盗用方式,所以有线数字电视节目只有一部电视机搭配一部机顶盒才能够正常观看,在目前大多数市民家中同时拥有一部以上电视的这一情况下,如果希望每部电视机都能够收看数字电视的话必须购买数量相对应的机顶盒,这在一定程度上家中了消费者观看数字电视的成本,于是有一些厂家开始在有线数字电视共享上开始下功夫,纷纷推出名为数字电视机顶盒共享器的产品,以此实现对数字电视信号的共享。
目前的数字电视机顶盒共享器共有有线和无线两种,有线的共享器只需要将共享器与机顶盒接驳,并且通过音视频信号线将它与其它电视的AV接口接驳就可以使用,而无线的共享器则包括与机顶盒互联的信号发射器和与电视互联的信号接收器。
机顶盒共享器的功能介绍上将这种产品的优点共分为多显示终端信号共享和节约费用两大类,对于大多数购买这种产品的消费者来说,可能最能够吸引他们的是通过共享器可以节约机顶盒的购买费用和电视信息点播费,有了省钱作为最大卖点之后,这种产品自然更受关注。
虽然这种产品具有一定的实用意义,但是我们仔细看看就会发现这种所谓的共享器实际上就是一个音视频信号分配器,与机顶盒连接的接口包括了复合视频输入和模拟立体声音频输入这两个接口,而用于输出信号的则包括了复合视频信号输出和3.5毫米信号输出接口,并没有能够直接发送及接受智能卡用户信息的接口,这也就意味着即使是通过这样的共享器接驳其它电视之后也并不能独立选台,换句话说,如果客厅中的电视在通过机顶盒播放中央一套的电视节目,那么其它房间的另一台电视也同样只能够播放中央一套的电视节目
无线机顶盒共享其与有线机顶盒共享器一样都是通过音视频接口接受机顶盒上的第二路信号输出接口来实现数字电视信号的“共享”的,不过无线的共享器的传输方式是通过红外、调频或2.4GHz来实现的,值得注意的是,目前的机顶盒在背后的接口都带有两路信号输出接口,只要使用连接线将机顶盒的信号与两台电视连接就同样可以实现这样的所谓“共享”功能,而这样一来机顶盒共享器的作用也只有在不同房间都可以用遥控器控制机顶盒这种“遥控共享器”的功能了。
破解讨论综述
CA安全保障的三层关键:传输流的加扰,控制字的加密,加密体制的保护。
这三种技术是CA系统重要的组成部分,在处理技术上有相似之处,但在CA系统标准中是独立性很强的三个部分。加解扰技术被用来在发送端CA系统的控制下改变或控制被传送的服务(节目)的某些特征,使未被授权的用户无法获取该服务提供的利益;而加密技术被用来在发送端提供一个加密信息,使被授权的用户端解扰器能以此来对数据解密;而保密机制则用于控制该信息,并以加密形式配置在传输流信息中以防止非授权用户直接利用该信息进行解扰,不同的CA系统管理和传送该信息的机制有很大不同。在目前各标准组织提出的条件接收标准中,加扰部分往往力求统一,而在加密部分和保密机制则一般不作具体规定,是由各厂商定义的部分。
1、对传输流的加扰,DVB已有标准。目前在国际上占主流的有欧洲的DVB标准、北美国家的ATSC标准及日本的ISDB标准三种标准中,对于CA部分都作了简单的规定,并提出了三种不同的加扰方式。欧洲DVB组织提出了一种称之为通用加扰算法(Common Scrambling Algorithm)的加扰方式,由DVB组织的四家成员公司授权,ATSC组织使用了通用的三迭DES算法,而日本使用了松下公司提出的一种加扰算法。通用加扰算法是DVB标准组织推荐的对于TS流的标准加扰算法。目前,在欧洲的数字广播节目中普遍采用了这个算法。我国目前商业化的CA中,TS节目的加扰也基本上是采用的这个算法。如果从破解的角度,攻破这个算法的意义要远远大于破解智能卡和攻破CA系统本身。
2、对控制字的加密算法一般采用RSA以及3DES算法,各家CA厂商各不相同。值得一提的是DVB里有一个规定,提到的同密技术要求每个CA系统可以使用不同的加密系统加密各自的相关信息,但对节目内容的加扰必须采用同一个加扰算法和加扰控制字,可以方便多级运营商的管理,为多级运营商选择条件接收系统提供了灵活性。这就为黑客攻破智能卡创造了条件。
3、对加密体制,不同厂家的系统差别很大,其技术大体有两种: 一种是以爱迪德系统为代表的密码循环体制,另一种是以NDS系统为代表的利用专有算法来进行保护,由于牵涉到系统安全性,厂家一般不会公开。因此从破解角度,对系统的破解是难度也是比较大的。
第一章:CA智能卡的破解与反制
第一节 对于CA智能卡的破解分为两种,
1、从硬件破解的角度,完全地仿照正版卡来定制IC卡;
2、从软件破解的方向,将正版卡的程序读出,最后将程序写入IC卡中,就变成与正卡无差别的D卡了。
仿制正版卡,可以将IC卡的触点剥离下来,再将保护的塑料蚀掉,暴露出元件和内部电路连接,就可以绘制成电原理图,最后交给能订制生产的IC卡的厂家生产。这些仿制还有一个冠冕堂皇的名称叫“反向工程”。国内在深圳和厦门等地都有能生产定制IC卡的厂家,在利益的驱使下,他们往往不会过问敏感问题。
IC卡中的元件如果是通用元件,通常可以通过IC卡的功能原理的分析来确定,虽然困难,但总是可以最终确定。例如深圳目前直接使用流在市面上的ROM10与ROM11卡来制成D卡,ROM10与ROM11实际上是XX系统正版卡的“基础卡”,这些卡具有与正版卡相同的硬件基础,至于怎么流落到社会上的不得而知,但有一个事实就是大家应该都收到过安装卫星电视的短信,这是个可以想象的到的异常庞大的地下产业!
继续:IC卡中的元件如果是专用元件,确定元件的事情就变得极其困难和十分渺茫了。那么这个时候硬件仿制的路走不通了,那么看看软件仿真的路能不能走得通。
再看软件仿真的路能不能走得通前,首先阐明软件仿真的路能不能走得通有不同的判断标准。
如果仅以在一段时段中,软件仿真的D卡与正版卡都具有相同的条件收视功能来判断,那么无疑,从D卡的实践来看,软件仿真已经成功了。
但如果以任何时段中,软件仿真的D卡与正版卡都具有相同的功能,特别是对抗反制的功能来判断,那么我要说,同样无疑,软件仿真是不可能成功的。
因此我们仅承认这种事实就够了:自动对抗新的反制,使D卡与正版卡一样免除后顾之忧,肯定是D卡研究的终极目标。但是即便达不到这个目标,只要能保证一段时间的仿真成功,CA破解的商业价值就依然存在!
补充说明反制:由于D卡的成功,尤其是带AU(自动换Key0/Key1)的D卡程序的广泛扩散,正版服务商感到了巨大的压力,逐步开始采用种种反制手段,让D版的AU卡实效。
我们先研究一下这个反制是个什么东东:学习和搞嵌入式控制器开发的人都用过仿真器,如“伟福”系列的MCS-51的仿真器等。大家一定知道硬件仿真与软件仿真存在一个本质区别,即I/O功能的不同。一条取端口引脚值的指令就足以区分是硬件仿真还是软件仿真了。硬件仿真可以真实地取到引脚上的实际输入,而软件仿真得到的只能是不会变化的内存仿真值。
利用这个原理实现的反制程序分为两部分,前面的部分通过I/O端口的访问,区别出是真的硬件存在,还是软件仿真;后半部分对非法的仿真卡简单地返回主程序,不能解开Key0/Key1;对正版卡,则修改Key0/Key1,使之正确,然后返回主程序并保存key,保存的Key0/Key1用于ECM的解码。
从历次搜集的反制EMM中的方法中,可以将反制归纳为两种,一种是从硬件或软件上区别D卡与正版卡,从而产生条件分支指令,使D卡仿真的程序失效;另一种是调用D卡中不可能有的,只有正版卡硬件才具备的MAP子程序,使D卡无法执行正确的程序。
先介绍前一种方法:
使用硬件端口区别正版卡与仿真卡的反制方法,由于具有特殊性能的端口数的限制,因此不可能有多种变化,一旦Hacker知道了反制的EMM结构与原理,很容易就可以避开端口判断的指令,直接转到修改Key0/Key1部分。这虽然并不是程序指令的直接仿真,只能算是功能仿真,却可以使已知反制失效。
另外你也许会提出一些其他办法,如目前的一些Nagra系统在下行的EMM命令中加入了甄别真伪和“杀卡”指令,对于“正改卡”,毫不留情地清除卡中程序并且让它成为废卡。
我可以说,为了对抗“杀卡”,这类“正改卡”的程序如果采用Block技术,可以抵抗多数杀卡指令,同样能够使这类“正改卡”得以安全使用。
先写到这,后面介绍根据正版卡特有的机器指令代码,让正版卡能进行解码、而没有正版卡程序的仿真卡无法正确解码、从而获得KEY的EMM思路。
第二节:
以下介绍根据正版卡特有的机器指令代码,让正版卡能进行解码,而没有正版卡程序的仿真卡无法正确解码,从而获得KEY的EMM思路。
按照道理,D卡使用的是AVR或其他类型的CPU,“正改卡”中的程序与正版卡也不相同,照理这些卡中都没有正版ROM10/ROM11卡的程序。因此,用只有正版卡才有的特定机器指令代码作为密钥来解密key0与key1,自然是十分聪明的反制措施。
该反制的EMM以前146Dream TV可能曾使用过。目前XG有线又重新启用,大致在一个周期的8天中,有两天使用本类EMM,另外6天使用另一个“超级MAP”程序。
这种反制的具体思路是:
下行的EMM中携带的Key与Key1是经过加密编码的,不能直接使用。解开它们需要的密钥“种子”(即产生密钥的原始数据)的地址由下行的EMM给出。注意!EMM中并没有给出密钥“种子”,而是给出了它们在正版ROM10/ROM11卡程序存储区中的地址,这个地址是随机数,不同的key0/key1,地址就不同。它的值总是大于S4000,防止取到ROM10卡低端的无法读出的无意义内容。反制设计者设想,D卡或“正改卡”无法获得正版卡的内部程序,因此,即使给出了地址,D卡也无法取得正确的机器码作为密钥的“种子”,自然也就无法生成密钥,解开key0/key1了。
对于正版卡,按照给出的地址,取到16字节的机器指令代码,经过类似计算Hash效验的方法,产生正确的密钥,再对key0/key1进行DES编码运算,就解出正确的key0/key1了。
上面介绍的“利用正版卡程序随机地址处的机器码作为Key的解码密钥”的EMM反制方法非常厉害,曾难倒了一大批的高手。
对比一下昨天前一篇帖子中给出的EMM与上面介绍的EMM,就会发现,前一篇帖子中给出的EMM是一种简单的反制,只要知道了正确的Key0/Key1,再经过认真分析和思考,就会明白其反制原来并找出解出Key的方法,目前Dream TV的反制都属于这类简单反制;但上面今天介绍的EMM是一种高级和复杂的反制,即使知道了正确的Key0/Key1,也难以得知其反制的原理与找出解key的方法,目前XG有线和国外一些CA系统采用的是这类反制。由于XX的反制汇聚在低级和高级的两类难度上,所以黑客们怀疑这是两类不同水平的技术人员的作品。低级难度的反制是卫视服务系统内部技术人员的手笔,而高级的反制则直接出自CA系统研制人员的杰作。
两种级别的反制也将国内修改、编写D卡程序的高手分成了两类:有一些写一点程序应付低级反制的,往往采用“头痛医头、脚痛医脚”的补丁程序,可以对付目前146-Dream TV的反制;只有少数高手中的高手具有整体编写程序以及仿真MAP功能的能力,能采用更合理的对抗策略,能研制出复杂程序和新类型的D卡,最终可以对付高级难度的反制。对付低级反制写出对抗程序的时间大约是数小时到几天,而对付高级反制找到方法并写出程序的时间往往需要数个月之久,而且还需要国内外Hacker 们的协同配合。国内高手中的高手人数很少,都是单兵作战和埋头苦干的,与其他高手之间一般互不交流。
本节介绍的“利用正版卡程序随机地址处的机器码作为Key的解码密钥”的EMM反制方法十分成功,但它采用程序的机器码作为解开Key的密钥,可能会出现以下几个问题:
1. 如果电视系统历史悠久,在用的卡可能有几种,那么可能产生内部机器指令码不尽相同的问题;
2. 如果电视系统想要更新程序,也可能存在部分尚未更新程序的正版卡,同样会产生内部机器指令码不相同的问题。这个问题还可能阻止正版卡通过下行信号进行的升级:我们设想一下,正版卡用户中,有的人天天看卫视节目,他们的卡顺利升了级,而一部分人外出,卡很久都没有使用了,刚回来想看卫视,结果因为卡的程序不对,无法收看,肯定对卫视服务商大发雷霆。在用户是上帝的外国,电视服务商对可能引起用户的怒气一定很忌讳的。
3. 对该反制最致命打击是,可以设法读出正版卡作为密钥的那一部分程序机器码,通过在D卡的硬件上安排外部EEPROM,存储量有64KB、128KB、256KB等,将正版卡作为密钥的程序机器码全部保存起来,解开KEY时,照样可以从外部EEPROM中取到与正版卡一样的解Key的密钥,来对抗反制,使该方法失效,这是该类反制的终结者。
经过了利用软件仿真在I/O功能上的区别进行的反制和利用正版卡指令代码作为密钥进行的反制之后,目前几个在运行的CA系统(146的Dream TV与其他卫视,XG以及国内一些地方的本地有线数字电视等)纷纷进入了使用MAP功能来进行反制的阶段。
使用正版卡中的MAP编码/解码协处理器进行反制,是正版卡在设计阶段就预留的终极反制杀手。可以看到,正版卡设计者防范于未然,预估到终有一天,第一道门(ECM与EMM的解码)将被攻破,预先留好了第二道门做最后的防守。未雨绸缪,是我们不得不佩服这些设计者的智慧与远见。
第三节 ()
在深入讨论MAP功能及其仿真实现之前,为了后续文章读起来不算费劲,需要先说明两个方面的知识:一是什么是收视卡防守的第一道门与第二道门? 二是EMM指令与Logging等知识。
今天让我们先说说什么是收视卡防守的第一道门与第二道门?
收视卡是防止非法收视的守门员,在卡中设计了多种加密方法,最主要的有解决收视功能的ECM和自动换key的EMM的解密,它们的解码是第一道门。ECM与EMM的编码与解码使用的虽是不同的方法,但都是固定不变的标准方法。不同的条件接收系统仅仅是编码/解码采用的数据有不同而已。举个例子,有的卡可以解开多个同一类型CA系统,该类卡是按照下行的ECM或EMM的系统标识(如146 Dream TV为4E和4F,XG有线为94和95等)选择不同的数据,而运行的程序基本相同的。
仍然以XX为例,ECM的编/解码采用DES与EDES算法,其原理早已公之于世。编/解码所用的S_Boxes数据也已经公开,并且在不同的系统中固定不变。与标准的DES相比,XX系统的DES只是多了对字节进行了反序排列而已。ECM使用的VerifyKey等数据,通过后门密码进入正版卡保留的数据空间,可以读出这些关键的信息,加上BoxKey等信息,只要能获得当前的Key0/Key1,就可以配合IRD解开解密收视用的控制字(Control Word),可以正常收看卫视节目。
ECM的解码可以解决收视的问题,但还需要手动输入Key0/Key1。如果要象正版卡一样自动换Key即所谓的AU,就需要能解开EMM,并能正确地找到并保存Key0/Key1。与ECM的解码相比,EMM的解码要复杂的多!经过Hacker的努力,EMM的RSA编码原理已经完全弄明白,所需要的PK,VK等数据也可以通过Hacker的软件和ROM10/ROM11卡的后门读出,再算出N1,P,Q,EP,EQ,IQModP,IPModQ,PPrimA,QPrimA等方便编程的数据,就可以顺利解出EMM。
收视卡的第二道门是对EMM 中Key解密的防守。它的方法没有固定的套路,可以任意变化。如XX系统的设计者安排了可以通过EMM中携带程序的执行,以及正版卡通过下行信号更新的EEPROM中补丁程序的运行来解码。正版卡设计者可能料到攻破第一道门是迟早的事,于是第二道门上的防守就成了最后的防线。前面章节介绍的几种对EMM中的Key0/Key1进行再加密,就是在第二道门上的防守。它的思路是:当EMM解开后,如果其中的Key0,Key1是经过加密的,D卡仍然无法得到正确的Key。
国内早期的D卡程序是移植国外Hacker 的,针对想收视的系统,修改了相应的数据就可以实现本地化,由于要得到正确的Key需要的解码方法没有固定的套路,Hacker不可能事先料到,总是要反制后分析它的原理,再更新部分D卡程序,进行对抗和补救。一般人没有自己编写D卡程序的能力,即使有写卡器掌握了写卡方法,但程序又难以得到,这些麻烦会迫使许多人放弃D卡,转而加入正版卡缴费收视的行列。
不过正版卡虽好,但其高额的收视费还是让国内广大爱好者望之却步,大家的希望还是寄托在D卡程序的完善上,希望终有一天,D卡能与正版卡一样不受反制。
- 黑桃花
-
机顶盒里面的卡是通过CA来操作的 ,即远程控制,不能通过调整机顶盒来实现。
- 真颛
-
那个卡是和机房服务器通信一般你改不了,除非你认识有线机房工程师,他可以给你改