Vous êtes sur la page 1sur 31

Les Chroniques du

Dragon Vert

VERSION 1.00
EDITION DU 08-12-00

Les chroniques du dragon vert

TABLE DES MATIERES

TABLE DES MATIERES..................................................................................................................................................


REMERCIEMENTS..........................................................................................................................................................
PARTIE N1 : LE MATRIEL.........................................................................................................................................
1.1 LE DCODEUR............................................................................................................................................................
1.2 LE PRINCIPE DES CARTES PUCES DE CONTRLE DACCS......................................................................................
1.3 LES CARTES OFFICIELLES .....................................................................................................................................
1.4 LES CARTES MULATRICES ..................................................................................................................................
1.5 LES PROGRAMMATEURS.............................................................................................................................................
1.6 LES OUTILS DE DIALOGUE.........................................................................................................................................
PARTIE N2 : LES LOGICIELS......................................................................................................................................
2.1 LES LOGICIELS POUR WAFER......................................................................................................................................
2.2 LES LOGICIELS DE PROGRAMMATION........................................................................................................................
2.3 LES LOGICIELS DE COMMUNICATION.........................................................................................................................
PARTIE N3 : UN PEU DELECTRONIQUE..............................................................................................................
3.1 GNRALITS..........................................................................................................................................................
3.2 LES COMPOSANTS....................................................................................................................................................
3.2.1 Les composants Passifs ............................................................................................................................
3.2.2 Les composants Actifs ..............................................................................................................................
3.3 LES CIRCUITS INTGRS...........................................................................................................................................
3.4 LES CIRCUITS IMPRIMS..........................................................................................................................................
3.4.1 gnralits......................................................................................................................................................
3.4.2 Matriel ncessaire........................................................................................................................................
3.4.3 Principe de ralisation...................................................................................................................................
3.4 LES MOYENS DE CONTRLE.....................................................................................................................................
PARTIE N4 : LE SYSTEME SECA MEDIAGUARD................................................................................................
4.1 GNRALITS..........................................................................................................................................................
4.2 LES BUGS ET FAILLES CONNUES DU SYSTME.........................................................................................................
4.2.1 Le bug C1 40, effet de bord des commandes C1 3C / C1 3A.........................................................................
4.2.2 Le bug C1 34 (record buggs)........................................................................................................................
4.3 COMMENT ET POURQUOI UNE M.O.S.C..................................................................................................................
4.3.1 Pourquoi.........................................................................................................................................................
4.3.2 Comment........................................................................................................................................................
4.3.3 Rcupration du PPUA et de la MK1............................................................................................................
4.4 COMMENT CRER UNE MK2 SUR LE PROVIDER 00 00............................................................................................
4.5 LES MODIFICATIONS USUELLES SUR LES M.O.S.C..................................................................................................
4.6 DCRYPTER LES TRAMES SUPERENCRYPTES (PRINCIPE)........................................................................................
4.6.1 Prparation....................................................................................................................................................
4.6.2 Dcryptage cas n1........................................................................................................................................
4.6.3 Dcryptage cas n2........................................................................................................................................
4.7 EXTRACTION DES CLS, TRAMES C1 40 PP 81 4E....................................................................................................
4.8 EXTRACTION DES CLS, TRAMES C1 40 PP 80 54....................................................................................................
PARTIE N5 : LE SYSTEME VIACESS.......................................................................................................................
5.1 GNRALITS..........................................................................................................................................................
5.2 ATR.........................................................................................................................................................................
5.2 LISTE DES INSTRUCTIONS.........................................................................................................................................
5.2.1 Instructions de classe 87................................................................................................................................

Page 2 sur 31

Les chroniques du dragon vert


5.2.2 Instructions de classe BC...............................................................................................................................
5.2.3 Instructions de classe CA...............................................................................................................................

Page 3 sur 31

Les chroniques du dragon vert

REMERCIEMENTS

Avertissement: Les connaissances prsentes ici le sont des fins de recherche et


denseignement. L'auteur ne sera pas responsable des abus. Aucune garantie nest donne
sur lexactitude des informations et mthodes prsentes ici
Ce document est une compilation de donnes glanes sur le net, vues la lumire de mes
propres connaissances en lectronique et informatiques.
Mes documents de travail sont : La doc ZENER (God save ZENER !), La doc ZENER (je
la met deux fois car elle est vraiment trop top !), la SECA F.A.Q. 2.3 en franais, la doc
malitov, et malitov modifie et les posts de plein de gens de mon forum favori.
Jai allgrement pomp plein dinfos de ces doc sans lavis de leur propritaire respectif,
ils voudront bien me pardonner, sinon je vais tre carrment mal !
Donc, merci eux, et merci tous ceux qui, en me posant des questions, en me prouvant
quelques fois que javais tort, mont dmontr quil avaient envie de comprendre, cest
pour eux que jai fait ces chroniques.
Merci SecaFrance, TechnoFree, Sarah et Caramel Seca, qui ont contribus cette doc et
qui se sont tap la relecture.
Lisez les docs que jai cit en plus de celle ci car elles sont complmentaires !
Je remercie les vendeurs de darty pour leurs commentaires hilarants !
JE NE REMERCIE PAS
Les profiteurs
Les revendeurs

Page 4 sur 31

Les chroniques du dragon vert

PARTIE N1 : LE MATRIEL

1.1 Le dcodeur
Le dcodeur, est un dmodulateur de signal. Il peut tre satellite ou cble , son
rle est de transformer le signal lectrique en provenance du satellite ou du rseau cbl
pour en extraire les trames vido et les trames de contrle. Les dcodeurs sont
gnralement prvus pour une utilisation avec contrle daccs en intgrant une ou
plusieurs plate-forme permettant lutilisation de systmes de contrles daccs. Par
exemple MEDIAGUARD / SECA ou OpenTV / VIACCESS. On peut aussi trouver des
dcodeurs (ex : nokia) compatibles OpenTV / VIACCESS avec un port PCMCIA
pouvant recevoir un module pour une seconde plate-forme, en achetant le module
PCMCIA pour systme daccs MEDIAGUARD / SECA (on parle de module
CAM ) on obtient un dcodeur compatible avec les deux systmes.
1.2 Le principe des cartes puces de contrle daccs
Quest ce quil y a au juste dans ces cartes ?
Comment dialogue-t-on avec ces cartes ?
Les cartes puces de contrle daccs NE SONT PAS des cartes mmoire dans
lesquelles on stocke des donnes et quon peut lire (a, a sappelle une disquette !). Les
cartes puces de contrle daccs sont des automates, elles reoivent des commandes,
peuvent excuter des calculs (notamment cryptage et dcryptage de mots de 8 octets par
des cls de 16 octets) et peuvent stocker des donnes dans leur mmoire locale. Ces
cartes intgrent un microprocesseur avec un programme rsident et une mmoire
rinscriptibles.
Ces cartes dialoguent vers lextrieur au moyen dune liaison srie, elles on besoin pour
fonctionner de 5 signaux :

Une tension dalimentation 5V (Vcc)


Un signal de masse, rfrence des autres signaux (GND)
Un signal de donne serie (SDA)
Un signal horloge de cadencement (CLK)
Un signal de remise zro, pour linitialisation (RESET)

Elles respectent la norme ISO 7816 qui rgit les cartes puces (smartcard).
La carte nenvoie jamais de donnes ou de commandes de sa propre initiative
Si on veut tre superficiel, on peut rsumer ce principe :
1 Le deco envoie la carte une commande contenant ou non des donnes
2 La carte rpond avec ou non des donnes
par exemple voici quelques dialogues types
Commande de description du contenu de la carte

Page 5 sur 31

Les chroniques du dragon vert

Ex : combien de provider contiens-tu ? rponse : 3


Commande de description du contenu de la carte
Ex : quelles cls provider 00 contiens-tu ? rponse : F0
Commande de dcryptage vido
Ex : Donnes moi le mot c1 c2 c3 c4 c5 c6 c7 c8 dcrypt par cl 0C
rponse : d1 d2 d3 d4 d5 d6 d7 d8

LA COMMANDE : DONNES MOI TES CLES NEXISTE PAS !


