Copy Link
Add to Bookmark
Report

N0RoUTE Issue 3-09 Telecartes

eZine's profile picture
Published in 
N0RoUTE
 · 4 years ago

  


:----------------------------------------------------------------------:
| ---:--- :---- : :---- /--- /\ /---\ ---:--- :---- /--- |
| | |____ | |____ | / \ |___| | |____ \ |
| | | | | | /____\ | \ | | \ |
| | |____ |___ |____ \___ / \ | \ | |____ ___/ |
|______________________________________________________________________|

ET CARTES A PUCES ASYNCHRONES
par bLoRP
^^^^^

1/CARTES A MEMOIRES DE TYPES TELECARTE:

une carte a m‚moire est essentiellement compos‚e d'une m‚moire electronique
connectable et inscriptible, associ‚e a un compteur.La memoire d'une
telecarte, de type EPROM a une capacit‚e de 256 ‚lements binaires dont les
96 premiers sont utilis‚s par l'exploitant du reseau pour l'identification de
l'appelant et ses droits et dont les 160 ‚lŠments suivant servent a
l'enregistrement des unit‚s consomm‚s.
------------> 200 millions de telecartes distribu‚es en 1990
‚lŠment binaire: 1 bit

1.1/PROTECTION DES CARTES A PUCES (generales):