On naccde jamais aux cls, on ne sait que dire si elles existent ou que les appliquer sur
un mot
Les transaction importantes sont signes laide dune cl. Pour tre interprte par la
carte la carte et lmetteur doivent connatre la cl en clair. La signature est une sorte de
mot de contrle calcul avec les octets de linstruction et avec la cl. Les cls qui
servent ce contrle sont des cls de management (MK) (cls 00 0A en hexa). Elles
ne sont connues thoriquement que du provider et de la carte, donc une instruction
correctement signe sera excute car prsume venir du provider autoris.
1.3 Les cartes officielles
Les cartes officielles (cartes off) sont les cartes livres par le provider du bouquet pour
lequel on a un abonnement, ou incluses dans un pack prt lemploi que lon trouve en
grande surface ou qui tombent des camions. On reconnat facilement ces cartes car
elles portent le logo du provider ; Elles peuvent tre actives ou non actives .
Les cartes off actives sont des cartes pour lesquelles on a remplis le formulaire
dinscription (avec sa vraie identit !) et pour lesquelles on paye ou on a pay un
abonnement officiel. Dans ce dernier cas on parlera de carte off active avec
abonnement arrt.
Les cartes off non actives ou encore jamais actives sont des cartes pour
lesquelles on sest tromp en remplissant le formulaire dinscription ( le provider na
jamais eu de demande dactivation !) et pour lesquelles on ne paye pas un abonnement
officiel. On les distingue car les donnes contenues sont lgrement diffrentes
Les cartes blanches sont des cartes livres avec certains dcodeurs MEDIAGUARD /
SECA pour pouvoir regarder les chanes gratuites dun satellite sans avoir
dabonnement. elles contiennent suffisamment de donnes pour permettre au dcodeur
de sinitialiser (phase de dmarrage du protocole MEDIAGUARD / SECA). A la date
daujourdhui on cherche toujours savoir si on peut injecter cette carte suffisamment
de donnes pour en faire un clone de carte off.
1.4 Les cartes mulatrices
Pour comprendre ce concept, il faut dabord comprendre ce quest une carte puce de
contrle daccs (voir 1.2).
Le principe dune carte mulatrice est de remplacer une carte off par une carte
microprocesseur, contenant lalgorithme de dcryptage des mots vido (pour voir les
programmes en clair).
Les microprocesseur les plus largement utiliss sont des microprecesseurs PIC de la
socit Microchip qui sont pas cher et relativement simples programmer. Il y a aussi

Page 6 sur 31

Les chroniques du dragon vert


des cartes processeur AT 8515 ou AT 2323ils sont associs un mmoire externe
accs srie contenant les renseignements de travail.
Le programme rsident doit tre renseign avec un minimum de cls valides et de
renseignements de base pour pouvoir travailler
Par exemple et et en vrac :
Un numro de srie
Un PPUA (Program Provider User Address, votre identifiant au niveau provider)
Un PBM (Package BitMap, masque des options achetes)
Une cl MK1 provider pour pouvoir rcuprer les 0C/0D/0E en autonome
Les cls 0C/0D/0E valides si on a pas de MK1
On appelle ces cartes des cartes Wafer
1.5 Les programmateurs
Il sont aussi nombreux que les cartes wafer, il servent reprogrammer le
microprocesseur et/ou la mmoire externe des cartes wafer pour sadapter aux contres
mesures des providers et autres changements de cls etc
Les plus connus pour les cartes base de PIC sont : ludipipo, jdm programmer, tait
programmer, locktronic.
Ils peuvent tre connects au port parallle dun ordinateur ou a un port srie.
Ils peuvent tre aliment par une alimentation externe ou fabriquer leurs tensions de
fonctionnement partir des tensions du port srie (+15V et 15V).
Les tensions ncessaires sont : 5V pour alimenter le circuit et une tension spciale de 12
14V ncessaire faire basculer le PIC en mode programmation
NOTA : les programmateurs autoaliments par le port srie sont extrmement sensibles
aux tensions fournis par ce dernier. NOTAMMENT, dans un soucis de consommation
les tensions NE SONT PAS +15v et 15V mais bien infrieures sur la majorit des
ordinateurs portables. Il est fortement conseill dutiliser un ordinateur de bureau pour
ce genre de programmateurs.
Je ne prtend pas que aucun portable ne fonctionnera ni que tous les ordinateurs de
bureau fonctionneront. Pour ma part jutilise le plus souvent un tait parallle aliment
ou le programmateur officiel Microchip. Avec ce matriel je nai jamais eu de
problmes de programmation.
1.6 Les outils de dialogue
Il en existe trois types :
1 La phoenix: permet un ordinateur de dialoguer avec une smartcard.
2 la season 1: permet un ordinateur d'muler une smartcard
3 la season 2: permet un ordinateur d'espionner la comm entre le deco et la smartcard
(et ventuellement d'muler une smartcard)
Linterface Phoenix est une carte avec un connecteur pour carte puce possdant un
quartz de 3.579 MHz et permettant un ordinateur denvoyer des messages une carte
off ou wafer, comme le fait le dcodeur. Il existe aussi une interface quivalente avec un
quartz 6 Mhz, on parle dinterface smartmouse mais il me semble quelle nest pas
reconnue par les outils les plus courants.
Page 7 sur 31

Les chroniques du dragon vert

Jen profite pour donner un conseil de base : a moins dtre un expert, choisissez
toujours les configurations que tout le monde utilise ! ! ! vous trouverez plus facilement
de laide. mme moi, je ne fabrique pas un DragonProg .
Linterface season 1 est une carte mulatrice, elle est trs proche des wafer mais on
remplace le processeur de la carte par un circuit permettant de la relier au port srie de
lordinateur. cest donc un logiciel de lordinateur qui va donc remplacer le PIC (ou
autre).
Linterface season 2 est une carte season 1 a laquelle on a rajout un connecteur de carte
puce avec des connections pin pin. Cest la carte utilise par ceux qui veulent
intercepter et tudier le dialogue entre un dcodeur et la carte puce. On cre laide de
ces cartes un fichier journal des commandes interceptes, en anglais on dit quon fait
un Log , on appelle donc ces cartes des cartes Logger (prononcer Logueur).

Page 8 sur 31

Les chroniques du dragon vert

PARTIE N2 : LES LOGICIELS

2.1 Les logiciels pour wafer


BOF, pas grand chose dire la dedans, ils peuvent tre plus ou moins adapts certains
types de dcodeurs, la partie critique cest davoir un fichier EEPROM avec des infos le
plus jour possible et le moins divulgues possible (infos prives cest encore mieux
CAD rcupres de sa carte off valide ou de celle dun copain, parent) pour viter les
contre mesures sur les cls publiques. Il y a des grandes familles, des grands types (type
secanix par exemple) et des fois avec une petite touche perso (secanix modifi toto par
exemple). Le maitre mot cest den essayer plein et den trouver un qui marche avec sa
config !
2.2 Les logiciels de programmation
Les logiciels de programmation servent programmer les composants des cartes wafer.
Ils ncessitent davoir un programmateur adapt son type de carte et davoir des
fichiers de logiciels pour wafer.
Ils acceptent gnralement en entre des fichier binaires (extension .bin) ou des fichiers
Hex (extension .hex). les fichiers Hex sont des fichiers textes dont le contenu est du
texte dcrivant les chaines binaires, leur avantage est de pouvoir tre posts en tant que
texte dans un message puis copis colls chez soit pour recrer le .hex laide du bloc
note. Il existe aussi plein doutils permettant de convertir un format vers lautre.
Les logiciels de programmation les plus connus sont : ICPROG, NTPICPROG, etc
2.3 Les logiciels de communication
A ne pas confondre avec les logiciels de programmation, ces logiciels sont fait pour
piloter les interfaces Phoenix ou/et season.
Leur fonctionnement est fondamentalement diffrent des logiciels de programmation, il
servent assister lutilisateur dans la cration de commandes destination de la carte ou
du dcodeur, ils sont capables de calculer la signature des messages si on possde une
MK valide pour la carte.
Ils sont capables en majorit de crer les logs des commandes envoyes ou interceptes
Les logiciels de communication les plus connus sont Angel, SecaMaster2000,
Windcrypt, Winexplorer.
NOTA : lutilisation de ces logiciels est dconseill aux novices, il faut avoir compris ce
que lon veut faire, et comment le faire AVANT de commencer.
Avec lmergence des cartes Off modifies (M.O.S.C. pour Modified Original Smart
Card) il est apparut une nouvelle gnration de logiciels de communications ou le
programmeur a mis sa connaissance du systme dans le programme et ou lutilisateur
na plus qua presser des boutons mme sil ne comprend pas bien le pourquoi du
comment. Le meilleur exemple de ces logiciels pour MEDIAGUARD/SECA est
Progoff.

Page 9 sur 31

Les chroniques du dragon vert

PARTIE N3 : UN PEU DELECTRONIQUE

3.1 Gnralits
Je ne souhaite pas faire ici un rel cour dlectronique. si llectronique est votre
passion apprenez la ! Il existe des livres et des cours trs bien fait. Le but de cette partie
est de pouvoir effectuer les vrifications de base, de pouvoir demander un conseil et de
pouvoir comprendre un tant soit peut la rponse.
Je vais surtout dcrire les composants couramment utiliss dans les montages proposs
sur le net.
3.2 Les composants
3.2.1 Les composants Passifs
Les rsistances sont des cylindres avec des anneaux de couleur qui servent indiquer
leur valeur. Elles opposent une rsistance dfinie par leur valeur au passage du
courant. Leur valeur est exprime en Ohm , not par la lettre greque Omga. On a
toujours la relation V=R*I o V est la tension (volts ou milivolts) aux bornes de la
rsistance, R la valeur de la rsistance en Ohm et I le courant qui traverse la
rsistance. Leur rle est de diminuer le courant dans un lment ou de grignoter
une partie de la tension, pour protger le composant qui est aprs dans le circuit. Trop
faible, on ne protge pas assez, trop fort on grignote trop de tension . Les
rsistances nont pas de polarit (sens de montage).
Les condensateurs (ou capacits) sont des composants qui peuvent avoir plein de
formes : rectangulaire, gros cylindre, forme goutte deau.Elles servent de
rservoir et permettent de lisser une tension ou de la nettoyer de ses parasites. Les
capacits sont exprimes en sous multiples du Farad (symbole F) on a donc
couramment le pico Farad (pF), le nano Farad (nF) le micro Farad (F).
En dessous de 1 micro Farad environ on ralise les capacits avec des matriaux
solides, elles ont la particularit dtre non polarises (pas de sens de montage).
Au dessus de environ 1 micro Farad on est oblig de faire des capacits chimiques,
aluminium (gros cylindres) ou tantale (goutte deau ou rectangle). Les capacits
chimiques sont polarises et on doit respecter le sens de montage (le pole + ou est
alors indiqu sur le botier), en cas de doute, dites que vous ny connaissez rien et
demandez au vendeur de vous montrer le + et le (mieux vaut se taire sur ce quon
sait et passer pour un con, que raconter des conneries et montrer quon est con !).
3.2.2 Les composants Actifs
Les diodes de redressement (ou diodes tout court !) sont des petits cylindre de verre
ou de plastique dont le role est de ne laisser passer le courant que dans un seul sens.
On les reprsente par un triangle avec une barre sur une des pointes un moyen
mnmotechnique de se rappeler le sens de passage : cest le sens donn par le
Page 10 sur 31

Les chroniques du dragon vert


triangle, comme si celui ci tait la pointe dune flche. La barre dessine sur la pointe
du triangle correspond lanneau dessin sur le composant lui mme.
Soit :

Quand on met le plus sur lanode (A) et le moins sur la cathode (K) de la diode, on
dit que la diode est polarise en direct (sens passant) quand on fait linverse on dit
que la diode est polarise en inverse. Un diode normale occasionne une chute de
tension denviron 0.6V quand elle est polarise en direct (tension de seuil).
Les diodes de redressement Shottky (ou diodes Shottky) sont des diodes de
redressement utilisant la technologie Shottky qui permet de rduire la tension de
seuil (0.3 0.4V)
Les diodes Zener (il est partout !) ne sont pas du lexcellent ZENER de la doc du
mme nom, mais un autre. Aussi appeles diodes avalanche, ces diodes ont une
sorte de tension de seuil en fonctionnement inverse, une tension bien prcise. Elles
servent donc fabriquer des tensions prcises en crtant le surplus de tension.
on les emploie pour fixer Vcc 5V par exemple. La rgle veut quon les emploie
toujours en srie avec une rsistance.
LES DIODES ONT TOUTES UN SENS A RESPECTER
Les transistors sont des sortes dinterrupteurs commande lectrique, ils ont trois
pattes : une commande, une patte pour entrer, une patte pour sortir. Respecter le sens
de montage.
Les rgulateurs de tension sont mi chemin entre composant et circuit intgr. Ce
sont des circuits trois pattes une entre, une masse, une sortie tension constante.
Respecter le sens de montage.
3.3 Les circuits intgrs
Les circuits intgr sont des composants volus permettant de raliser des fonctions
complexes, ils se prsentent sous la forme de rectangles de plastique noir avec une
range de pattes de chaque cot. Ils doivent tous tre aliment pour fonctionner. La
tension dalimentation est en gnral de 5V. Il respectent tous la mme rgle de
numrotation pour lidentification des pattes : soit une empreinte en demi cercle dans un
des petits cots, soit un point cot dune des pattes qui se trouvent cot dun des
petits cots (soit les deux). Ces repres servent identifier la patte 1, on numrote
ensuite dans lordre en suivant les flches.

Page 11 sur 31

Les chroniques du dragon vert


Les composants peuvent tre classiques (ou traversant ) et tre monts en faisant
passer les pattes dans des trous de la carte puis en les soudant ltain.
Ils peuvent tre CMS (ou Composant de Montage en Surface ), ils sont alors
beaucoup plus petit et les pattes partent lhorizontale, ils sont plaqus sur le circuit et
souds.
Il nest pas possible de remplacer un composant traversant par le mme en CMS
(rapport de taille de 1 pour 2 1 pour 4)
3.4 Les Circuits Imprims
3.4.1 gnralits
Un circuit imprim est une plaque de fibre de verre sur laquelle on a coll chaud
une feuille de cuivre. On va venir retirer le cuivre aux endroits non ncessaires pour
raliser par gravure chimique un dessin formant un rseau de pistes de cuivre. Puis
laide dun petit foret de 0.8 mm on percera les trous pour les pattes des composants.
3.4.2 Matriel ncessaire
Au dpart il vous faut un quipement relativement consquent pour raliser des
Circuits Imprim par vous mme. Voil grosso modo ce que je recommande
Des plaques de circuit imprim vierges, pr-sensibilises positives de 8/10eme
dpaisseur pour les waffer et au besoin 16/10eme pour les montages courants.
2 bassines type dveloppement photo
une machine insoler aux UltraViolets, on peut se la faire soit mme avec des nons
UV un peu de bricolage et une plaque de verre.
Du rvlateur pour plaques pr-sensibilises positives.
Une imprimante laser
Des feuilles de calque ou des transparent de rtroprojection pour laser.
Une machine graver (on peu faire sans, mais cest galre et sale)
Du perchlorure de fer (a bouffe le cuivre et tache tout le reste !)
De lactone
Une mini perceuse pour maquette
Un support pour en faire une perceuse colone
Des foret HSS ou carbure de 0.8mm (plusieurs, a casse trs vite)
3.4.3 Principe de ralisation
Bon, alors la manip cest :
Rcuprer un schma sur le net, le mettre lchelle en faisant des essais
dimpression sur du papier normal.
Quand cest lchelle, imprimer sur du calque ou un transparent avec une laser il
faut un contraste trs marqu. Ca sappelle un typon.
Tailler dans la plaque pr-sensibilise la surface ncessaire au montage (la face presensibilise est protge mais reste fragile, ne pas la rayer.

Page 12 sur 31

Les chroniques du dragon vert


Enlever la pellicule protectrice du morceau de circuit, placer le typon sur la vitre de
la machine insoler (dans le bon sens), puis la plaque, face sensible vers le bas,
allumer les nons pendant 2 4 minutes.
Plonger la plaque dans le rvlateur, le circuit apparat sur la carte en 1 ou 2 minutes
(en fait cest le vernis que lon voit). Rincer leau.
Plonger la carte dans le perchlorure de fer. Le meilleur rsultat est obtenu avec le
perchlo environ 35C. veiller a agiter en permanence. Le perchlorure est corrosif et
tache peu prs tout ce qui existe en orange plus ou moins fluo/pisseux : les doigts,
les fringues, TOUT, sauf le verre. Dans une machine cest chauf, thermostat et
touill tout seul et en plus ya un couvercle.
Contrler rgulirement la gravure en sortant la carte (mettez des gants latex type
chirurgien, cest le mieux) quand cest fini (5 15 mn), rincez leau, les pistes sont
graves. OUF !.
Nettoyez le vernis lactone, cest le mieux.
Percez les ventuels trous et rectifiez les bords de la carte au papier de verre/ la lime
Voil, si vous tes pas dprim vous pouvez vous lancer !
La bonne adresse cest Le Circuit Imprim Franais www.cif.fr
3.4 Les moyens de contrle
Si vous voulez tter un peu dlectronique, il vous faut un multimtre (testeur,
contrleur) yen a dans toutes les grandes surface essayez le rayon auto au besoin
Il sert mesurer une tension ou une rsistance.

Page 13 sur 31

Les chroniques du dragon vert

PARTIE N4 : LE SYSTEME SECA MEDIAGUARD

4.1 Gnralits
Lisez la FAQ SECA et la doc de ZENER !
Les commandes SECA sont construites sous la forme
C1 cc p1 p2 ll DATA
C1 entte, vaut toujours C1 (classe dinstruction)
cc commande
p1 paramtre 1
p2 paramtre 2
ll longueur de linstruction
DATA paquet de donnes pouvant contenir des donnes pures et/ou des sous
commandes appeles nano-commandes ou nano.
Une commande peut tre superencrypte pour plus de confidentialit, pour ce faire, on
trononne la partie DATA en paquets de 8 octets et on crypte chaque paquet, si le
dernier paquet fait moins de 8 octets on ne le crypte pas
4.2 Les bugs et failles connues du systme
4.2.1 Le bug C1 40, effet de bord des commandes C1 3C / C1 3A
Ce bug rsulte du fait que dans certaines conditions le buffer de la carte off ne
sefface pas. Etant donn que lalgorithme de cryptage/dcryptage du flux vido est
le mme que celui de superencryption, on va pouvoir dcoder une instruction
superencrypte sans connatre la cl de cryptage ! bon, je reconnais cest pas trs
clair dis comme a.
Voil comment a se passe sur un exemple
1 Tout dabord il faut remplir le buffer de dcryptage. Pour y arriver on va envoyer
une commande bidon la carte en lui faisant croire quelle est superencrypte :
C1 40 00 80 11 22 33 44 55 66 77 88 82 22 33 44 55 66 77 88 82 00
La carte met a dans le buffer, dcrypte pour voir et bloque parce quelle ne trouve
pas de signature valide dans la chaine dcode donc rponds 90 02 : signature
errone.
2 On prpare une dsencryption dECM (flux vido) en lui demandant lapplication
dune cl dont on sait pertinemment quelle nexiste pas ! et ce, sur une donne de
longueur nulle !
C1 3C 00 0F 00
La rponse est 90 1D cl inexistante, la carte na effectu aucun traitement, mais ce
qui est pire, elle na pas vid son buffer : il reste donc dans le buffer le mot 22 33 44
55 66 77 88 82 22 33 44 55 66 77 88 82 que la carte a dcrypt pour voir ce quil
contenait
3 Il ne reste plus qua rcuprer le buffer avec linstruction parfaitement valide :
Page 14 sur 31

Les chroniques du dragon vert


C1 3A 00 00 10
Rponse : 22 33 44 55 66 77 88 82 22 33 44 55 66 77 88 82 dcrypt avec MK0
SECA
4.2.2 Le bug C1 34 (record buggs)
L, je vous cache pas, lexplication technique est un peu coton ! je me contenterais
donc dun survol : la carte contient des zones de donnes, il est possible de demander
la carte de nous les lire. Dans ces zones de donnes il y a fatalement les cls
Super allez vous dire, mais non ! car quand mme il fallait sy attendre : il y a une
routine qui remplace les octets lus par des FF quand on lit les cls (vous ne vous
attendiez pas ce que ce soit si facile non ?). Heureusement pour nous on peut
prendre en dfaut cette routine et rcuprer des bouts de cl. Avec un peu de chance,
on a suffisamment de bouts pour finir de trouver la cl par essai systmatique (on
essaye toutes les combinaisons !). le plus simple pour le bug C1 34 : mettez la carte
dans une Phoenix, lancez progoff et tapez analyse : vous aurez directement les
rsultats.
4.3 Comment et Pourquoi une M.O.S.C.
4.3.1 Pourquoi
Il y a plein de raisons pour faire une MOSC :
Dabord, a fait moins louche davoir une carte off dans un dmo off dans son salon
plein dinvits, quune wafer avec des Circuits intgrs souds dessus, voir mme
des led qui clignotent. Dans le tas yen a bien un qui vous dnoncera parce quil ne
peut pas avoir la mme ou que celle quil a achet 1500 balles sur ibazar ne marche
plus !
Deuximement une carte wafer est une carte mulatrice SECA, elle mule seulement
le ncessaire pour avoir limage. A chaque contre mesure exploitant les diffrences
entre une wafer et une carte off il faut rajouter un petit bout de code pour
compenser ! le PIC 16F84 commence tre a ses limites et on compte dsormais le
temps de vie quil lui reste, il faudra a terme le remplacer par un processeur plus
puissant, cest un fait tablis. La relve commence dj pointer son nez (Funcard,
PICCARD2, etc). Par contre une MOSC mule parfaitement une carte off parce
que cest une carte off !
Ca devais arriver ! pendant que je finissait cette doc, est arriv en Espagne la contremesure qui pourrait acclrer le dclin des wafer/16F84. CSE sest mis mettre des
trames avec des signatures fausses et des cls bidons, les cartes wafer/16F84 ne
vrifiant pas la signature des instructions, elles se mettent alternativement jour avec
des cls bonnes/mauvaises.
Troisimement et je finirais l, cest une solution plus lgante du point de vue
intellectuelle, et plus gratifiante (IMHO).
4.3.2 Comment
Pour faire une MOSC, il faut une carte off. De prfrence une jamais valide, parce
que a peut laisser des traces, et que la carte off valide, faudra la rendre tt ou tard
(tt si vous merdez !). Il vous faut une interface phoenix, une season 2, un PC et la
dernire version de progoff et angel.

Page 15 sur 31

Les chroniques du dragon vert


Les MOSC sont extrmement intressantes quand on peut avoir accs une carte off
valide. On rcupre alors dune carte totalement valable, les informations
permettant dintercepter la descente des cls mensuelles (technique de lautoupdate)
et on fixe le masque des options tous les programmes possibles . la MOSC se
comporte alors comme une carte dabonn ayant accs au Full package . Les
informations recopier sont le PPUA et la MK1 pour chaque provider.
4.3.3 Rcupration du PPUA et de la MK1
Cette manip est faire POUR CHAQUE PROVIDER. Vous devez disposer dune
carte off en cours de validit, la votre ou celle dun proche.
Rcuprer le PPUA est la chose la plus facile : il vous faut une interface Phoenix et le
logiciel ProgOff, mettez la carte off dans la phoenix, lancer analyse carte et vous
avez les PPUA.
Pour les MK1 cest un peu plus compliqu, analyse carte essayera de vous les
ressortir en exploitant le bug C1 34. Si vous avez de la chance vous les aurez !
Si vous ne les avez pas, il vous reste deux solutions.
La premire cest que le fait dajouter des providers sur la carte accentue ce bug. Si
vous choisissez de modifier votre carte officielle pour laquelle vous avez un
abonnement, (sachant quil peut, peut-tre, rester des traces des manips) alors ajoutez
les providers UN PAR UN en analysant la carte entre chaque ajout, vous
maximiserez la quantit dinfos ressortie (pensez logger la manip, cest plus sur).
La seconde, cest de demander une ractivation de votre carte comme si vous tiez
parti en vacance, dcodeur teint, plus dun mois (si vous avez le dcodeur teint
vous ne recevez pas les trames de MAJ mensuelles, une trame de MAJ mensuelle
nagit que si celle du mois prcdent est passe (trames C1 40 pp 81 4E ..) vous vous
munissez du numro de srie de la carte et du numro dabonn, vous appelez le
service de ractivation (serveur vocal ou minitel), vous demandez la ractivation. Au
bout de quelques minutes une trame C1 40 pp 80 54 .. descendra vers votre carte,
vous devez la logger avec une season2 et Angel ou Secasim et sauvegarder le LOG.
Vous aurez ensuite dcrypter cette trame (voir paragraphes 4.6, 4.7, 4.8)
4.4 Comment crer une MK2 sur le Provider 00 00
CECI est la doc MALITOV que je ne fait que commenter
commande 01: Demande de 00 00 00 00 00 00 00 00 crypt par MK0 SECA
C1 5A 00 00 08
Rponse:
5A s1 s2 s3 s4 s5 s6 s7 s8 90 00
notez les 8 octets s
commande 02: Prparation du buffer avec superencription MK0 SECA (bug C140)
Le but de cette commande est de trouver la chaine de 8 octets, qui crypts par MK0
SECA donne 22 33 44 55 66 77 88 82
C1 40 00 80 11 22 33 44 55 66 77 88 82 22 33 44 55 66 77 88 82 00
Rponse:
90 02 (signature rrone, peu importe ! on a charg le buffer)
commande 03: commande 3C fictive pour rcuprer le buffer
C1 3C 00 0F 00
Rponse:
Page 16 sur 31

Les chroniques du dragon vert


90 1D
commande 04: Lecture du buffer : 22 33 44 55 66 77 88 82 dcrypt avec MK0 SECA
C1 3A 00 00 10
Rponse:
3A r1 r2 r3 r4 r5 r6 r7 r8 r1 r2 r3 r4 r5 r6 r7 r8 90 00
notez les 8 octets r Effectuer un
XOR entre:
10 01 21 yy 5F 90 52 11 pour yy, choisissez une valeur arbitraire. Nous verrons plus
loin pourquoi.
et
r1 r2 r3 r4 r5 r6 r7 r8
notez le rsultat:
z1 z2 z3 z4 z5 z6 z7 z8
commande 05: Prparation du buffer avec superencription MK0 SECA (bug C140)
C1 40 00 80 11 z1 z2 z3 z4 z5 z6 z7 z8 z1 z2 z3 z4 z5 z6 z7 z8 00
Rponse: 90 02
commande 06: commande 3C fictive pour rcuprer le buffer
C1 3C 00 0F 00
Rponse:
90 1D
commande 07: Rcupration de la chaine complmentaire de 10 01 21 yy 5F 90 52 11
C1 3A 00 00 10
Rponse:
3A x1 x2 x3 x4 x5 x6 x7 x8 x1 x2 x3 x4 x5 x6 x7 x8 90 00 ATTENTION:
Si les 8 octets trouvs commencent par 7, vous pouvez passer la commande 08
exemples:
7x x2 x3 x4 x5 x6 x7 x8 ->OK
2x x2 x3 x4 x5 x6 x7 x8 ->NON
Sinon, vous devez renouveler les oprations partir du XOR et faire varier loctet yy
jusqu trouver une srie de 8 octets valide (commenant par un 7).
Le but est de trouver une nano fictive 7 octets de donnes (7x) dont la signature est
complmentaire de 10 01 21 yy 5F 90 52 11. Selon les info que jai, les nanos 7x sont
ignores par la carte
commande 08: criture MK2 SECA
C1 40 00 00 20 x1 x2 x3 x4 x5 x6 x7 x8 10 01 21 yy 5F 90 52 11 22 33 44 55 66 77 88
82 s1 s2 s3 s4 s5 s6 s7 s8
Rponse:
90 00
A partir de maintenant, la MK2 est normalement cre dans la carte mais la date
dexpiration du provider 00 00 a t modifie une valeur qui sera diffrente pour
chacun de nous (elle est normalement 00 00). Cette modif est due un effet de bord de
l'instruction de cration de la MK2. Dtailons linstruction :
C1 Ok
40 management
00 prov l'index 00 (ici 00 00 SECA)
00 Cl utilise : MK0

Page 17 sur 31

Les chroniques du dragon vert


20 Longueur de linstruction : 32 Octets
x1 x2 x3 x4 x5 x6 x7 x8 nano 7x + 7 octets (ignore mais ncessaire)
10 01 effacer MK1 Prov 00 00 (existe pas de toutes faons!)
21 yy 5F date yy 5F ******** Voila pourquoi la date change et est diffrente
90 52 11 22 33 44 55 66 77 88 ajouter MK2 suivit de MK2 crypte par MK0
82 s1 s2 s3 s4 s5 s6 s7 s8 signature
commande 09: Test des cls disponibles SECA
C1 1A 00 00 0A
Rponse:
1A FF FF 0E 4C 00 F0 52 FF FF FF 90 00
Si 52 est ajout aprs F0, la MK2 a bien t cre.
Dcryptage MK2
commande 10: Prparation du buffer avec superencription MK0 SECA (bug C140)
C1 40 00 80 11 11 22 33 44 55 66 77 88 11 22 33 44 55 66 77 88 00
Rponse:
90 02
commande 11: commande 3C fictive pour rcuprer le buffer
C1 3C 00 0F 00
Rponse:
90 1D
commande 12: Rcupration de la MK2 en clair
C1 3A 00 00 10
Rponse:
3A k1 k2 k3 k4 k5 k6 k7 k8 k1 k2 k3 k4 k5 k6 k7 k8 90 00
La MK2 du provider 00 00 est: k1 k2 k3 k4 k5 k6 k7 k8 On va vrifier toutefois si elle
est correcte:
commande 13:
C1 5A 00 02 08
Rponse:
5A c1 c2 c3 c4 c5 c6 c7 c8 90 00 On teste la MK2 trouve avec Secador:
cl de dcryptage: k1 k2 k3 k4 k5 k6 k7 k8
mot crypt (CW): c1 c2 c3 c4 c5 c6 c7 c8
Appuyer sur dcrypter , on doit avoir:
00 00 00 00 00 00 00 00 comme DW si la cl est ok.
Voil, vous connaissez la cl MK2 de 00 00. Maintenant, vous allez pouvoir activer
votre carte.
4.5 Les modifications usuelles sur les M.O.S.C.
Ajouter des providers.
Ajouter des cls.
Modifier le PBM (masque des droits).
Vous pouvez suivre la doc Malitov, ou utiliser ProgOff, (recommand).

Page 18 sur 31

Les chroniques du dragon vert


4.6 Dcrypter les trames superencryptes (principe)
le principe est bas sur le bug C1 40.
Vous devez effectuer une premire tape de prparation de vos donnes, puis les
dcrypter.
4.6.1 Prparation
Faites on log pour obtenir la chane dcrypter.
Vous devez obtenir une chane C1 40 pp 8x LL (40) <DATA> (90 00), ou pp est
lindex du provider sur la carte logge et x la cl utilise. Si on a 97 xx ou 90 09 au
lieu de 90 00 cest bon aussi par contre si on a 90 02 ou 90 1D cest pas bon.
Il y a maintenant deux solution :
1 vous avez logg une carte off et vous ne connaissez pas la cl ayant servi au
cryptage : vous DEVEZ utiliser la carte off qui a servit faire le log avec une
interface phoenix.
2 Vous avez logg une carte wafer, vous navez pas la carte off logge, vous ne
voulez pas utiliser la carte off logge. Vous DEVEZ connatre la cl ayant servi au
cryptage.
Prparation dans le cas n1 : dcouper et ordonner le champ <DATA> en blocs de 16
octets, la dernire ligne pouvant tre incomplte.
Prparation dans le cas n2 : dcouper et ordonner le champ <DATA> en blocs de 8
octets, la dernire ligne pouvant tre incomplte.
4.6.2 Dcryptage cas n1
Basez vous sur le paragraphe 4.2.1 et passez les blocs de 16 octets aux instructions
C1 40 pp 8x 11 <BLOC> 00
C1 3C 00 0F 00
C1 3A 00 00 10
Notez le bloc de 16 octets renvoy par la carte, cest le bloc dcrypt
- si le dernier bloc fait moins de 8 octets, il nest pas crypt, recopiez le
directement la suite.
- Si le dernier bloc fait entre 8 et 16 octets, prendre les 8 premiers en double pour
en faire un bloc de 16, dcryptez ce bloc, a vous donnera une rponse de 2 fois
huit octets identiques, le dernier bloc dcrypt est constitu dun de ces blocs de
huit auquel vous collez le reliquat de la chane.
Exemple :
Le dernier bloc crypt est :
y0 y1 y2 y3 y4 y5
le dernier bloc dcrypt est :
y0 y1 y2 y3 y4 y5
Le dernier bloc crypt est :
x0 x1 x2 x3 x4 x5 x6 x7 y0 y1 y2 y3 y4 y5
on dcrypte x0 x1 x2 x3 x4 x5 x6 x7 x0 x1 x2 x3 x4 x5 x6 x7
rponse : D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7
le dernier bloc dcrypt est :
D0 D1 D2 D3 D4 D5 D6 D7 y0 y1 y2 y3 y4 y5

Page 19 sur 31

Les chroniques du dragon vert


4.6.3 Dcryptage cas n2
utilisez un programme contenant la fonction dcrypter, comme Secador par exmple.
Entrez la MK ayant servi au cryptage, et dcodez mot de huit octets par mot de huit
octets, terminez en recopiant le reliquat ventuel de longueur infrieure huit.
4.7 extraction des cls, trames C1 40 pp 81 4E
Bas sur un post de chouka et un post espagnol
Avant tout Logger une instruction C1 40 pp 81 4E dune carte en cours de validit.
Exemple : Je dsire dcoder la trame reue suivante et destine au provider situ en 01
C1 40 01 81 4E 40 p0 p1 p2 p3 p4 p5 p6 p7 q0 q1 q2 q3 q4 q5 q6 q7 r0 r1 r2 r3 r4 r5 r6
r7 s0 s1 s2 s3 s4 s5 s6 s7 t0 t1 t2 t3 t4 t5 t6 t7 u0 u1 u2 u3 u4 u5 u6 u7 v0 v1 v2 v3 v4
v5 v6 v7 w0 w1 w2 w3 w4 w5 w6 w7 x0 x1 x2 x3 x4 x5 x6 x7 y0 y1 y2 y3 y4 y5 90 09
je la dcoupe en groupes de 16 octets (aprs 40)
C1
p0
r0
t0
v0
x0

40
p1
r1
t1
v1
x1

01
p2
r2
t2
v2
x2

81
p3
r3
t3
v3
x3

4E
p4
r4
t4
v4
x4

40
p5
r5
t5
v5
x5

p6
r6
t6
v6
x6

p7
r7
t7
v7
x7

q0
s0
u0
w0
y0

q1
s1
u1
w1
y1

q2
s2
u2
w2
y2

q3
s3
u3
w3
y3

q4
s4
u4
w4
y4

q5
s5
u5
w5
y5

q6
s6
u6
w6

q7
s7
u7
w7

Je passe chaque groupe aux instructions avec une phoenix et la carte off logge
C1 40 01 81 11 40 <GROUPE> 00
C1 3C 01 0F 00 (donne une erreur 90 1D)
C1 3A 00 00 10
NB : Les valeurs des cls sont pour info
C1 40 01 81 11 p0 p1 p2 p3 p4 p5 p6 p7 q0 q1 q2 q3 q4 q5 q6 q7 00
90 02
C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Reponse : 3A F0 FF 5F BC BA DD BF F7 DF 7D DF FF CF FE 37 FF 90 00
-----C1 40 01 81 11 r0 r1 r2 r3 r4 r5 r6 r7 s0 s1 s2 s3 s4 s5 s6 s7 00
90 02
C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Reponse : 3A DF 7E 7B EF FF 4E EA BE FF DF 28 B5 BE FF CF DE 90 00
-----C1 40 01 81 11 t0 t1 t2 t3 t4 t5 t6 t7 u0 u1 u2 u3 u4 u5 u6 u7 00
90 02
C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Reponse : 3A BF 22 15 1F 21 15 5F 90 5D j1 j2 j3 j4 j5 j6 j7 90 00
-----C1 40 01 81 11 v0 v1 v2 v3 v4 v5 v6 v7 w0 w1 w2 w3 w4 w5 w6 w7 00 90 02
Page 20 sur 31

Les chroniques du dragon vert


C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Reponse : 3A j8 90 5C h1 h2 h3 h4 h5 h6 h7 h8 90 5E i1 i2 i3 90 00
-----C1 40 01 81 11 x0 x1 x2 x3 x4 x5 x6 x7 x0 x1 x2 x3 x4 x5 x6 x7 00
C1 3C 01 0F 00
90 1D
C1 3A 00 00 10
Reponse : 3A i4 i5 i6 i7 i8 82 EE BD i4 i5 i6 i7 i8 82 EE BD 90 00

90 02

Et puis aprs rajouter y0 y1 y2 y3 y4 y5 sans y toucher.


Soit : i4 i5 i6 i7 i8 82 EE BD y0 y1 y2 y3 y4 y5
En regroupant les rponses on trouve la chaine suivante:
F0 FF 5F BC BA DD BF F7 DF 7D DF FF CF FE 37 FF DF 7E 7B EF FF 4E EA BE
FF DF 28 B5 BE FF CF DE BF 22 15 1F 21 15 5F 90 5D j1 j2 j3 j4 j5 j6 j7 j8 90 5C h1
h2 h3 h4 h5 h6 h7 h8 90 5E i1 i2 i3 i4 i5 i6 i7 i8 82 EE BD y0 y1 y2 y3 y4 y5
cette chaine dcrypte se compose des nanos suivantes: F0 / 22 / 21 / 90 5D / 90 5C / 90
5D / 82
soit, rarrang :
F0 FF 5F BC BA DD BF F7 DF 7D DF FF CF FE 37 FF DF 7E 7B EF FF 4E EA BE
FF DF 28 B5 BE FF CF DE BF
22 15 1F
21 15 5F
90 5D j1 j2 j3 j4 j5 j6 j7 j8
90 5C h1 h2 h3 h4 h5 h6 h7 h8
90 5E i1 i2 i3 i4 i5 i6 i7 i8
82 EE BD y0 y1 y2 y3 y4 y5
les nanos 90 5C / 90 5D / 90 5E nous intressent car ce sont les clefs en cours MAIS
CRYPTEES
pour les decrypter, j'applique le mme traitement que dessus
C1 40 01 81 11 h1 h2 h3 h4 h5 h6 h7 h8 h1 h2 h3 h4 h5 h6 h7 h8 00
90 02
C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Rponse : 3A 35 1E F6 BD E1 2A 54 99 35 1E F6 BD E1 2A 54 99 90 00
-----C1 40 01 81 11 j1 j2 j3 j4 j5 j6 j7 j8 j1 j2 j3 j4 j5 j6 j7 j8 00 90 02
C1 3C 01 0F 0090 1D
C1 3A 00 00 10
Rponse : 3A A7 97 E9 AC 12 56 F7 91 A7 97 E9 AC 12 56 F7 91 90 00
-----C1 40 01 81 11 i1 i2 i3 i4 i5 i6 i7 i8 i1 i2 i3 i4 i5 i6 i7 i8 00 90 02
C1 3C 01 0F 0090 1D

Page 21 sur 31

Les chroniques du dragon vert


C1 3A 00 00 10
Rponse : 3A 82 CE 00 16 07 5D 62 42 22 57 51 C0 C3 F8 D3 B3 90 00
-----soit en final :
Prov. 01 Index OC-> 35 1E F6 BD E1 2A 54 99 35 1E F6 BD E1 2A 54 99
Prov. 01 Index OD-> A7 97 E9 AC 12 56 F7 91 A7 97 E9 AC 12 56 F7 91
Prov. 01 Index OE-> 82 CE 00 16 07 5D 62 42 22 57 51 C0 C3 F8 D3 B3
Prov. 01 Date(21)-> 15 5F
4.8 extraction des cls, trames C1 40 pp 80 54
Bas sur un post de chouka et un post espagnol
Avant tout Logger une instruction C1 40 pp 80 50 dune carte en cours de validit.
Puis appliquer le procd de dcoupe et de dcryptage prcdent.
On a :
xx
zz
mm
cc
ff

xx
zz
90
cc
ff

xx
zz
5D
cc
xx

xx
zz
dd
cc
pp

90
zz
dd
cc
pp

51
zz
dd
90
pp

yy
zz
dd
5E
pp

yy
zz
dd
ee
82

yy
80
dd
ee
ss

yy
mm
dd
ee
ss

yy
mm
dd
ee
ss

yy
mm
90
ee
ss

yy
mm
5C
ee
ss

yy
mm
cc
ee
ss

91
mm
cc
ee
ss

51
mm
cc
21
ss

Ou:
xx : on sen fout
yy MK1 primaire du provider pp
zz MK1 secondaire du provider pp
mm le PBM (maque des options achetes)
cc Cle 0C
dd Cle 0D
ee Cle 0E
ff date
pp PPUA
ss signature
dcrypter les cls avec
C1 40 01 80 11 YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY 00
Cest dire les 8 yy ecrits une fois puis une autre
C1 3C 01 0F 0090 02
C1 3A 00 00 10
Rponse : 3A P1 P2 P3 P4 P5 P6 P7 P8 P1 P2 P3 P4 P5 P6 P7 P8 00
O P1 P2 P3 P4 P5 P6 P7 P8 est la MK1 primaire
Rpeter la manip avec zz
Rcuprer la MK1 secondaire.

Page 22 sur 31

Les chroniques du dragon vert

PARTIE N5 : LE SYSTEME VIACESS

5.1 Gnralits
Ce qui suit est une compilation des FAQ VIACESS traduites.
une carte VIACCESS est trs semblable une carte SECA, le principe restant le mme.
Les cartes VIACCESS sont des cartes BULL modle PC2 ou PC3. Elle peuvent tre
fabriques sous licence BULL.
Les commandes VIACCESS sont construites sous la forme
CA cc p1 p2 ll DATA ou 87 cc p1 p2 ll DATA
CA entte, vaut toujours CA ou 87 (classe dinstruction) ou BC non publique
cc commande
p1 paramtre 1
p2 paramtre 2
ll longueur de linstruction
DATA paquet de donnes.
Classe 87 : classe FAC : donnes dinformation gnrale (ex : n provider)
Classe BC : classe indtermine, jamais vue dans un log
Classe CA : classe dexcution
Si on en croit la documentation, VIACCESS est le nouveau nom de D2MAC pour les
moyens de transmission numriques. On peut, parat il, lire certaines infos dune carte
VIACCESS dans un terminal D2MAC.
Lanalyse des commandes sera faite en se basant sur EurocryptM, les diffrences seront
signales
5.2 ATR
3F 77 18 25 00 29 14 00 62 68 90 00
Cet ATR est observ, non seulement sur des cartes TPS, mais aussi SRGSSR (Suisse) et
NTV+ (Russie). Il semble totalement indpendant de TPS, et semble tre lATR
standard VIACCESS.
3F
77
18
25
00
29 14 00 62 68
90 00
Page 23 sur 31

Convention inverse
7 octets historiques TA1, TB1, TC1 transmis TD1 non transmis.
TA1
TB1 Vpp = 5 V, 50 mA max
TC1 Temps supplmentaire du chien de garde / 2 bits
TD1 non transmis Protocole T=0 asynchrone en half-duplex 9600 bds
Octets historiques
Fin de transmission - ok

Les chroniques du dragon vert

ATR Spcial
On a dj vu un ATR spcial sur les dcodeurs TPS/Thomson :
3F 27 17 C4 01 2C 29 14 00 62 68 90 00
La mme carte dans un autre type de dcodeur (mme TPS) donne lATR classique.
3F
27
17
C4
01
2C
29 14 00 62 68
90 00

Convention inverse
7 octets historiques, TB1 transmis
TB1 Vpp = 23 V, 25 mA
Inconnu
Inconnu
Inconnu
Octets historiques
Fin de transmission - ok

On peut donc conclure que le type dATR est fonction du decodeur utilis dans un cas
(THOMSON). Cela veut donc dire que la carte pourra ragir de faon diffrente suivant
le dcodeur utilis. Ce comportement provient peut tre du logiciel rsident dans le
dcodeur (OpenTV).
5.2 liste des instructions
5.2.1 Instructions de classe 87
Instruction 02 :
Prparation des Donnes dUsage General (DUG)
Direction des donnes : D->-C ( Dcodeur vers Carte )
Example : 87 02 00 00 03
Commentaire : Initialisation de la demande de transmission de DUG. Le
dcodeur indique quil va transmettre un bloc de trois octets contenant lindex de
bloc lire et transmettre par la carte. les 3 octets son appels F, NP1 et NP2
(Numro Prestataire). F peut avoir la valeur 00 (lecture du premier bloc), ou 40
(lecture bloc suivant) indiqu par la DUG NP1 NP2. Si le bit de poids fort de F
est positionn, les 2 bits suivants pointent vers un dbut de bloc associ la DUG
NP1 NP2 et P1 P2 est la rfrence du bloc.
Instruction 04 :
Demande la transmission de la rfrence du bloc DUG
Direction des donnes : C->-D (Carte vers Dcodeur)
Example :
87 04 00 00 07
Commentaire : suis linstruction prcdente. Un mot de 7 octets est attendu par le
dcodeur : rfrence de bloc (2 octets) longueur du bloc (2 octets) 3 octets
"00" pour complter le mot.
Instruction 06 :
Demande la transmission de la DUG
Direction des donnes : C->-D (Carte vers Dcodeur)

Page 24 sur 31

Les chroniques du dragon vert

Example :
87 06 00 00 09
Commentaire: Indique que le dcodeur est prt recevoir les donnes du bloc.
Laddresse relative est confirme par les octets P1 P2. 9 octets sont attendus.

Commentaire : Toutes les instructions de classe 87/VIACESS sont les mme que les
instructions de classe 87/EurocryptM.
5.2.2 Instructions de classe BC
Instruction 52 :
Fonction inconnue
Direction des donnes : ?
Example :
BC 52 00 00 00 (rponse : erreur mauvaise rfrence/adresse)
Commentaire : unique instruction de cette classe. Il est maintenant clair que les
cartes VIACESS ne sont pas des modles BULL CP8, qui ont un jeu
dinstruction complet en classe BC. Cette commande na jamais t logge.
5.2.3 Instructions de classe CA
Instruction 18 :
Mise jour de cls / abonnement (EMM).
Slection du destinataire :
Si P1 = 00 : En EurocryptM, ce paramtre est utilis pour spcifier une action
destination de toutes les cartes (EMM-G). Ce cas na jamais t rencontr pour
VIACESS. Il devrais exister sur des cartes programmes pour plusieurs bouquets
(plus dun provider). Toutes les donnes que nous avons pour linstant sont issues
de cartes mono-provider (TPS, SRGSSR, or NTV+). Une carte multi provider
pourrais utiliser les EMM-G.
Une carte TPS rpond 18 quand la commande CA 18 00 01 19 lui est passe, ce
qui prouve quelle accepte la commande.
Si P1 = 01 : Ce cas est le cas gnralement observ en VIACESS (logs de
SRGSSR & NTV+). La forme est la mme que pour EurocyptM. Ceci permet de
spcifier une action destination dun groupe de cartes (EMM-S) (Shared Group
ou groupe de la Shared Address). Une carte TPS rponds 92 00 la commande
CA 18 01 01 19 : on ne connat toujours pas le sens de 92 00.
Si P1 = 02 : En EurocryptM, ceci est utilis pour adresser la mise jour une
seule carte (EMM-U). Le cas na pas t constat dans les log examins , mais la
carte TPS rpond quand la commande CA 18 02 01 19 lui est passe, ce qui
prouve quelle accepte la commande.
Exemple de mise jour de cls : (log SRGSSR)
CA 18 01 04 19
18
A1 03 00 94 0F
EF 08 9C 70 77 97 12 15 ED 6E
F0 08 ED FE 9C 0A 9A 41 F0 23
60 91 00
CA 18 01 04 19
P1=01 > EMM-S
P2=04 > MK04 Cl de Cryptage
A1 03 00 94 0F
03 = longueur, 00 94 > channel ID
Page 25 sur 31

Les chroniques du dragon vert


0F > Numro de cl modifier
EF 08
Annonce le mot crypt et sa longueur
9C 70 77 97 12 15 ED 6E
Mot crypt par MK04
F0 08
Annonce la checksum et sa longueur
ED FE 9C 0A 9A 41 F0 23
Checksum (function hash)
Seul le paramtre EF indique une mise jour de cl.
Mise jour dabonnement : (log SRGSSR)
CA 18 01 01 11
18
A9 05 28 53 28 7F 02
F0 08 37 FF 85 4C E4 AC 53 71
60 91 00
CA 18 01 01 11
P1=01 > EMM-S
A9 05
A9 > Annonce une donne dabonnement
05 > longueur
28 53
28 7F
Dates (dbut et fin dabonnement) gnralement un mois (1er
jour du mois au 3eme jour du mois suivant
02
A dfinir
F0 08 ....
Checksum
Instruction F0 :
Descripition du destinataire
Avant chaque instruction 18, une instruction F0 (au moins une) est envoye pour
dfinir le masque dadressage pour les CUSTWP, seules les cartes dont le PPUA
(SA+CUSTWP) de la commande CA AC A5 correspond sont concernes.
Exemple de description du destinataire : (log TPS)
CA F0 00 01 22
F0
9E 20
7f 84 10 b0 76 39 35 86 6f 49 94 74 8b e1 df 41
1f ca 70 c9 08 9f 59 34 ec 47 0a 62 03 00 21 4e
90 00
9E
Indique que la suite est un masque dadressage
20
Longueur du masque (32 octets soit 256 bits, 1 bit par CUSTWP)
7f...4e
Masque des CUSTWP concerns
90 00
End
NOTE : On reconnais ici le fonctionnement de la nano F0 du systme
SECA/MEDIAGUARD qui est strictement identique.
Si le bit n NN (en hexa) est prsent (valeur =1) dans la table de 256 bits alors la
carte avec le CUSTWP sera concerne
Instruction 88 :

Slection des cls et envoi des mots crypts

Annonce la carte quelle doit utiliser la cl p2 pour dcrypter les mots qui
suivent EA 10
Example de commande CA 88 : (log TPS)
Page 26 sur 31

Les chroniques du dragon vert

CA 88 00 08 26
88
e2 03 28 e2 00 e2 03 28 e2 07
ea 10
66 e6 c1 27 cf fa 3b 82
3d b1 aa d3 c9 3b 3b bc
f0 08
f9 36 f3 b0 3d d6 db fe
90 00
88
e2 03
28 e2
07
66...82
3d...bc
F0 08
F9...fe
90 00

Prt recevoir
Annonce la date ???
Date (2 juillet 2000)
A dfinir, (02 pour SRGSSR et 1E pour NTV+)
Premier mot crypt
Deuxieme mot crypt
Annonce la checksum et sa longueur
Checksum (function hash)
ok

La longueur de cette trame peut varier de (hexadecimal) 21 (SRGSSR) 2B (TPS).


Les valeurs suivantes ont t observes :
TPS
26 - 2B
SRGSSR
21
NTV+
26
Les variations se situent entre le premier E2 03 et EA 10. Dans tous les cas deux mot
de 8 octets crypts sont envoys.
Instruction C0 :
Retours des mots dcrypts
Exemple : CA C0 00 00 12
Commentaire : demande la carte de renvoyer les deux mots en clair (dcrypts).
La longueur de la trame est toujours de 18 octets (12 hexadcimal) (SGRSSR NTV - TPS) : EA 10 + 2x8 octets.
Exemple de retour de mots dcrypts : (log TPS)
CA C0 00 00 12
C0
ea 10 b3 e9 2b f2 25 32 58 4c ff 9f 8c d0 f4 26 d2 fb
90 00
Remarque : Cette instruction (CA C0) est aussi employe comme suit : CA C0 00 00
03, juste aprs un accs au fichier principal (CA A4 00 00 00). La rponse obtenue
dans ce cas est FF F4 00 (TPS). En EurocryptM ceci est un accs aux informations
de PPV (rponse EurocryptM = FF F4 00 20).
Instruction AC :
Consultation
Exemple : CA AC A4 00 00

Page 27 sur 31

Les chroniques du dragon vert


Commentaire : Cette instruction est suivie par linstruction B8, demandant la carte
lenvoi des donnes demandes par linstruction AC instruction. On peut accder
diffrents paramtres selon la valeur du paramtre P1.
Au niveau MF (Master File), P1 variant de 00 FF - P2=00 & LEN=00 :
P1
Rponse obtenue / rsultat de la commande B8
lgende
inconnu - remarquable - comme EurocryptM
00 03
6B 00 paramtres incorrects
04
AC 90 00 / 00 7C 00 01 0E 4A 1D 00 doit tre vraisemblablement relatif
lID de canal 00 7C 00
05
AC 9C 00 / 90 02
06
AC 90 00 / 0F niveau parental en EurocryptM - (contrle parental)
07
AC 90 00 / 00 00 00 00
08
AC 90 00 / 00 tat de vrouillage en EurocryptM
09
AC 90 00 / 00 00
0A A0
6B 00 - paramtres incorrects
A1
AC 90 00 / A1 03 FF F4 00 A1 03 00 7C 00 / relatif l ID de canal et
linstruction CAC0000003
A2
6B 00
A3
AC 90 00 / 00 28
A4
AC 90 00 / XX XX XX XX XX n de srie carte (UNIQUE ADDRESS)
A5
AC 90 00 / XX XX XX XX Shared Address + CUSTWP = PPUA
A6
AC 90 08 / 90 02
A7
Description du provider - envoie 49 53 53 55 45 52 qui signifie ISSUER
- TPS ne pas utiliser cet espace
A8
paramtre incorrect - renvoie 67 00 Longueur incorrecte ???
A9
paramtre incorrect - renvoie 67 00 - Longueur incorrecte???
AA
paramtre incorrect - renvoie 67 00 - Longueur incorrecte???
AB
6B 00 - paramtres incorrects
AC - AE
AC 9C 00 / 90 02
AF - B0
6B 00 - paramtres incorrects
B1 - B3
AC 9C 00 / 90 02
B4
paramtre incorrect - renvoie 67 00 Longueur incorrecte ???
B5
AC 9C 00 / 90 02
B6
AC 90 08 / 90 02
B7
6B 00 - paramtres incorrects
B8 - B9
paramtre incorrect - renvoie 67 00 Longueur incorrecte ???
BA - E3
6B 00 - paramtres incorrects
E4
paramtre incorrect - renvoie 67 00 Longueur incorrecte ???
E5 - EA
6B 00 - paramtres incorrects
EB
AC 90 08 / 90 02
EC - ED
6B 00
EE
AC 90 08 / 90 02
EF - FF
6B 00 - paramtres incorrects

Page 28 sur 31

Les chroniques du dragon vert


Au niveau DF (Dedicated File aprs la commande CA A4 02 00 00), P1 variant de
00 FF - P2=00 & LEN=00 :
P1
Rponse obtenue / rsultat de la commande B8
legend
inconnu - remarquable - comme EurocryptM
00 03
6B 00 - paramtres incorrects
04
AC 90 00 / 00 7C 00 01 0E 4A 1D 00 - doit tre vraisemblablement relatif
lID de canal 00 7C 00
05
AC 9C 00 / 90 02
06
AC 90 00 / 0F - niveau parental en EurocryptM - (contrle parental)
07
AC 90 00 / 00 00 00 00
08
AC 90 00 / 00 tat de vrouillage en EurocryptM
09
AC 90 00 / 00 00
0A A0
6B 00 - paramtres incorrects
Et ainsi de suite...
Le niveau de fichier (MF ou DF) ninfluence pas la rponse CA A4 XX
Une autre documentation dcrit les A9
A9 : Avec LL= 6, envoie cette chaine :
A9 07 xx xx xx xx ; 90 00
xx reprsente deux dates ( dbut-fin ) :
Exemple : 20 70 22 74
2070 vaut en binaire 00100000 01110000
soit

0010000
anne
0=1980

0011 10000
mois jour

Avec LL= 3, envoie cette chaine :


yy yy yy ; 90 00
yy reprsente la classe dabonnement (masque de classe, PBM).
Example : 80 00 07
100000000000000000000111
abonn aux classes 23, 2, 1 et 0
Instruction B8 :
rponse la Consultation
Example :
CA B8 00 00 08
Rponse B8 06 05 ...FF o 06 est un rappel de linstruction CA AC 06, et
05 est la longueur de la chaine, FF comme octet de bourrage (complment)
Commentaires : cest la seulle instruction ou la rponse est quelquefois 90 02.
Linstruction B8 est la rponse la demande formule par un commande CA AC.

A faire : tester avec des longueurs diffrentes (90 02 pourrais tre longueur
incorrecte ?)

Page 29 sur 31

Les chroniques du dragon vert


Instruction 1C :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Instruction 24 :
Code PIN
Code PIN in EurocryptM NON TESTE
A faire : tester aprs un changement de code PIN
Instruction 48 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Instruction F4 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Instruction F8 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Rponse 6B 00 linstruction CA F8 00 00 00
Instruction FC :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Rponse 6B 00 linstruction CA FC 00 00 00
Instruction 26 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Rponse 90 00 linstruction CA 26 00 00 00
Instruction A4 :
slection Fichier / rpertoire
Exemple : CA A4 00 00 00
Commentaire : niveau racine (niveau Master File, donnes VIACESS)
CA A4 02 00 00 >
niveau Fichier ddi (Dedicated File, donnes provider)
Comment : quand cette instruction est passe 2 fois, la rponse est 90 08. Ceci
montre que la carte possde seulement deux niveaux de fichiers
Instruction A8 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS, existe dans les cartes
D2MAC mais nest jamais apparu en EurocryptM.
Rponse 90 00 linstruction CA A8 00 00 00
Instruction B0 :
lecture Binaire
Cette commande na jamais t logge sur une carte TPS.
CA B0 ADD DEB LEN
(ADD = adresse mmoire; DEB = adressage relatif par
rapport ADD; LEN=longueur). Si LEN = 00 alors tout le bloc est lu, si LEN=1
alors seul le premier octet est lu. La carte rpond 94 00 a la fin du bloc. Si DEB=1
alors la carte commence lire 4 octets aprs le dbut du bloc.Chaque bloc fait 256
octets.
Page 30 sur 31

Les chroniques du dragon vert


Les adresses valides vont de 0000 07F3 (inclus). Ceci signifie que la mmoire a
une taille de 32Ko
Seul le bloc 00 est lisible, tous les autres blocs sont protgs (octet 00 reu).
Instruction B4 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS
Rponse B4 linstruction CA B4 00 00 00
Instruction C4 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS
Rponse C4 93 linstruction CA C4 00 00 00
Instruction C8 :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS
Rponse C8 FF linstruction CA C8 00 00 00
Instruction CA :
Fonction inconnue
Cette commande na jamais t logge sur une carte TPS
Rponse CA 02 linstruction CA CA 00 00 00

Page 31 sur 31