Les cartes a puces integrent toutes des fonctions cryptographiques qui
rendent leur contenu sinon inviolable au moins incomprehensible pour toute
personne malveillante(eh eh :)).Une protection par fusible est aussi possible,
apr‚s la programmation de la carte en usine, un fusible interne est grill‚ et
rend la carte illisible de l'exterieur.Les t‚lŠcartes ne semblent pas
incorporer une protection cryptographique avec une cl‚s secrete par contre
elles sont prot‚g‚es par un fusible(fuck FT !!) ce qui les rends totalement
illisibles avec un materiel d'amateur.Les pirates n'ont donc que deux options,
soit arriver a lire le programme contenu dans dans la puces et a recharger ce
programme sur une carte a microcontrolleur (qu'ils auront eux memes fabriqu‚)
soit reinventer un programme qui leur permette d'emuler la telecarte,
toujours au moyen d'une carte a microcontroleur.Cette deuxieme solution reste
tr‚s compliqu‚e a mettre en oeuvre puisque la carte pirate doit repondre
exactement comme la vraie lors de l'initialisation de la cabine et de
l'‚criture dans la memoire de la carte.Les plans de fausses telecartes avaient
et‚ publi‚ dans le phrack 48, malheureusement l'emulation n'etant pas assez
rapide, ces fausses cartes cessŠrent de fonctionner avec l'apparition des
nouvelles cabines telephoniques (beuh :( !! )).

1.2/REALISATION DES FAUSSES CARTES A PUCES:

Avant de realiser une fausse telecarte il faut donc deja connaitre un
minimum leur principe de fonctionnement et leur caracteristiques techniques.
Par exemple il faut savoir que les cartes a puces asychrones de types ISO
(7816 par exemple) communiquent avec la cabine avec une liaison serie
utilisant un protocole a parit‚e paire.les cartes a puces ISO respectent aussi
la norme ISO invers‚e ce qui veut dire que ce sont d'abort les bits de poids
fort qui sont d'abord transmis et qu'un niveau bas (0v) represente en fait un 1 logique.
L'emulateur de telecarte decrit dans le phrack 48respectait parfaitement ces
conditions et le pic 16c84 qui servait a l'emulation etait tr‚s bien adapt‚.Le
probleme se posa lorsque les nouvelles telecabines arrivŠrent, celles ci
demandaient en effet une emulation plus rapide.Le programme contenu dans le
pic 16c84 qui tournait a 4mhz fut alors mis dans un 16c84 a 10mhz, avec ce
nouveau microcontrolleur la phase d'initialisation etait … nouveau emul‚e
correctement, en effet, la cabine ne detectait pas la fausse telecarte apr‚s
avoir envoyer son reset.Les problemes commencaient en fait apr‚s
l'initialisation lorsque la cabine et le pic ecrivait dans la memoire, la
cabine detectait la fausse carte et refusait systematiquement tout appel.En
fait pour ‚crire dans la memoire du pic 16c84 il faut au minimum 10ms(au
lieu de 500ns pour la vraie :( ), cette inconvenient est due au fait que la
memoire utilis‚e lors de l'emulation est une EEPROM (memoire programable et
effacable electriquement sans uv).En effet un microcontroleur a eeprom est
ideal pour le developpement du programme (masque) puisque il n'y a pas besoin
de passer longuement le microcontroleur sous les uv pour effacer sa memoire !!
.C'est cet interval de 10ms qui perturbe la telecabine et qui fait echouer
l'emulation, pour reussir il faudrat evoluer vers des microcontroleurs ayant
des memoires plus rapides (pic16c74-71) ou ajouter une eeprom externe au pic
16c84, plus rapide, cependant le temps necessaire au calcul de l'adressage
devrait aussi etre assez important et le montage ne serait finalement pas
vraiment plus performant!!

2/LES NOUVEAUX PROGRAMMES:

le programme suivant est en fait une version optimis‚e pour le pic 16c84
10mhz du programme paru dans le phrack47 initialement prevu pour tourner sur
un pic a 4mhz!:
ce n'est pas moi qui ait retravaill‚ le code, et il semble que ce programme
marche a peut pr‚s, sauf sur certaines cabines.De toute facon l'emulation
reste partielle et les d‚conections sont frequentes :(


LIST p=16C84,r=dec
pc equ 02h ; Program counter
sr equ 03h ; Status register
fsr equ 04h ; file select
porta equ 05h ; Port a
portb equ 06h ; Port b
eedata equ 08h ; Eeprom data register
eeadr equ 09h ; Eeprom adress register
eecon1 equ 08h
eecon2 equ 09h
add equ 0Ch ; Ptr memoire lecture carte

#DEFINE OUT portb,0 ;
#DEFINE ST portb,2 ;
#DEFINE RAZ portb,1 ; pattes de la carte
#DEFINE PRO portb,3 ;
#DEFINE VPP portb,4 ;
#DEFINE RD eecon1,0
#DEFINE WR eecon1,1
#DEFINE WREN eecon1,2
#DEFINE EEIF eecon1,4
#DEFINE RP0 sr,5

org 00
start movlw 126
tris portb
clrf eeadr
bsf RP0
bsf RD
bcf RP0
movlw 155
subwf eedata,0
btfsc sr,0
bcf eedata,7
star2 bsf OUT
clrf add
debut btfss VPP
goto star2
stl btfss ST
goto stl
bsf OUT
btfsc PRO
goto prog
sth btfsc ST
goto sth
btfss RAZ ; test RAZ
goto star2
incf add,1
movf add,0
btfsc add,7
goto mempro
call carte
movwf portb
goto debut
mempro subwf eedata,0 ; SR0=0 si add > eedata !!
btfss sr,0
bcf OUT ; zone unit‚s libres
goto debut
prog movf add,0
movwf eedata
bsf OUT
bsf RP0
bsf WREN
bcf EEIF
movlw 055h
movwf eecon2
movlw 0aah
movwf eecon2
bsf WR
pro_ok btfss EEIF
goto pro_ok
bcf RP0
goto debut
carte addwf pc,1
; mot 'C7' (nø de carte complet - 96 bits)
retlw 1
retlw 1
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 1
retlw 1
; mot '06'
retlw 0
retlw 0
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 1
retlw 0
; mot '85'
retlw 1
retlw 0
retlw 0
etlw 0
;
retlw 0
retlw 1
retlw 0
retlw 1
; mot '03'
retlw 0
retlw 0
retlw 0
retlw 0
;
retlw 0
retlw 0
retlw 1
retlw 1
; mot 'C7'
retlw 1
retlw 1
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 1
retlw 1
;
; mot '04'
retlw 0
retlw 0
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 0
retlw 0
;
; mot '46'
retlw 0
retlw 1
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 1
retlw 0
;
; mot '0E'
retlw 0
retlw 0
retlw 0
retlw 0
;
retlw 1
retlw 1
retlw 1
retlw 0
;
; mot 'CB'
retlw 1
retlw 1
retlw 0
retlw 0
;
retlw 1
retlw 0
retlw 1
retlw 1
;
; mot '8A'
retlw 1
retlw 0
retlw 0
retlw 0
;
retlw 1
retlw 0
retlw 1
retlw 0
;
; mot '10'
retlw 0
retlw 0
retlw 0
retlw 1
;
retlw 0
retlw 0
retlw 0
retlw 0
;
; mot '06'
retlw 0
retlw 0
retlw 0
retlw 0
;
retlw 0
retlw 1
retlw 1
retlw 0
;34 fois retlw 1
end

compilation OK avec : MPASM

Je n'ait pas essay‚ personellement ce programme, mais je sais que
certaines personnes l'ont fait marcher, alors, ne tapez pas sur l'auteur !!!
Pour la fausse telecarte, les plans du phrack restent valablent, il faut
juste changer la puce!



3.1/UN PTIT ORGANIGRAMME SYMPA:

cet organigramme n'est vraiment qu'un squellette minuscule du programme qui
devra etre cod‚ pour l'emulation:

_______________ ___________
| intteruption | | DEBUT |
| en cas de | |___________|
| RESET | |
|_______________| |
| |
| _________v_________
______v______ | saut a la routine |
| routine de | | de |
| reponse au |<-----------------| traitement du |
| RESET | | RESET |
|_____________| |___________________|
|
| ___________________
______v______ non _________v_________ |
| mem = 1 ?? |___________ | recuperation de | |
|_____________| | | l'adresse | |
| oui +----->| memoire point‚e | |
| | par la telecarte | |
| |___________________| |
v | |
| | |
| _______v______ |
| | mise d'une | |
| | memoire a 1 | |
| | mem = 1 | |
| |______________| |
| | |
| | |
| ___________v___________ |
| | simulation de la | |
| | reponse en | |
| | utilisant un algo ou | |
v | des datas de l'EEPROM | |
| |_______________________| |
| | |
| | |
| _________v__________ |
| | 97 bits simul‚ ?? | |
| | (atteind ??) | nan |
v |____________________|---------+
| | oui
|__________________________________v
|
______v________
| broche i/o a 1|<-------------:
|_______________| |
| |
| |
________v_________ |
| recuperation | |
| adresse point‚e | |
|__________________| |
| |
|<--------------: |
--------v--------- | |
| si le bit a ete | nan | |
| ecrit |-----: |
|__________________| |
| oui |
| |
--------v-------- |
| la broche i/o | |
| est mise | |
| a 0 | |
|_________________| |
| |
| |
_________v_________ |
| y'a t'il eu une | |
| impulsion sur la | oui |
| broche clock ??? |_____________|
|___________________|
| nan
|
___________v__________
| bravo, vous venez |
| d'enculer FT ;))))) |
|______________________|
|
|
______v______
| THE END ;)) |
|_____________|


petite explication: si vous voulez comprendre cet organigramme, lisez donc
le texte "what you need to know about electronic telecards" de SB, tout la
sequence de lecture ecriture de la carte est expliqu‚e en detail.Plusieurs
probl‚mes se posent en fait, les donn‚e contenue dans les 97 premiers bits
pourront elles etres lues sufisement rapidement pour que la cabine ne detecte
pas l'emeulation ???
-quelle etat presente la broche i/o pendant l'incrementation du compteur???
-combien de temps laisser la broche i/o active ???
Si vous connaissez la reponse a une de ces questions, c'est du 0.00 fr/min ;))
une autre astuce:

une solution inexplor‚e serait aussi de presenter sur la broche i/o un
etat haut (5v) pour indiquer a la cabine que l'ecriture du bit n'a pas et‚
effectu‚e correctement, il est probable qu'au bout de 3 essais d'ecriture, la
cabine rejette la carte, ceci dit vous avez deja tripl‚ la dur‚e de vie de
votre fausse carte et vous n'avez poa besoin de couper la communication pour
beneficier a nouveau de 120 unit‚es :o). En fait avec cette methode, vous
devriez pouvoir rester en ligne pendant 2 heures d'affil‚es (arf :))).

Le seul probleme est en fait que la simulation des 97 premiers bits ne sera
assez rapide, il faudraitsimuler ces bit soit en trouvant un algoritme qui
corresponde a ces bits, soit charcher dans la ram du pic des données presentes
dans l'eeprom, ce qui resoudrait le probleme des 10ms necessaires au pic.

Finalement la solution reste peut etre l'emulation a partir d'un ordinateur
portable, certains programme sont tr‚s au point, d'autant plus que si l'on
veut se connecter au net ou devenir root sur une des suns de sa facs, y faudra
forcement un portable :) .
La derniere solution reste les fausses telecartes a base d'eprom serie et de
portes logiques pour l'adressage, certains plans circulent ;) et il semble que
les premiers resultats soit TRES concluants .....;-)

voila, that's all !!!!
A++ bLoRp
^^^^^^^
greets:
-NeurO et sa page oueb qui reste LA source de documentation ;)
-kickers, jump4, crifalo et kra qui font vivre la scene lyonnaise ;)
et puis Aaah qui m'tien compagnie sur le dalnet ;))
j'oubliait cod4 qui publie cet article (putain il est fous ;))))
ps: desolez pour mon orthografe, mais j'en avait marre de perdre mon temps en
cours de francais :(
----------------------------------------------------------------------------
ou me voir: irc:#banane (on ircnet)
#phreakfr ---->le best chanel de phreaking (non non j'fais
poa de pub!!) <--sur dalnet humm pis sur #phe dalnet aussi :)
http://www.mygale.org/09/blorp/benhack.htm
ou forum eprat: www.eprat.com
----------------------------------------------------------------------------

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT