Faq - Seca Mediaguard - czyli nasza Cyfra +
04.12.07 17:19
|
#677417
|
(link)
|
zgłoś naruszenie
[FONT=Verdana]
[/FONT]
[FONT=Verdana]Jeśli ktoś zauważy jakieś błędy, albo coś nie będzie jasne, piszcie np. na forum zieleniny. [/FONT]
[FONT=Verdana]Jak będziemy mieli trochę czasu powstaną kolejne wersje.[/FONT]
[FONT=Verdana]
1.1.1 Podstawowe informacje zapisane w karcie
PPUA - 4-bajtowy adres używany do przesyłania uprawnień, może być zmieniany przez nadawcę.
SA - 3 pierwsze bajty PPUA - inaczej grupa, do każdej grupy należy 256 kart, (ponieważ tyle wartości może przyjmować ostatni bajt)
UA (serial, numer seryjny)- unikalny i niezmienny 4-bajtowy adres karty, wydrukowany również w formie decymalnej na odwrocie.
Tak naprawdę, to UA miało być niezmienne, ale technicy nie przewidzieli możliwości hakerów i teraz da się go zmienić
PBM - maska uprawnień, każdy ECM niosący słowo do odkodowania posiada również tzw. channel bundle, który wskazuje na nr bitu w PBM, jeśli ten bit ma wartość 1 to znaczy, że mamy prawa do oglądania pakietu, z którego pochodzi ten program i zachodzi dekrypcja
Inaczej mówiąc PBM określa jaki pakiet mamy. Każdy pakiet, to inny PBM.[/FONT]
[/CENTER]
[/CENTER]
[/CENTER]
[/CENTER]
[FONT=Verdana]Jest używany przez operatora do aktywacji i deaktywacji karty, oraz do zmiany pakietu.[/FONT]
[FONT=Verdana]Jest inny w każdej karcie i nie ma sposobu na poznanie jego wartości[/FONT]
[/CENTER]
[FONT=Verdana]Jest używany przez operatora do przesyłania, co miesiąc uprawnień oraz kluczy C i D. Może także służyć do deaktywacji.[/FONT]
[FONT=Verdana]Jest taki sam dla kart z jednej grupy, czyli dla kart o takich samych 3 pierwszych bajtach PPUA. Możemy poznać jego wartość dekodując instrukcję, która aktywowała kartę (będzie o tym napisane dalej)[/FONT]
[/CENTER]
[FONT=Verdana]Nie jest używany przez operatora, natomiast my będziemy go wpisywali a następnie używali np. podczas zmiany numery seryjnego karty.[/FONT]
[FONT=Verdana]Jeśli karta była przełączana w tryb ATR3, aby zmienić serial, to klucz ten został wpisany i ma wartość: 58 7C 00 A6 5A 47 A5 96[/FONT]
[/CENTER]
[FONT=Verdana]Jeden z bliźniaków. Zamiast niego, może być użyty inny klucz z przedziału 2-B, ale zazwyczaj używa się akurat tego.[/FONT]
[FONT=Verdana]Jeśli ma być użyty jako Bliźniak, to musi mieć taka samą wartość jak F[/FONT]
[/CENTER]
[FONT=Verdana]Używane przez operatora do kodowania ECMów[/FONT]
[FONT=Verdana]Zmieniają swoje wartości. Możemy je poznać dekodując EMM dosyłający je.[/FONT]
[/CENTER]
[FONT=Verdana] j.w. Ale jest używany podczas przełączania z klucza C na D i odwrotnie[/FONT]
[FONT=Verdana]Posiada go każda aktywna karta i ma on stałą wartość: D0 2F 36 F0 C5 B4 2F 23[/FONT]
[/CENTER]
[FONT=Verdana]Ten klucz ma pewne szczególne własności i dlatego będziemy go wykorzystywali jako drugiego z bliźniaków[/FONT]
[FONT=Verdana]Musi mieć taką samą wartość jak pierwszy z bliźniaków[/FONT]
[FONT=Verdana]Jak widać klucze dzielą się na 3 grupy. Klucze główne (MK) czyli klucze z przedziału 0-B i nimi mogą być kodowane EMMy. Klucze operacyjne, czyli C, D i E. Nimi mogą być kodowane ECMy. Oraz klucz F, którego nie wykorzystuje operator, ale ma on specjalne działanie i można łatwo kodować za jego pomocą.
1.1.3. Podpis PBMu
W maju tego roku Cyfra zastosowała dodatkowe zabezpieczenie. Dodatkowo na karcie jest zapisywany podpis PBM’u. Jest on zakodowany i zawiera PBM oraz numer seryjny karty. Jeśli serial lub PBM zapisany w karcie nie zgadza się z tym zapisanym w podpisie, to karta nie będzie działać.
Nie znając sposobu zmiany tworzenia takiego podpisu, nie można było zmienić sobie pakietu poprzez zmianę PBMu.
Teraz można to już obejść używając podpisu z innej karty i zmieniając serial. Dodatkowym utrudnieniem jest to, że podpis zawiera datę wysłania go przez operatora. Można wpisywać tylko nowszy podpis niż ten, który już jest w karcie.
Aby sygnał był dekodowany karta musi, co chwile dekodować pewien klucz, który jest przesyłany, co chwilę wraz sygnałem. Dekoder przesyła go do karty, a ta dekoduje go i przesyła do dekodera. To przesyłanie odbywa się za pomocą instrukcji nazywanej ECM. W dalszej części będzie opisane, jakie warunki musi spełnić karta, aby prawidłowo odpowiadać, na ECMy.
Natomiast EMMy przesyłane są dużo rzadziej i mają na celu dokonanie zmian w karcie. Operator używa ich, aby np. aktywować kartę, albo zmienić klucze. Naszym zadaniem będzie, więc tworzenie własnych EMMów, za pomocą, których będziemy dokonywali zmian w karcie, które umożliwią nam jej aktywację, podniesienie pakietu itp. Oczywiście EMMy są zakodowane i właśnie to zabezpieczenie będziemy się starali obejść.
Gotowe EMMy możemy wysyłać bardzo wieloma programami. Ja używam Fioletowego. Instrukcję można wysłać za jego pomocą wklejając ją w środkowym oknie w zakładce InsGen i wciskając przycisk SEND. Całą komunikację można oglądać w dolnym oknie. Najważniejsza jest odpowiedź karty. Komunikacja wygląda tak:
Dekoder->karta : C1 40 xx xx xx - to jest nagłówek instrukcji
Karta->dekoder : 40 - ACK czyli odpowiedź karty, że oczekuje na dane
Dekoder->karta : ... - zakodowane dane, inne dla każdego EMMa
Karta->dekoder : yy yy - odpowiedź karty
Na podstawie odpowiedzi karty możemy wnioskować, czy instrukcja została przyjęta i czy dokonała jakiś zmian.
67 00 Niepoprawna długość Len
6B 00 Parameter/Reference-Bajt poprawny
6D 00 Instrukcja niewykonana/ważna lub Instrukcja chroniona
6E 00 Klasa niepoprawna / niewykonana
6F 00 Zła sygnatura
62 81 Zwrócone dane / manipulacja w danych
62 82 Koniec pliku został osiągnięty przed końcem czytania
62 84 Wybrany plik nie jest ważny
65 01 Błąd połączenia z pamięcią
68 00 Instrukcja niewykonana przez kartę
6A 00 Bajty P1 lub P2 lub P1 i P2 są niepoprawne
6A 80 Parametry w danych są niepoprawne
6A 82 File nie znaleziono
6A 83 Recordu nie znaleziono
6A 84 Niewystarczająco miejsca w pamięci lub za duży plik
6A 87 wartość P3 nie jest zgodna z wartością P1 i P2
6A 88 danych nie znaleziono
6C XX Niepoprawna długość Len P3
90 00 Instrukcja wykonana poprawnie
90 01 Błąd pamięci
90 02 Niewłaściwa sygnatura lub jej lokalizacja
90 04 Brak Providera
90 05 Instrukcja nie dotyczy systemu ****
90 06 wysłano poza pamięć dla podglądu zapisu
90 07 Niedozwolone -provider zablokował
90 08 Nano 0x01 niedozwolone
90 09 Ppua nie zgodne z Bitmapą F0 (CW nieaktywne)
90 10 Niewłaściwy PIN
90 11 Testbit nieustawiony, Instrukcja niewykonana
90 13 Dozwolona tylko z Management Keys
90 14 Niewłaściwy numer instrukcji
90 15 Nano niedozwolone lub zła wartości do otworzenia wejście
90 16 Nie zdołała się wykonać lub niedozwolona
90 17 Niedozwolona
90 18 Provider już istnieje
90 19 Ppua zmienione
90 1A Dokup żetony/Niewłaściwe żetony
90 1B Niewłaściwe żetony lub credit record
90 1C Żetony właściwe
90 1D Brak Primary Key
90 1E Błąd
90 1F Brak Secondary Key
90 21 Klucz nie jest 0F - Odrzucony
90 22 Karta w niewłaściwym trybie
90 24 Błąd sumy kontrolnej / instr. Niedozwolona w ATR poziom 3
90 26 Koniec podglądu
90 27 Dekodowanie - podgląd fazy
90 28 Klucz niezgodny z indeksem
93 01 Wygasała data /jest niższa niż dopuszczalna
93 01 Karta nieaktywna
93 02 Brak dekodowania
93 04 Parental guidance to low (Coś z blokadą rodzicielską ???)
93 05 Transmisja nie dla tej geograficznej strefy (Region code)
94 01 Zła wartości P1
94 02 Zła wartości P2
96 00 Niewłaściwe dane wejścia lub dane= zero. Przerwane dekodowanie
9A 00 Niepoprawny Keyindex
96 XX Niewłaściwe nano
97 XX Aktualizowanie EEPROM nie było konieczne dla jakiś nano - bitmapy xx
99 XX Niewłaściwe dane, już zaktualizowane dzisiaj lub niewłaściwa data[/FONT]
[FONT=Verdana]
[/FONT]
[FONT=Verdana]Jest to nanoinstrukcja 41, która zmienia PPUA. Jej dane to: 11 22 33 44. A więc zmieni ona PPUA, na 12 34 56 78
Inny przykład:
[/FONT]
[FONT=Verdana]
Jest to nanoinstrukcja 10, która usuwa klucz. W tym przypadku jest to klucz C.
Pierwszy znak pierwszego bajtu (zaznaczony na czerwono) mówi jak długi ma być ciąg danych:
1...9 – 1...9 bajtów
A – 10 bajtów
B – 11 bajtów
C – 12 bajtów
D – 16 bajtów
E – 24 bajty
F – 32 bajty
EMM, może zawierać wiele nanoinstrukcji jeśli np. zdekodujemy jakiś EMM i będzie on miał następujące dane (dodałem nawiasy, aby było czytelniej):
(41) 11 11 11 11 (10) 0C (80) FF FF FF FF FF FF FF FF
To wykona on trzy operacje: zmieni PPUA ma 11 11 11 11, skasuje klucz C i zmieni PBM na FF FF FF FF FF FF FF FF[/FONT]
[FONT=Verdana]
01 – odblokowanie nano 24
02 – zablokowanie nano 24
03 – kasowanie PIN’u
10 – kasowanie klucza
11 – kasowanie rekordu SECA
21 – zmiana daty
22 – sprawdzenie daty
23 – dodanie providera
24 – ustala providera, do którego będzie kierowane kolejne nano
25 – kasowanie providera
40 – kasowanie rekordów PPV
41 – zmiana PPUA
42 – zapisanie kredytów
43 – dodanie kredytów
80 – zmiana PBM
82 – sygnatura (musi być w każdym EMMie, ale programy zazwyczaj liczą ją automatycznie)
90 – wpisz klucz primary
91 – wpisz klucz secondary
D0 – zmiana nazwy providera
Poza tym jest kilka nanoinstrukcji, których tutaj nie wymieniłem. Pojawią się w dalszej części opisu.
1.5 Co jest potrzebne, aby karta działała?
Aby karta działała muszą być spełnione następujące warunki:
- Musi mieć datę uprawnień z przyszłości
- Musi mieć prawidłowy klucz C lub D na bieżący miesiąc
- Musi mieć podpis PBMu zgodny z PBMem i serialem karty.
1.6 Jak przebiegają zmiany na karcie przeprowadzane przez operatora?
Karta po wyprodukowaniu ma tylko klucz 0 i numer seryjny. Reszta możemy założyć, że nie jest wpisana. Klucz 0 zna tylko operator.
Po pierwsze przeprowadzana jest aktywacja. Operator wysyła EMMa kodowanego kluczem 0 i kierowanego do tej właśnie karty (na podstawie numeru seryjnego), który wpisuje klucz 1 i w ten sposób karta jest przydzielana do pewnej grupy. Dostaje również PPUA, którego pierwsze 3 bajty (SA) są odpowiednie dla danej grupy. Drugi etap aktywacji, to wpisanie PBMu odpowiedniego dla wykupionego pakietu, oraz podpisu PBMu zawierającego serial i PBM tej karty. Ostatnim etapem jest wpisanie kluczy C, D, E i daty, tak, aby było możliwe oglądanie w tym miesiącu.
Co miesiąc są dosyłane klucze i zmieniana data. Ta instrukcja jest kierowana, do całej grupy kart, czyli jest kodowana kluczem 1 i kierowana na SA. Po zdekodowaniu zawiera nano, które mówi, które karty z grupy mają taka instrukcje wykonać (pozostałe karty, czyli te, które nie są opłacone nie wykonają tej instrukcji). Analogicznie jest przesyłana deaktywacja, tylko, że przyjmują ją, nieopłacone karty.
1.7 Jak możemy sami dokonywać zmian?
Oczywiście EMMy możemy tworzyć sami i są gotowe programy do tego celu. Możemy napisać sobie dowolny ciąg nanoinstrukcji, a następnie je zakodować i zakodowaną instrukcję wysłać do karty.
Najpopularniejsza metodą jest użycie Twinów, czyli bliźniaczych kluczy. Metoda ta nie jest jednak ani najszybsza, ani najnowsza, ani najstarsza. Jednak podczas każdych zabaw z kartą wcześniej czy później trzeba je wpisać.
1.7.1 Co to są Twiny (bliźniaki)
Są to dwa klucze, które maja taka samą wartość. Jeden z nich to klucz F, a drugi to dowolny klucz z przedziału 2-B. Najczęściej używa się pary kluczy: 9+F. Po ich wpisaniu można za pomocą pewnego triku zakodować dowolny EMM. Można je zarówno łatwo wpisać jak i używać ich w programie Fioletowy.
1.7.2 Inne sposoby tworzenia EMMów
Po pierwsze Twiny nie były znane zawsze, a po drugie je też trzeba jakimś sposobem wpisać do karty. Dlatego warto wiedzieć o innych metodach tworzenia EMMów. Opiszę je w kolejności, w jakiej były wymyślane.
Pierwszą jest generowanie losowych EMMów. Istnieje sposób na generowanie dowolnej liczby losowych EMMów, których zawartości nie znamy. Znamy jedynie długość. Pomysł polega na tym, ze jeśli np. EMM ma długość 5 bajtów to najprawdopodobniej zawiera jedno nano. A nanoinstrukcje o 5 bajtach mogą albo zmienić PPUA, albo zmienić liczbę kredytów. Oczywiście możemy też mieć pecha i mogą skasować jakiś klucz. Dlatego stosowanie obecnie takiej metody np. w opłacanych kartach jest bardzo niebezpieczne. Co ciekawe taką metodą program Fioletowy wpisuje właściwą liczbę kredytów (jest to konieczne, aby wpisać Twiny tym programem). Dlatego zazwyczaj towarzyszy temu zmiana PPUA, a może być dużo gorzej.
Druga metoda polega na wykorzystaniu rekordów bx w karcie i jest całkiem bezpieczna. Niestety nie możemy w ten sposób wygenerować każdego EMMa. Można jednak tą metodą np. wpisać Twiny, albo bezpiecznie naprawić kredyty.
Ostatnia metoda wykorzystuje dane, które ostatnio udało się wyciągnąć z kart. Jest ona jeszcze szybsza niż używanie Twinów. Wystarczy znać wartość dowolnego klucza zapisanego w karcie, z przedziału 0-B. Żeby wpisać taki klucz trzeba i tak wcześniej wpisać Twiny, ale za to później można kodować EMMy szybciej i nawet bez dostępu do karty.
Oto opisy podstawowych operacji, jakich możemy dokonywać na karcie. W obecnej chwili można w wielu przypadkach uruchomić niedziałającą kartę, a na działającej zmienić pakiet, lub przedłużyć dowolnie długo jej działanie.
2.1. Sprzęt – można kupić np.: na Allegro - albo giełdach elektronicznych
[FONT=Verdana]Potrzebny będzie programator PHOENIX cena około 50zł
Do tego zasilacz - najlepiej z regulacją napięcia 1,5 – 12 Volt (taki od Walkmana)
(albo bateria 9 Volt - ale zasilacz pewniejszy)[/FONT]

[FONT=Verdana] Kabel RS232 (do portu COM)[/FONT]

[FONT=Verdana] Może się przydać bloker[/FONT]

[FONT=Verdana]
[FONT=Verdana] Potrzebny programator "JDM" lub „JDM-ISO”
(w JDM-ISO jest dodatkowo slot ISO umożliwiający programowanie kart „np.: „zielonki” bez wyciągania układów,

[FONT=Verdana]Po włożeniu układu możemy połączyć kabelkiem szeregowym (RS-232) komputer z programatorem, uruchamiamy program "ICProg".[/FONT]
[FONT=Verdana]
W niektórych Windowsach np. XP - program ICPROG trzeba uruchomić w trybie zgodności, – czyli: zamykamy program, klikamy prawym klawiszem myszy na pliku ICPRG.EXE i wybieramy
WŁAŚCIWOŚCI -> Zgodność -> Klikamy „v” w okienku
URUCHOM TEN PROGRAM W TRYBIE … -? I wybieramy WINDOWS 98 / WINDOWS ME
Na początku musimy ustawić port, z którego będziemy korzystać. Jeżeli używamy tego programu pierwszy raz to okienko z konfiguracją pojawi się automatycznie, jeżeli okienko się nie pojawiło wtedy klikamy na Settings -> Hardware (lub F3) i wybieramy z listy "Programmer" - JDM Programmer, a port ustawiamy na Com 1 lub 2 w zależności, z którego korzystamy i klikamy na OK. Teraz musimy wybrać symbol układu, który programujemy.[/FONT]
[FONT=Verdana]
W naszym przypadku jest to pic 16F84A. Wybieramy program ICPROG.EXE i wybieramy z menu Settings -> Device -> Microchip PIC -> More -> PIC 16F84A lub z rozwijalnej listy w prawym górnym oknie programu wybieramy PIC 16F84A. Okno podglądu podzieli się na dwie części: "Address - Program Code" i "Address - Eeprom Data". Z prawej strony z listy "Oscillator" wybieramy RC, a niżej w polu Fuses: zaznaczona ma być tylko opcja: WDT. Układ najpierw kasujemy klikając na ikonkę z układem i gumką lub z menu wybieramy Command -> Erase All. Gdy zawartość została skasowana możemy przystąpić do otwarcia pliku, np. 16F84.hex - klikając na żółtą teczkę lub File -> Open File... lub CTRL+O. Z listy wybieramy nasz plik i klikamy na ikonkę układu z błyskawicą lub F5 - układ się programuje kilkadziesiąt sekund. Gdy dostaniemy pomyślny komunikat o zakończniu programowania, wyjmujemy układ z podstawki programatora i wkładamy do BLOKERA.[/FONT]
[FONT=Verdana]
Tak wygląda nowa karta CYFRA +[/FONT]


[FONT=Verdana] Jeżeli numer widoczny z tyłu mieści się w przedziale
Od -
Do -
To możemy zacząć się „bawić” kartą.
Jeżeli numer jest wyższy to karta nie nadaje się!!! Jest lepiej zabezpieczona!!![/FONT]
[FONT=Verdana]
Spinamy wszystko razem (programator PHOENIX, zasilacz, RS232 i podłączamy do komputera). Wkładamy kartę do programatora
Uruchamiamy program [/FONT]

[FONT=Verdana] Klikamy - [/FONT][FONT=Verdana]Port Open[/FONT][FONT=Verdana] w dolnym okienku powinno się pojawić info
- ComPort Otwarty i wyświetlić – [/FONT][FONT=Verdana] atr->xxxxxxxxxxxx[/FONT][FONT=Verdana] naszej karty
Klikamy – [/FONT][FONT=Verdana]Read[/FONT][FONT=Verdana] i następuje odczyt naszej karty
(dane z odczytu zapisywane są automatycznie w katalogu „[/FONT][FONT=Verdana]info[/FONT][FONT=Verdana]” w katalogu z programem [/FONT][FONT=Verdana]Fioletowy[/FONT][FONT=Verdana].)
Jeżeli w 2 linijce (id 0065) jest data inna niż [/FONT] [FONT=Verdana]01.01.1991 [/FONT] [FONT=Verdana]
a w Keys jest więcej niż tylko [/FONT][FONT=Verdana]0 (zero)[/FONT][FONT=Verdana] tzn. że karta nie została wyłączona przez operatora.
Dokładnie chodzi o [/FONT][FONT=Verdana]klucz E on MUSI[/FONT][FONT=Verdana] być inaczej karta nie do ruszenia bez
Loga AKTYWACYJNEGO inaczej [/FONT][FONT=Verdana]EMM (- instrukcja od operatora, wysyłana do karty w celu dokonania na niej odpowiednich zmian, np.: aktywacja, dezaktywacja, zmiana pakietu, kluczy i uprawnień.)
[/FONT][FONT=Verdana]
Taki log można znaleźć na uploadach lub pokręcić się po forach dyskusyjnych i popytać ludzi. Niektórzy dają logi, ale np. wymagają udziału w projekcie Faktoryzacji. Jest to, więc jeszcze jeden powód, aby przyłączyć się do tego projektu.
Po zdobyciu, loga, możemy go wysłać, np. programem Fioletowy. Wystarczy w zakładce InsGen wkleić go w odpowiednie okienko, i kliknąć SEND:[/FONT]

[FONT=Verdana] Jeśli zadziałał to na karcie powinniśmy już mieć klucz E (i nie tylko). Możemy to sprawdzić odczytując kartę.
Warto też zobaczyć, jaka będzie odpowiedź karty, żeby ewentualnie wiedzieć, dlaczego log nie zadziałał. Odpowiedź pojawia się w dolnym oknie.
Jednym z najczęstszych przyczyn nie zadziałania logu może być fakt, że instrukcja była kodowana za pomocą tablicy 1001, a ta nie jest aktywna w karcie i nie ma sposobu na jej włączenie. Dokładnie będzie to wyjaśnione dalej.
Może się też zdarzyć, że karta ma tylko klucze 0 i F. Dzieje się tak, jeśli miała już wpisane bliźniaki, a potem została wyłączona przez operatora. W takiej sytuacji istnieje sposób na wpisanie bliźniaków i nie trzeba używać logu aktywacyjnego.
Opis jest w dalszej części dokumentu.
Jest to najprostszy w obsłudze program, do zabawy z kartami. Robi bardzo wiele za użytkownika. Jest to z jednej strony jego wadą, a z drugiej zaletą. Na szczęście w niektórych momentach możemy zamiast niego użyć programu UCDS i wtedy wszystkie operacje są bezpieczne i mamy nad nimi pełną kontrolę.[/FONT]
[FONT=Verdana]
Oto opis z programu Fioletowy:
Przed tą operacją radzę zapisać sobie PPUA i datę. Natomiast po zakończeniu wpisywanie Twinów należy zapisać sobie instrukcję, która to zrobiła (będzie to jeszcze dokładniej opisane).
[/FONT][FONT=Verdana]Wkładamy kartę do programatora Phoenix i klikamy Port Open następnie klikamy w zakładce Info na klawisz Read po czy zostanie odczytana karta. Teraz zapisujemy sobie na wszelki wypadek PPUA na jakiejś kartce i przechodzimy do zakładki Records Bx
Następnie klikamy na Credits Info, aby dowiedzieć się czy mamy tak potrzebne do tej operacji Żetony, Jeśli po odczytaniu kredytu ich wartość jest większa od 0000 a mniejsza lub równa 7FFF to jest OK. w takim przypadku bez wahania klikamy Write BX 9F, 5F i czekamy aż program doda na karcie odpowiednie rekordy. Pierwsze 5 rekordów ma wyglądać tak po tej operacji:
010E905900000000000000
010F905F00000000000000
011300FD00000000000000
0113010000000000000000
0113020000000000000000
Jeżeli poniżej tej piątki, są jeszcze jakiś rekordy, to nie przejmujemy się tym, gdyż program jest tak skonstruowany, że do parsingu wykorzystuje tylko te indexy :
OK. Mamy piękne rekordy. Teraz czas na Write Twins. No to do roboty. Klikamy Write Twin i czekamy program przeprowadza parsing, więc wylicza nam odpowiedniego EMM-a, który wpisze nam nasze Twinki :
Jeśli program wyliczy i doda nam klucze, to dowiesz się o tym przez odpowiedni komunikat
a Emm zostanie dodatkowo zapisany do katalogu "Dane".
Po dopisaniu kluczyków przechodzimy do zakładki Info i klikamy sobie Read w celu sprawdzenia czy faktycznie klucze zostały dopisane. W tym momencie, jeśli jest tak jak
Powinno, to cieszymy się z dodatkowej parki
Teraz zajmiemy się problemem braku lub ujemnym stanem żetonów. Mamy na to złoty środek. Jeszcze tak prosto nie było, jak teraz :
Więc, zakładamy, że mamy nieodpowiedni stan żetonów tzn. albo 0000 albo powyżej 7FFF w takim przypadku przechodzimy do zakładki Corte (oczywiście spisujemy sobie oryginalne PPUA!!!)
i klikamy na klawiszu Credits Fix program zacznie mielić i po wpisaniu nam odpowiedniego stanu wyskoczy stosowny komunikat. Teraz wracamy do zakładki Records Bx. Odczytujemy kredyty i zachwycamy się stanem konta. Hehe : Jeśli stwierdzimy, że kredyty mamy już w porządku, to przystępujemy do dodawania kluczy Twin według powyższego opisu.[/FONT][FONT=Verdana]
Odradzam stosowanie powyższej metody do naprawy kredytów. Istnieje dużo bezpieczniejsza metoda i będzie ona opisana w dalszej części tekstu.
[/FONT]
[FONT=Verdana]/ciąg dalszy w następnym poście
[/FONT]
Przedstawione tutaj informacje mają charakter wyłącznie edukacyjny.
Oglądanie płatnej telewizji (jakiejkolwiek telewizji analogowej lub cyfrowej) bez wykupienia abonamentu jest przestępstwem!!!
Tekst zawiera opisy, które można znaleźć na forach dyskusyjnych i uploadach. Nie jesteśmy ich autorami. Zebraliśmy je tylko i uzupełniliśmy tak, aby były bardziej zrozumiałe.Oglądanie płatnej telewizji (jakiejkolwiek telewizji analogowej lub cyfrowej) bez wykupienia abonamentu jest przestępstwem!!!
[/FONT]
[FONT=Verdana]Jeśli ktoś zauważy jakieś błędy, albo coś nie będzie jasne, piszcie np. na forum zieleniny. [/FONT]
[FONT=Verdana]Jak będziemy mieli trochę czasu powstaną kolejne wersje.[/FONT]
[FONT=Verdana] Spis Treści:
1. Teoria (absolutne minimum)[/FONT]
1. Teoria (absolutne minimum)[/FONT]
[FONT=Verdana]
1.1 Co jest zapisane na karcie?
1.1.1 Podstawowe informacje zapisane w karcie
1.1.2 Klucze
1.1.3 Podpis PBMu
1.2 Co to są EMMy i ECMy
1.3 Wysyłanie EMMów i odpowiedź karty
1.4 Nano-instrukcje dla EMMów
1.5 Co jest potrzebne, aby karta działała?
1.6 Jak przebiegają zmiany na karcie przeprowadzane przez operatora?
1.7 Jak możemy sami dokonywać zmian?
1.7.1 Co to są Twiny (bliźniaki)
1.7.2 Inne sposoby tworzenia EMMów
2. Praktyka [/FONT]
1.1 Co jest zapisane na karcie?
1.1.1 Podstawowe informacje zapisane w karcie
1.1.2 Klucze
1.1.3 Podpis PBMu
1.2 Co to są EMMy i ECMy
1.3 Wysyłanie EMMów i odpowiedź karty
1.4 Nano-instrukcje dla EMMów
1.5 Co jest potrzebne, aby karta działała?
1.6 Jak przebiegają zmiany na karcie przeprowadzane przez operatora?
1.7 Jak możemy sami dokonywać zmian?
1.7.1 Co to są Twiny (bliźniaki)
1.7.2 Inne sposoby tworzenia EMMów
2. Praktyka [/FONT]
[FONT=Verdana]
2.1 Sprzęt
2.2 Sprawdzamy wersję karty
2.3 Co możemy zrobić z kartą, odczyt karty
2.4 Program Fioletowy
2.4.1 Wpisanie Twinów
2.4.2 Tablice 1001 i 1003
2.4.3 Zmiany kluczy i innych parametrów
2.4.4 Zmiana seriala i wpisanie podpisu PBMu
2.4.5 Dekodowanie instrukcji
2.4.6 Jak zrobić kartę z AutoUpdate’m
2.4.7 Zabezpieczenia przed deaktywacją
2.5 Program UCDS
2.5.1 Instalacja
2.5.2 Generowanie instrukcji
2.5.3 Zapis rekordów bx
2.5.4 Parsing
2.5.5 Czyszczenie rekordów bx, gdy nie mamy Twinów
2.5.6 Bezpieczna naprawa kredytów
2.5.7 Wpisanie Twinów bez zmiany daty
2.5.8 Reaktywacja Twinów na karcie z kluczami 0,F
2.6 Kombinacje z telefonami do BOKu – bezpieczna zmiana pakietu
2.7 Opłacane karty, – na co uważać[/FONT]
2.1 Sprzęt
2.2 Sprawdzamy wersję karty
2.3 Co możemy zrobić z kartą, odczyt karty
2.4 Program Fioletowy
2.4.1 Wpisanie Twinów
2.4.2 Tablice 1001 i 1003
2.4.3 Zmiany kluczy i innych parametrów
2.4.4 Zmiana seriala i wpisanie podpisu PBMu
2.4.5 Dekodowanie instrukcji
2.4.6 Jak zrobić kartę z AutoUpdate’m
2.4.7 Zabezpieczenia przed deaktywacją
2.5 Program UCDS
2.5.1 Instalacja
2.5.2 Generowanie instrukcji
2.5.3 Zapis rekordów bx
2.5.4 Parsing
2.5.5 Czyszczenie rekordów bx, gdy nie mamy Twinów
2.5.6 Bezpieczna naprawa kredytów
2.5.7 Wpisanie Twinów bez zmiany daty
2.5.8 Reaktywacja Twinów na karcie z kluczami 0,F
2.6 Kombinacje z telefonami do BOKu – bezpieczna zmiana pakietu
2.7 Opłacane karty, – na co uważać[/FONT]
[FONT=Verdana]2.8 Logowanie
2.8.1 Sprzęt
2.8.2 Przygotowanie karty
2.8.3 Program T8_Log – konfiguracja
2.8.4 Logujemy
2.8.5 Obróbka zlogowanych EMMów
2.9 Karty 7.0B - reaktywacja
2.9.1 Co jest potrzebne, aby uruchomić kartę
2.9.2 Zbieramy logi
2.9.3 Bombing i dopisywanie kluczy
3. Projekt „Faktoryzacja”, – o co w nim chodzi, instalacja programu itp.
[/FONT]
2.8.1 Sprzęt
2.8.2 Przygotowanie karty
2.8.3 Program T8_Log – konfiguracja
2.8.4 Logujemy
2.8.5 Obróbka zlogowanych EMMów
2.9 Karty 7.0B - reaktywacja
2.9.1 Co jest potrzebne, aby uruchomić kartę
2.9.2 Zbieramy logi
2.9.3 Bombing i dopisywanie kluczy
3. Projekt „Faktoryzacja”, – o co w nim chodzi, instalacja programu itp.
[/FONT]
[FONT=Verdana]
1.1 Co jest zapisane w karcie?
1.1.1 Podstawowe informacje zapisane w karcie
PPUA - 4-bajtowy adres używany do przesyłania uprawnień, może być zmieniany przez nadawcę.
SA - 3 pierwsze bajty PPUA - inaczej grupa, do każdej grupy należy 256 kart, (ponieważ tyle wartości może przyjmować ostatni bajt)
UA (serial, numer seryjny)- unikalny i niezmienny 4-bajtowy adres karty, wydrukowany również w formie decymalnej na odwrocie.
Tak naprawdę, to UA miało być niezmienne, ale technicy nie przewidzieli możliwości hakerów i teraz da się go zmienić
PBM - maska uprawnień, każdy ECM niosący słowo do odkodowania posiada również tzw. channel bundle, który wskazuje na nr bitu w PBM, jeśli ten bit ma wartość 1 to znaczy, że mamy prawa do oglądania pakietu, z którego pochodzi ten program i zachodzi dekrypcja
Inaczej mówiąc PBM określa jaki pakiet mamy. Każdy pakiet, to inny PBM.[/FONT]
[FONT=Verdana]1.1.2[/FONT][FONT=Verdana]Klucze[/FONT]
[CENTER] [FONT=Verdana]Numer[/FONT]
[/CENTER]
[CENTER] [FONT=Verdana]Zastosowanie[/FONT]
[/CENTER]
[CENTER] [FONT=Verdana]Wartość[/FONT]
[/CENTER]
[CENTER] [FONT=Verdana]0[/FONT]
[/CENTER]
[FONT=Verdana]Jest używany przez operatora do aktywacji i deaktywacji karty, oraz do zmiany pakietu.[/FONT]
[FONT=Verdana]Jest inny w każdej karcie i nie ma sposobu na poznanie jego wartości[/FONT]
[CENTER] [FONT=Verdana]1[/FONT]
[/CENTER]
[FONT=Verdana]Jest używany przez operatora do przesyłania, co miesiąc uprawnień oraz kluczy C i D. Może także służyć do deaktywacji.[/FONT]
[FONT=Verdana]Jest taki sam dla kart z jednej grupy, czyli dla kart o takich samych 3 pierwszych bajtach PPUA. Możemy poznać jego wartość dekodując instrukcję, która aktywowała kartę (będzie o tym napisane dalej)[/FONT]
[CENTER] [FONT=Verdana]4[/FONT]
[/CENTER]
[FONT=Verdana]Nie jest używany przez operatora, natomiast my będziemy go wpisywali a następnie używali np. podczas zmiany numery seryjnego karty.[/FONT]
[FONT=Verdana]Jeśli karta była przełączana w tryb ATR3, aby zmienić serial, to klucz ten został wpisany i ma wartość: 58 7C 00 A6 5A 47 A5 96[/FONT]
[CENTER] [FONT=Verdana]9[/FONT]
[/CENTER]
[FONT=Verdana]Jeden z bliźniaków. Zamiast niego, może być użyty inny klucz z przedziału 2-B, ale zazwyczaj używa się akurat tego.[/FONT]
[FONT=Verdana]Jeśli ma być użyty jako Bliźniak, to musi mieć taka samą wartość jak F[/FONT]
[CENTER] [FONT=Verdana]C, D[/FONT]
[/CENTER]
[FONT=Verdana]Używane przez operatora do kodowania ECMów[/FONT]
[FONT=Verdana]Zmieniają swoje wartości. Możemy je poznać dekodując EMM dosyłający je.[/FONT]
[CENTER] [FONT=Verdana]E[/FONT]
[/CENTER]
[FONT=Verdana] j.w. Ale jest używany podczas przełączania z klucza C na D i odwrotnie[/FONT]
[FONT=Verdana]Posiada go każda aktywna karta i ma on stałą wartość: D0 2F 36 F0 C5 B4 2F 23[/FONT]
[CENTER] [FONT=Verdana]F[/FONT]
[/CENTER]
[FONT=Verdana]Ten klucz ma pewne szczególne własności i dlatego będziemy go wykorzystywali jako drugiego z bliźniaków[/FONT]
[FONT=Verdana]Musi mieć taką samą wartość jak pierwszy z bliźniaków[/FONT]
[FONT=Verdana]Jak widać klucze dzielą się na 3 grupy. Klucze główne (MK) czyli klucze z przedziału 0-B i nimi mogą być kodowane EMMy. Klucze operacyjne, czyli C, D i E. Nimi mogą być kodowane ECMy. Oraz klucz F, którego nie wykorzystuje operator, ale ma on specjalne działanie i można łatwo kodować za jego pomocą.
1.1.3. Podpis PBMu
W maju tego roku Cyfra zastosowała dodatkowe zabezpieczenie. Dodatkowo na karcie jest zapisywany podpis PBM’u. Jest on zakodowany i zawiera PBM oraz numer seryjny karty. Jeśli serial lub PBM zapisany w karcie nie zgadza się z tym zapisanym w podpisie, to karta nie będzie działać.
Nie znając sposobu zmiany tworzenia takiego podpisu, nie można było zmienić sobie pakietu poprzez zmianę PBMu.
Teraz można to już obejść używając podpisu z innej karty i zmieniając serial. Dodatkowym utrudnieniem jest to, że podpis zawiera datę wysłania go przez operatora. Można wpisywać tylko nowszy podpis niż ten, który już jest w karcie.
1.2 Co to są EMMy i ECMy
Aby sygnał był dekodowany karta musi, co chwile dekodować pewien klucz, który jest przesyłany, co chwilę wraz sygnałem. Dekoder przesyła go do karty, a ta dekoduje go i przesyła do dekodera. To przesyłanie odbywa się za pomocą instrukcji nazywanej ECM. W dalszej części będzie opisane, jakie warunki musi spełnić karta, aby prawidłowo odpowiadać, na ECMy.
Natomiast EMMy przesyłane są dużo rzadziej i mają na celu dokonanie zmian w karcie. Operator używa ich, aby np. aktywować kartę, albo zmienić klucze. Naszym zadaniem będzie, więc tworzenie własnych EMMów, za pomocą, których będziemy dokonywali zmian w karcie, które umożliwią nam jej aktywację, podniesienie pakietu itp. Oczywiście EMMy są zakodowane i właśnie to zabezpieczenie będziemy się starali obejść.
1.3 Wysyłanie EMMów i odpowiedź karty
Gotowe EMMy możemy wysyłać bardzo wieloma programami. Ja używam Fioletowego. Instrukcję można wysłać za jego pomocą wklejając ją w środkowym oknie w zakładce InsGen i wciskając przycisk SEND. Całą komunikację można oglądać w dolnym oknie. Najważniejsza jest odpowiedź karty. Komunikacja wygląda tak:
Dekoder->karta : C1 40 xx xx xx - to jest nagłówek instrukcji
Karta->dekoder : 40 - ACK czyli odpowiedź karty, że oczekuje na dane
Dekoder->karta : ... - zakodowane dane, inne dla każdego EMMa
Karta->dekoder : yy yy - odpowiedź karty
Na podstawie odpowiedzi karty możemy wnioskować, czy instrukcja została przyjęta i czy dokonała jakiś zmian.
LISTA odpowiedzi...
67 00 Niepoprawna długość Len
6B 00 Parameter/Reference-Bajt poprawny
6D 00 Instrukcja niewykonana/ważna lub Instrukcja chroniona
6E 00 Klasa niepoprawna / niewykonana
6F 00 Zła sygnatura
62 81 Zwrócone dane / manipulacja w danych
62 82 Koniec pliku został osiągnięty przed końcem czytania
62 84 Wybrany plik nie jest ważny
65 01 Błąd połączenia z pamięcią
68 00 Instrukcja niewykonana przez kartę
6A 00 Bajty P1 lub P2 lub P1 i P2 są niepoprawne
6A 80 Parametry w danych są niepoprawne
6A 82 File nie znaleziono
6A 83 Recordu nie znaleziono
6A 84 Niewystarczająco miejsca w pamięci lub za duży plik
6A 87 wartość P3 nie jest zgodna z wartością P1 i P2
6A 88 danych nie znaleziono
6C XX Niepoprawna długość Len P3
90 00 Instrukcja wykonana poprawnie
90 01 Błąd pamięci
90 02 Niewłaściwa sygnatura lub jej lokalizacja
90 04 Brak Providera
90 05 Instrukcja nie dotyczy systemu ****
90 06 wysłano poza pamięć dla podglądu zapisu
90 07 Niedozwolone -provider zablokował
90 08 Nano 0x01 niedozwolone
90 09 Ppua nie zgodne z Bitmapą F0 (CW nieaktywne)
90 10 Niewłaściwy PIN
90 11 Testbit nieustawiony, Instrukcja niewykonana
90 13 Dozwolona tylko z Management Keys
90 14 Niewłaściwy numer instrukcji
90 15 Nano niedozwolone lub zła wartości do otworzenia wejście
90 16 Nie zdołała się wykonać lub niedozwolona
90 17 Niedozwolona
90 18 Provider już istnieje
90 19 Ppua zmienione
90 1A Dokup żetony/Niewłaściwe żetony
90 1B Niewłaściwe żetony lub credit record
90 1C Żetony właściwe
90 1D Brak Primary Key
90 1E Błąd
90 1F Brak Secondary Key
90 21 Klucz nie jest 0F - Odrzucony
90 22 Karta w niewłaściwym trybie
90 24 Błąd sumy kontrolnej / instr. Niedozwolona w ATR poziom 3
90 26 Koniec podglądu
90 27 Dekodowanie - podgląd fazy
90 28 Klucz niezgodny z indeksem
93 01 Wygasała data /jest niższa niż dopuszczalna
93 01 Karta nieaktywna
93 02 Brak dekodowania
93 04 Parental guidance to low (Coś z blokadą rodzicielską ???)
93 05 Transmisja nie dla tej geograficznej strefy (Region code)
94 01 Zła wartości P1
94 02 Zła wartości P2
96 00 Niewłaściwe dane wejścia lub dane= zero. Przerwane dekodowanie
9A 00 Niepoprawny Keyindex
96 XX Niewłaściwe nano
97 XX Aktualizowanie EEPROM nie było konieczne dla jakiś nano - bitmapy xx
99 XX Niewłaściwe dane, już zaktualizowane dzisiaj lub niewłaściwa data[/FONT]
[FONT=Verdana]
1.4 Nano-instrukcje dla EMMów
Jeśli udałoby nam się zdekodować EMMa, to zobaczylibyśmy, że składa się z nanoinstrukcji. Każda nanoinstrukcja składa się z jednego bajtu, który mówi, co ona robi, a następnie z ciągu danych. Oto przykład nanoinstrukcji:[/FONT]
[FONT=Verdana]4[/FONT][FONT=Verdana]1[/FONT][FONT=Verdana] 12 34 56 78[/FONT]
[FONT=Verdana]Jest to nanoinstrukcja 41, która zmienia PPUA. Jej dane to: 11 22 33 44. A więc zmieni ona PPUA, na 12 34 56 78
Inny przykład:
[/FONT]
[FONT=Verdana]1[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]0C[/FONT]
[FONT=Verdana]
Jest to nanoinstrukcja 10, która usuwa klucz. W tym przypadku jest to klucz C.
Pierwszy znak pierwszego bajtu (zaznaczony na czerwono) mówi jak długi ma być ciąg danych:
1...9 – 1...9 bajtów
A – 10 bajtów
B – 11 bajtów
C – 12 bajtów
D – 16 bajtów
E – 24 bajty
F – 32 bajty
EMM, może zawierać wiele nanoinstrukcji jeśli np. zdekodujemy jakiś EMM i będzie on miał następujące dane (dodałem nawiasy, aby było czytelniej):
(41) 11 11 11 11 (10) 0C (80) FF FF FF FF FF FF FF FF
To wykona on trzy operacje: zmieni PPUA ma 11 11 11 11, skasuje klucz C i zmieni PBM na FF FF FF FF FF FF FF FF[/FONT]
[FONT=Verdana]
Oto lista najczęściej używanych nanoinstrukcji:
01 – odblokowanie nano 24
02 – zablokowanie nano 24
03 – kasowanie PIN’u
10 – kasowanie klucza
11 – kasowanie rekordu SECA
21 – zmiana daty
22 – sprawdzenie daty
23 – dodanie providera
24 – ustala providera, do którego będzie kierowane kolejne nano
25 – kasowanie providera
40 – kasowanie rekordów PPV
41 – zmiana PPUA
42 – zapisanie kredytów
43 – dodanie kredytów
80 – zmiana PBM
82 – sygnatura (musi być w każdym EMMie, ale programy zazwyczaj liczą ją automatycznie)
90 – wpisz klucz primary
91 – wpisz klucz secondary
D0 – zmiana nazwy providera
Poza tym jest kilka nanoinstrukcji, których tutaj nie wymieniłem. Pojawią się w dalszej części opisu.
1.5 Co jest potrzebne, aby karta działała?
- Musi mieć datę uprawnień z przyszłości
- Musi mieć prawidłowy klucz C lub D na bieżący miesiąc
- Musi mieć podpis PBMu zgodny z PBMem i serialem karty.
1.6 Jak przebiegają zmiany na karcie przeprowadzane przez operatora?
Po pierwsze przeprowadzana jest aktywacja. Operator wysyła EMMa kodowanego kluczem 0 i kierowanego do tej właśnie karty (na podstawie numeru seryjnego), który wpisuje klucz 1 i w ten sposób karta jest przydzielana do pewnej grupy. Dostaje również PPUA, którego pierwsze 3 bajty (SA) są odpowiednie dla danej grupy. Drugi etap aktywacji, to wpisanie PBMu odpowiedniego dla wykupionego pakietu, oraz podpisu PBMu zawierającego serial i PBM tej karty. Ostatnim etapem jest wpisanie kluczy C, D, E i daty, tak, aby było możliwe oglądanie w tym miesiącu.
Co miesiąc są dosyłane klucze i zmieniana data. Ta instrukcja jest kierowana, do całej grupy kart, czyli jest kodowana kluczem 1 i kierowana na SA. Po zdekodowaniu zawiera nano, które mówi, które karty z grupy mają taka instrukcje wykonać (pozostałe karty, czyli te, które nie są opłacone nie wykonają tej instrukcji). Analogicznie jest przesyłana deaktywacja, tylko, że przyjmują ją, nieopłacone karty.
1.7 Jak możemy sami dokonywać zmian?
Najpopularniejsza metodą jest użycie Twinów, czyli bliźniaczych kluczy. Metoda ta nie jest jednak ani najszybsza, ani najnowsza, ani najstarsza. Jednak podczas każdych zabaw z kartą wcześniej czy później trzeba je wpisać.
1.7.1 Co to są Twiny (bliźniaki)
1.7.2 Inne sposoby tworzenia EMMów
Pierwszą jest generowanie losowych EMMów. Istnieje sposób na generowanie dowolnej liczby losowych EMMów, których zawartości nie znamy. Znamy jedynie długość. Pomysł polega na tym, ze jeśli np. EMM ma długość 5 bajtów to najprawdopodobniej zawiera jedno nano. A nanoinstrukcje o 5 bajtach mogą albo zmienić PPUA, albo zmienić liczbę kredytów. Oczywiście możemy też mieć pecha i mogą skasować jakiś klucz. Dlatego stosowanie obecnie takiej metody np. w opłacanych kartach jest bardzo niebezpieczne. Co ciekawe taką metodą program Fioletowy wpisuje właściwą liczbę kredytów (jest to konieczne, aby wpisać Twiny tym programem). Dlatego zazwyczaj towarzyszy temu zmiana PPUA, a może być dużo gorzej.
Druga metoda polega na wykorzystaniu rekordów bx w karcie i jest całkiem bezpieczna. Niestety nie możemy w ten sposób wygenerować każdego EMMa. Można jednak tą metodą np. wpisać Twiny, albo bezpiecznie naprawić kredyty.
Ostatnia metoda wykorzystuje dane, które ostatnio udało się wyciągnąć z kart. Jest ona jeszcze szybsza niż używanie Twinów. Wystarczy znać wartość dowolnego klucza zapisanego w karcie, z przedziału 0-B. Żeby wpisać taki klucz trzeba i tak wcześniej wpisać Twiny, ale za to później można kodować EMMy szybciej i nawet bez dostępu do karty.
2. Praktyka
Oto opisy podstawowych operacji, jakich możemy dokonywać na karcie. W obecnej chwili można w wielu przypadkach uruchomić niedziałającą kartę, a na działającej zmienić pakiet, lub przedłużyć dowolnie długo jej działanie.
2.1. Sprzęt – można kupić np.: na Allegro - albo giełdach elektronicznych
Zaczynamy, – co będzie potrzebne?
[/FONT]
[FONT=Verdana]Potrzebny będzie programator PHOENIX cena około 50złDo tego zasilacz - najlepiej z regulacją napięcia 1,5 – 12 Volt (taki od Walkmana)
(albo bateria 9 Volt - ale zasilacz pewniejszy)[/FONT]

[FONT=Verdana] Kabel RS232 (do portu COM)[/FONT]

[FONT=Verdana] Może się przydać bloker[/FONT]

[FONT=Verdana]
Programowanie BLOKERA
(pic 16F84A) - programem - „IC-Prog 1.04” Lub 1.05[/FONT][FONT=Verdana] Potrzebny programator "JDM" lub „JDM-ISO”
(w JDM-ISO jest dodatkowo slot ISO umożliwiający programowanie kart „np.: „zielonki” bez wyciągania układów,
zwrócić uwagę
na małe wycięcia z lewej strony układu i podstawki - oznaczają, że w ten sposób ma być wkładany układ.[/FONT]
[FONT=Verdana]Po włożeniu układu możemy połączyć kabelkiem szeregowym (RS-232) komputer z programatorem, uruchamiamy program "ICProg".[/FONT]
[FONT=Verdana]
W niektórych Windowsach np. XP - program ICPROG trzeba uruchomić w trybie zgodności, – czyli: zamykamy program, klikamy prawym klawiszem myszy na pliku ICPRG.EXE i wybieramy
WŁAŚCIWOŚCI -> Zgodność -> Klikamy „v” w okienku
URUCHOM TEN PROGRAM W TRYBIE … -? I wybieramy WINDOWS 98 / WINDOWS ME
Na początku musimy ustawić port, z którego będziemy korzystać. Jeżeli używamy tego programu pierwszy raz to okienko z konfiguracją pojawi się automatycznie, jeżeli okienko się nie pojawiło wtedy klikamy na Settings -> Hardware (lub F3) i wybieramy z listy "Programmer" - JDM Programmer, a port ustawiamy na Com 1 lub 2 w zależności, z którego korzystamy i klikamy na OK. Teraz musimy wybrać symbol układu, który programujemy.[/FONT]
[FONT=Verdana]
W naszym przypadku jest to pic 16F84A. Wybieramy program ICPROG.EXE i wybieramy z menu Settings -> Device -> Microchip PIC -> More -> PIC 16F84A lub z rozwijalnej listy w prawym górnym oknie programu wybieramy PIC 16F84A. Okno podglądu podzieli się na dwie części: "Address - Program Code" i "Address - Eeprom Data". Z prawej strony z listy "Oscillator" wybieramy RC, a niżej w polu Fuses: zaznaczona ma być tylko opcja: WDT. Układ najpierw kasujemy klikając na ikonkę z układem i gumką lub z menu wybieramy Command -> Erase All. Gdy zawartość została skasowana możemy przystąpić do otwarcia pliku, np. 16F84.hex - klikając na żółtą teczkę lub File -> Open File... lub CTRL+O. Z listy wybieramy nasz plik i klikamy na ikonkę układu z błyskawicą lub F5 - układ się programuje kilkadziesiąt sekund. Gdy dostaniemy pomyślny komunikat o zakończniu programowania, wyjmujemy układ z podstawki programatora i wkładamy do BLOKERA.[/FONT]
[FONT=Verdana]
2.2 Sprawdzamy wersję karty
Tak wygląda nowa karta CYFRA +[/FONT]


[FONT=Verdana] Jeżeli numer widoczny z tyłu mieści się w przedziale
Od -
0 72.100.xxx.
Do -
0 72.103.68x.
Podobno do 0 72.103.699.
Ale tego nie wiem na pewno.To możemy zacząć się „bawić” kartą.
Jeżeli numer jest wyższy to karta nie nadaje się!!! Jest lepiej zabezpieczona!!![/FONT]
[FONT=Verdana]
2.3 Co możemy zrobić z kartą
Spinamy wszystko razem (programator PHOENIX, zasilacz, RS232 i podłączamy do komputera). Wkładamy kartę do programatora
Uruchamiamy program [/FONT]
[FONT=Verdana]Fioletowy 3.3X[/FONT]

[FONT=Verdana] Klikamy - [/FONT][FONT=Verdana]Port Open[/FONT][FONT=Verdana] w dolnym okienku powinno się pojawić info
- ComPort Otwarty i wyświetlić – [/FONT][FONT=Verdana] atr->xxxxxxxxxxxx[/FONT][FONT=Verdana] naszej karty
Klikamy – [/FONT][FONT=Verdana]Read[/FONT][FONT=Verdana] i następuje odczyt naszej karty
(dane z odczytu zapisywane są automatycznie w katalogu „[/FONT][FONT=Verdana]info[/FONT][FONT=Verdana]” w katalogu z programem [/FONT][FONT=Verdana]Fioletowy[/FONT][FONT=Verdana].)
Jeżeli w 2 linijce (id 0065) jest data inna niż [/FONT] [FONT=Verdana]01.01.1991 [/FONT] [FONT=Verdana]
a w Keys jest więcej niż tylko [/FONT][FONT=Verdana]0 (zero)[/FONT][FONT=Verdana] tzn. że karta nie została wyłączona przez operatora.
Dokładnie chodzi o [/FONT][FONT=Verdana]klucz E on MUSI[/FONT][FONT=Verdana] być inaczej karta nie do ruszenia bez
Loga AKTYWACYJNEGO inaczej [/FONT][FONT=Verdana]EMM (- instrukcja od operatora, wysyłana do karty w celu dokonania na niej odpowiednich zmian, np.: aktywacja, dezaktywacja, zmiana pakietu, kluczy i uprawnień.)
[/FONT][FONT=Verdana]
Taki log można znaleźć na uploadach lub pokręcić się po forach dyskusyjnych i popytać ludzi. Niektórzy dają logi, ale np. wymagają udziału w projekcie Faktoryzacji. Jest to, więc jeszcze jeden powód, aby przyłączyć się do tego projektu.
Po zdobyciu, loga, możemy go wysłać, np. programem Fioletowy. Wystarczy w zakładce InsGen wkleić go w odpowiednie okienko, i kliknąć SEND:[/FONT]

[FONT=Verdana] Jeśli zadziałał to na karcie powinniśmy już mieć klucz E (i nie tylko). Możemy to sprawdzić odczytując kartę.
Warto też zobaczyć, jaka będzie odpowiedź karty, żeby ewentualnie wiedzieć, dlaczego log nie zadziałał. Odpowiedź pojawia się w dolnym oknie.
Jednym z najczęstszych przyczyn nie zadziałania logu może być fakt, że instrukcja była kodowana za pomocą tablicy 1001, a ta nie jest aktywna w karcie i nie ma sposobu na jej włączenie. Dokładnie będzie to wyjaśnione dalej.
Może się też zdarzyć, że karta ma tylko klucze 0 i F. Dzieje się tak, jeśli miała już wpisane bliźniaki, a potem została wyłączona przez operatora. W takiej sytuacji istnieje sposób na wpisanie bliźniaków i nie trzeba używać logu aktywacyjnego.
Opis jest w dalszej części dokumentu.
2.4 Program Fioletowy
Jest to najprostszy w obsłudze program, do zabawy z kartami. Robi bardzo wiele za użytkownika. Jest to z jednej strony jego wadą, a z drugiej zaletą. Na szczęście w niektórych momentach możemy zamiast niego użyć programu UCDS i wtedy wszystkie operacje są bezpieczne i mamy nad nimi pełną kontrolę.[/FONT]
[FONT=Verdana]
2.4.1 Wpisanie Twinów
Oto opis z programu Fioletowy:
Przed tą operacją radzę zapisać sobie PPUA i datę. Natomiast po zakończeniu wpisywanie Twinów należy zapisać sobie instrukcję, która to zrobiła (będzie to jeszcze dokładniej opisane).
[/FONT][FONT=Verdana]Wkładamy kartę do programatora Phoenix i klikamy Port Open następnie klikamy w zakładce Info na klawisz Read po czy zostanie odczytana karta. Teraz zapisujemy sobie na wszelki wypadek PPUA na jakiejś kartce i przechodzimy do zakładki Records Bx
Następnie klikamy na Credits Info, aby dowiedzieć się czy mamy tak potrzebne do tej operacji Żetony, Jeśli po odczytaniu kredytu ich wartość jest większa od 0000 a mniejsza lub równa 7FFF to jest OK. w takim przypadku bez wahania klikamy Write BX 9F, 5F i czekamy aż program doda na karcie odpowiednie rekordy. Pierwsze 5 rekordów ma wyglądać tak po tej operacji:
010E905900000000000000
010F905F00000000000000
011300FD00000000000000
0113010000000000000000
0113020000000000000000
Jeżeli poniżej tej piątki, są jeszcze jakiś rekordy, to nie przejmujemy się tym, gdyż program jest tak skonstruowany, że do parsingu wykorzystuje tylko te indexy :
OK. Mamy piękne rekordy. Teraz czas na Write Twins. No to do roboty. Klikamy Write Twin i czekamy program przeprowadza parsing, więc wylicza nam odpowiedniego EMM-a, który wpisze nam nasze Twinki :
Jeśli program wyliczy i doda nam klucze, to dowiesz się o tym przez odpowiedni komunikat
a Emm zostanie dodatkowo zapisany do katalogu "Dane".
Po dopisaniu kluczyków przechodzimy do zakładki Info i klikamy sobie Read w celu sprawdzenia czy faktycznie klucze zostały dopisane. W tym momencie, jeśli jest tak jak
Powinno, to cieszymy się z dodatkowej parki
Teraz zajmiemy się problemem braku lub ujemnym stanem żetonów. Mamy na to złoty środek. Jeszcze tak prosto nie było, jak teraz :
Więc, zakładamy, że mamy nieodpowiedni stan żetonów tzn. albo 0000 albo powyżej 7FFF w takim przypadku przechodzimy do zakładki Corte (oczywiście spisujemy sobie oryginalne PPUA!!!)
i klikamy na klawiszu Credits Fix program zacznie mielić i po wpisaniu nam odpowiedniego stanu wyskoczy stosowny komunikat. Teraz wracamy do zakładki Records Bx. Odczytujemy kredyty i zachwycamy się stanem konta. Hehe : Jeśli stwierdzimy, że kredyty mamy już w porządku, to przystępujemy do dodawania kluczy Twin według powyższego opisu.[/FONT][FONT=Verdana]
Odradzam stosowanie powyższej metody do naprawy kredytów. Istnieje dużo bezpieczniejsza metoda i będzie ona opisana w dalszej części tekstu.
[/FONT]
[FONT=Verdana]/ciąg dalszy w następnym poście
[/FONT]
04.12.07 17:22
|
#677421
|
(link)
|
zgłoś naruszenie
[FONT=Verdana]
EMMy mogą być kodowane za pomocą jednej z dwóch tablic, oznaczonych 1001 oraz 1003. Do marca tego roku karty miały włączoną tylko tablicę 1001 i operator kodował EMMy właśnie za pomocą tej tablicy. W marcu operator wyłączył w kartach tablicę 1001 i włączył tablicę 1003. Od tej pory karty przyjmują tylko EMMy kodowane za pomocą 1003, natomiast kodowane tablicą 1001 odrzucają. Ważne jest, że tablicę 1003 można włączyć np. za pomocą programu Fioletowy (nie wyłączając tablicy 1001).
Możemy więc mieć dwie sytuacje:
- karta była opłacana po marcu – aktywna jest tylko tablica 1003
- karta została wyłączone przed marcem – aktywna jest tylko tablica 1001. Możemy dodatkowo włączyć tablice 1003 i obydwie będą aktywne
Można łatwo sprawdzić jaką tablicą jest kodowany EMM. Mówią o tym pierwsze 2 bajty za nagłówkiem. Czyli EMM ma postać:
C1 40 xx xx xx (40) 10 01...
Albo
C1 40 xx xx xx (40) 10 03...
Aby sprawdzić, które tablice są aktywne w karcie, należy wcisnąć przycisk „Bug Info” w zakładce „Info”. Jednak, aby to zrobić, karta musi mieć klucz E.[/FONT]

[FONT=Verdana] Jeżeli okaże się, że aktywna jest tylko tablica 1001, proponuję od razu uaktywnić również tablicę 1003 wciskając przycisk „Activate 1003” w zakładce „Twins”.[/FONT]

[FONT=Verdana]Po tej operacji można sprawdzić, czy tablica jest już aktywna wciskając znowu „Bug info”. W kolejnych opisach, będę zakładał, że tablica 1003 jest aktywna.
Po wpisaniu bliźniaków i ewentualnej aktywacji tablicy 1003, możemy przejść do dokonywania zmian w karcie. Wszystko będziemy robić w zakładce „Twins”.
Pierwsze, co możemy zrobić, żeby sprawdzić czy wszystko działa, to np. zmienić datę. Po wpisaniu Twinów mamy jakąś kosmiczną datę z przyszłości. Do działania karty jest potrzebna jakakolwiek data z przyszłości. Więc ta będzie w porządku, ale spróbujmy wpisać np. 20 grudnia 2007 r. Najpierw proponuję sprawdzić czy wszystkie ustawienia są takie jak na poniższym screenshocie, a następnie wcisnąć przycisk z kalendarzem:[/FONT]

[FONT=Verdana] Pojawi się nowe okno, a w nim możemy wybrać odpowiednią datę. Następnie klikamy: „Dec Do Hex” i „Select Date”.[/FONT]

[FONT=Verdana]I na koniec, żeby wpisać datę do karty wciskamy przycisk „Send” obok daty:[/FONT]

[FONT=Verdana] Teraz można odczytać kartę i sprawdzić czy data się zmieniła.
[/FONT]
[FONT=Verdana] Jeśli karta jest opłacona to przed wpisaniem Twinów należało sobie zapisać PPUA i datę. Teraz należy je przywrócić. Odpowiednią datę (taką jak przed wpisaniem Twinów) wpisujemy w opisany przed chwilą sposób. Natomiast, jeśli zmieniło się PPUA, to musimy przywrócić takie, jakie było wcześniej. Jeśli tego nie zrobilibyśmy, to karta nie łapałaby kluczy, a może nawet zostałaby zdeaktywowana przez operatora.
[/FONT]
[FONT=Verdana] Stare, PPUA (które chcemy przywrócić) wpisujemy w odpowiednim okienku i wciskamy przycisk „send”, który jest obok:[/FONT]

[FONT=Verdana] Przed wprowadzeniem podpisu, w tej zakładce można było zmienić PBM, aby podnieść sobie pakiet. Teraz niestety zmiana PBMu może tylko zaszkodzić (O zmianie pakietu będzie napisane później).
[/FONT]
[FONT=Verdana] Ostatnią i najważniejszą operacją, żeby uruchomić nieopłaconą kartę jest wpisanie kluczy operacyjnych C i D. Klucze te ściągamy np. Downloaderem, a następnie wpisujemy. Klucz musimy wpisać w okienko, obok wybrać czy jest to klucz C czy D. A następnie kliknąć „Send” (jak na tym rysunku). Najpierw wpisujemy w ten sposób klucz C, a potem D.[/FONT]

[FONT=Verdana] Jeśli karta była aktywna po maju tego roku (wtedy wprowadzono podpisy PBMu), to będzie już działać. Będzie można oglądać taki pakiet, jaki był ostatnio opłacony. Jeśli jednak karta została wyłączona przed majem, albo chcemy mieć wyższy pakiet, to będzie konieczna zmiana seriala i wpisanie podpisu.[/FONT]
[FONT=Verdana]
[/FONT]
[FONT=Verdana]Jak już wcześniej pisałem, aby zmienić pakiet nie wystarczy zmiana PBMu. Dodatkowo musi być zapisany podpis, który zawiera PBM i numer seryjny karty. Nie umiemy zrobić takiego podpisu, ale możemy wykorzystać podpis, który był przesyłany do innej karty. Możemy go zdobyć dekodując instrukcje, która go wpisała (jest to opisane dalej). Jeśli nie mamy dostępu do karty opłaconej na zadowalający nas pakiet, albo nie mamy zlogowanej instrukcji, która go wpisała, możemy poprosić kogoś, aby nam taki podpis udostępnił (wraz ze swoim serialem). W sieci jest kilka miejsc, gdzie znajdują się ogłoszenia ludzi, którzy rozdają te dane ze swoich kart. Przykro mi, ale nie będę podawał adresów, żeby nie zwaliły się tam tłumy. Jak ktoś będzie chciał to znajdzie. Niektórzy z „dawców” rozdają dane tylko uczestnikom projektu „Faktoryzacja”.
Załóżmy, że mamy już nanoinstrukcje, wpisujące podpis do innej karty i jej numer seryjny. Powinny to być tylko nanoinstrukcje: B2, 34, F8, F9. Pozostałe nie są potrzebne, a jedynie mogą narobić zamieszania (zmiana PPUA).
Zacznijmy od zmiany numeru seryjnego naszej karty. Wchodzimy do zakładki „serialus” i w okienku „New serial” wpisujemy serial jaki chcemy wpisać. Następnie klikamy kolejno przyciski „ATR3”, „Send serial”, „ATR1- END”. Po każdym kliknięciu należy odczekać chwilę, aż karta skończy „mielić”. Wcześniej proponuję sprawdzić czy pozostałe ustawienia są takie jak na tym screenshocie:[/FONT]

[FONT=Verdana] Najczęściej podczas tej operacji mogą wystąpić dwa problemy. Pierwszy polega na tym, że po próbie odczytu karty wylatują jakieś dziwne wartości. Oznacza to, że zapomnieliśmy wcisnąć „ATR1 – END”. Natomiast drugi problem to, że serial się nie zmienił, a po wciśnięciu „Send serial” pojawia się odpowiedź 6D00 zamiast 9000. Taki problem pojawia się, gdy nie mamy wpisanych Twinów, albo nie mamy aktywnej tablicy 1003.
Jeśli wszystko poszło dobrze, to po odczycie karty powinniśmy zobaczyć nowy serial i dodatkowo klucz 4. Ten klucz można skasować, ale lepiej zrobić to później, gdyż ułatwi nam wykonanie kolejnej operacji.
Przechodzimy do wpisania podpisu. Włączamy zakładkę „InsGen”. Sprawdzamy, czy wszystkie ustawienia są w porządku (jak na poniższym screenshocie) i wklejamy nanoinstrukcje z podpisem w górnym okienku. Następnie klikamy „InsGenKey”. Zakodowana instrukcja pojawi się w kolejnym okienku. Potem klikamy „Send”.[/FONT]

[FONT=Verdana] Jeśli wszystko poszło dobrze, to po odczycie karty powinniśmy mieć nowy PBM. Możemy już oglądać nowy pakiet.
Czasami potrzebujemy zdekodować instrukcję wysyłaną przez operatora. Tzn. mając zakodowaną instrukcje, która była przesyłana do jakiejś karty chcemy zobaczyć, co ona zawiera, tzn. otrzymać listę nanoinstrukcji. W ten sposób można np. zdobyć podpis wysyłany do innej karty, zdobyć klucze na kolejny miesiąc (żeby potem opublikować je w sieci), albo po prostu zobaczyć, co wpisuje nam operator.
Po pierwsze taką instrukcję trzeba zdobyć. Pierwszym sposobem jest jej zlogowanie. O logowaniu pojawiło się trochę tekstów, może w przyszłości dołączymy opis do tego tekstu. Na razie proponuję poszukać opisów na własną rękę. Drugim sposobem jest przejrzenie uploadów, na których pojawiają się logi.
Załóżmy, że mamy już taka instrukcje. Po pierwsze obejrzyjmy jej nagłówek, bo z niego możemy się wiele dowiedzieć. Oto nagłówki najpopularniejszych instrukcji:
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]5C – aktywacja, wpisuje m.in. klucze 1, C, D, E lub deaktywacja
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]1[/FONT][FONT=Verdana]5C – uprawnienia na nowy miesiąc, wpisuje klucze C, D oraz zmienia datę lub deaktywacja
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]65 – zmiana pakietu, zawiera podpis PBMu oraz nowe PPUA. Jest wysyłana także podczas aktywacji.[/FONT]
[FONT=Verdana] Podczas aktywacji jest również wysyłana instrukcja o nagłówku:
C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]5C[/FONT]
[FONT=Verdana]
Ale kodowana tablicą 1001. Jest ona wykorzystywana do przełączenia z tablicy 1001 na 1003.[/FONT]
[FONT=Verdana]
Warto zwrócić jeszcze uwagę na znak oznaczony przeze mnie na czerwono. Jest to klucz, którym kodowana jest instrukcja. Będzie nam to potem potrzebne.
Skoro mamy już przygotowaną instrukcje, teraz musimy przygotować kartę. Musi to być karta, do której była wysyłana ta instrukcja. Oczywiście karta musi mieć wpisane Twiny.
Najpierw wejdźmy do zakładki „Dump E1”. U góry w okienku „NR RECORD ‘EX’” wpisujemy „51 08 EB”. Następnie wciskamy „Get mask” i „Make universal”.[/FONT]

[FONT=Verdana] Następnie powtarzamy operację, tym razem zamiast „51 08 EB” wpisując „52 08 EB” i wciskając tylko „Make Universal” (bez „Get Mask”).
//ciąg dalszy w następnym poście
[/FONT][FONT=Verdana][/FONT]
2.4.2 Tablice 1001 i 1003
EMMy mogą być kodowane za pomocą jednej z dwóch tablic, oznaczonych 1001 oraz 1003. Do marca tego roku karty miały włączoną tylko tablicę 1001 i operator kodował EMMy właśnie za pomocą tej tablicy. W marcu operator wyłączył w kartach tablicę 1001 i włączył tablicę 1003. Od tej pory karty przyjmują tylko EMMy kodowane za pomocą 1003, natomiast kodowane tablicą 1001 odrzucają. Ważne jest, że tablicę 1003 można włączyć np. za pomocą programu Fioletowy (nie wyłączając tablicy 1001).
Możemy więc mieć dwie sytuacje:
- karta była opłacana po marcu – aktywna jest tylko tablica 1003
- karta została wyłączone przed marcem – aktywna jest tylko tablica 1001. Możemy dodatkowo włączyć tablice 1003 i obydwie będą aktywne
Można łatwo sprawdzić jaką tablicą jest kodowany EMM. Mówią o tym pierwsze 2 bajty za nagłówkiem. Czyli EMM ma postać:
C1 40 xx xx xx (40) 10 01...
Albo
C1 40 xx xx xx (40) 10 03...
Aby sprawdzić, które tablice są aktywne w karcie, należy wcisnąć przycisk „Bug Info” w zakładce „Info”. Jednak, aby to zrobić, karta musi mieć klucz E.[/FONT]

[FONT=Verdana] Jeżeli okaże się, że aktywna jest tylko tablica 1001, proponuję od razu uaktywnić również tablicę 1003 wciskając przycisk „Activate 1003” w zakładce „Twins”.[/FONT]

[FONT=Verdana]Po tej operacji można sprawdzić, czy tablica jest już aktywna wciskając znowu „Bug info”. W kolejnych opisach, będę zakładał, że tablica 1003 jest aktywna.
2.4.3 Zmiany kluczy i innych parametrów
Po wpisaniu bliźniaków i ewentualnej aktywacji tablicy 1003, możemy przejść do dokonywania zmian w karcie. Wszystko będziemy robić w zakładce „Twins”.
Pierwsze, co możemy zrobić, żeby sprawdzić czy wszystko działa, to np. zmienić datę. Po wpisaniu Twinów mamy jakąś kosmiczną datę z przyszłości. Do działania karty jest potrzebna jakakolwiek data z przyszłości. Więc ta będzie w porządku, ale spróbujmy wpisać np. 20 grudnia 2007 r. Najpierw proponuję sprawdzić czy wszystkie ustawienia są takie jak na poniższym screenshocie, a następnie wcisnąć przycisk z kalendarzem:[/FONT]

[FONT=Verdana] Pojawi się nowe okno, a w nim możemy wybrać odpowiednią datę. Następnie klikamy: „Dec Do Hex” i „Select Date”.[/FONT]

[FONT=Verdana]I na koniec, żeby wpisać datę do karty wciskamy przycisk „Send” obok daty:[/FONT]

[FONT=Verdana] Teraz można odczytać kartę i sprawdzić czy data się zmieniła.
[/FONT]
[FONT=Verdana] Jeśli karta jest opłacona to przed wpisaniem Twinów należało sobie zapisać PPUA i datę. Teraz należy je przywrócić. Odpowiednią datę (taką jak przed wpisaniem Twinów) wpisujemy w opisany przed chwilą sposób. Natomiast, jeśli zmieniło się PPUA, to musimy przywrócić takie, jakie było wcześniej. Jeśli tego nie zrobilibyśmy, to karta nie łapałaby kluczy, a może nawet zostałaby zdeaktywowana przez operatora.
[/FONT]
[FONT=Verdana] Stare, PPUA (które chcemy przywrócić) wpisujemy w odpowiednim okienku i wciskamy przycisk „send”, który jest obok:[/FONT]

[FONT=Verdana] Przed wprowadzeniem podpisu, w tej zakładce można było zmienić PBM, aby podnieść sobie pakiet. Teraz niestety zmiana PBMu może tylko zaszkodzić (O zmianie pakietu będzie napisane później).
[/FONT]
[FONT=Verdana] Ostatnią i najważniejszą operacją, żeby uruchomić nieopłaconą kartę jest wpisanie kluczy operacyjnych C i D. Klucze te ściągamy np. Downloaderem, a następnie wpisujemy. Klucz musimy wpisać w okienko, obok wybrać czy jest to klucz C czy D. A następnie kliknąć „Send” (jak na tym rysunku). Najpierw wpisujemy w ten sposób klucz C, a potem D.[/FONT]

[FONT=Verdana] Jeśli karta była aktywna po maju tego roku (wtedy wprowadzono podpisy PBMu), to będzie już działać. Będzie można oglądać taki pakiet, jaki był ostatnio opłacony. Jeśli jednak karta została wyłączona przed majem, albo chcemy mieć wyższy pakiet, to będzie konieczna zmiana seriala i wpisanie podpisu.[/FONT]
[FONT=Verdana]
2.4.4 Zmiana seriala i wpisanie podpisu PBMu
[/FONT]
[FONT=Verdana]Po pierwsze ostrzegam[/FONT]
[FONT=Verdana], że ta operacja niszczy cześć karty. Prawdopodobnie Cyfra+ nigdy nie przeprowadzi ataku, który będzie to wykorzystywał, ale nigdy nic nie wiadomo. Natomiast wyraźnym skutkiem tego uszkodzenia, jest to, że [/FONT] [FONT=Verdana]nie można wpisać Twinów na operatora 0000!!!![/FONT]
[FONT=Verdana] Dlatego proponuję to zrobić wcześniej. [/FONT][FONT=Verdana]Opis znajduje się w dalszej części tekstu.[/FONT][FONT=Verdana]Jak już wcześniej pisałem, aby zmienić pakiet nie wystarczy zmiana PBMu. Dodatkowo musi być zapisany podpis, który zawiera PBM i numer seryjny karty. Nie umiemy zrobić takiego podpisu, ale możemy wykorzystać podpis, który był przesyłany do innej karty. Możemy go zdobyć dekodując instrukcje, która go wpisała (jest to opisane dalej). Jeśli nie mamy dostępu do karty opłaconej na zadowalający nas pakiet, albo nie mamy zlogowanej instrukcji, która go wpisała, możemy poprosić kogoś, aby nam taki podpis udostępnił (wraz ze swoim serialem). W sieci jest kilka miejsc, gdzie znajdują się ogłoszenia ludzi, którzy rozdają te dane ze swoich kart. Przykro mi, ale nie będę podawał adresów, żeby nie zwaliły się tam tłumy. Jak ktoś będzie chciał to znajdzie. Niektórzy z „dawców” rozdają dane tylko uczestnikom projektu „Faktoryzacja”.
Załóżmy, że mamy już nanoinstrukcje, wpisujące podpis do innej karty i jej numer seryjny. Powinny to być tylko nanoinstrukcje: B2, 34, F8, F9. Pozostałe nie są potrzebne, a jedynie mogą narobić zamieszania (zmiana PPUA).
Zacznijmy od zmiany numeru seryjnego naszej karty. Wchodzimy do zakładki „serialus” i w okienku „New serial” wpisujemy serial jaki chcemy wpisać. Następnie klikamy kolejno przyciski „ATR3”, „Send serial”, „ATR1- END”. Po każdym kliknięciu należy odczekać chwilę, aż karta skończy „mielić”. Wcześniej proponuję sprawdzić czy pozostałe ustawienia są takie jak na tym screenshocie:[/FONT]

[FONT=Verdana] Najczęściej podczas tej operacji mogą wystąpić dwa problemy. Pierwszy polega na tym, że po próbie odczytu karty wylatują jakieś dziwne wartości. Oznacza to, że zapomnieliśmy wcisnąć „ATR1 – END”. Natomiast drugi problem to, że serial się nie zmienił, a po wciśnięciu „Send serial” pojawia się odpowiedź 6D00 zamiast 9000. Taki problem pojawia się, gdy nie mamy wpisanych Twinów, albo nie mamy aktywnej tablicy 1003.
Jeśli wszystko poszło dobrze, to po odczycie karty powinniśmy zobaczyć nowy serial i dodatkowo klucz 4. Ten klucz można skasować, ale lepiej zrobić to później, gdyż ułatwi nam wykonanie kolejnej operacji.
Przechodzimy do wpisania podpisu. Włączamy zakładkę „InsGen”. Sprawdzamy, czy wszystkie ustawienia są w porządku (jak na poniższym screenshocie) i wklejamy nanoinstrukcje z podpisem w górnym okienku. Następnie klikamy „InsGenKey”. Zakodowana instrukcja pojawi się w kolejnym okienku. Potem klikamy „Send”.[/FONT]

[FONT=Verdana] Jeśli wszystko poszło dobrze, to po odczycie karty powinniśmy mieć nowy PBM. Możemy już oglądać nowy pakiet.
2.4.5 Dekodowanie instrukcji
Czasami potrzebujemy zdekodować instrukcję wysyłaną przez operatora. Tzn. mając zakodowaną instrukcje, która była przesyłana do jakiejś karty chcemy zobaczyć, co ona zawiera, tzn. otrzymać listę nanoinstrukcji. W ten sposób można np. zdobyć podpis wysyłany do innej karty, zdobyć klucze na kolejny miesiąc (żeby potem opublikować je w sieci), albo po prostu zobaczyć, co wpisuje nam operator.
Po pierwsze taką instrukcję trzeba zdobyć. Pierwszym sposobem jest jej zlogowanie. O logowaniu pojawiło się trochę tekstów, może w przyszłości dołączymy opis do tego tekstu. Na razie proponuję poszukać opisów na własną rękę. Drugim sposobem jest przejrzenie uploadów, na których pojawiają się logi.
Załóżmy, że mamy już taka instrukcje. Po pierwsze obejrzyjmy jej nagłówek, bo z niego możemy się wiele dowiedzieć. Oto nagłówki najpopularniejszych instrukcji:
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]5C – aktywacja, wpisuje m.in. klucze 1, C, D, E lub deaktywacja
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]1[/FONT][FONT=Verdana]5C – uprawnienia na nowy miesiąc, wpisuje klucze C, D oraz zmienia datę lub deaktywacja
[/FONT]
[FONT=Verdana] C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]65 – zmiana pakietu, zawiera podpis PBMu oraz nowe PPUA. Jest wysyłana także podczas aktywacji.[/FONT]
[FONT=Verdana] Podczas aktywacji jest również wysyłana instrukcja o nagłówku:
C14001B[/FONT][FONT=Verdana]0[/FONT][FONT=Verdana]5C[/FONT]
[FONT=Verdana]
Ale kodowana tablicą 1001. Jest ona wykorzystywana do przełączenia z tablicy 1001 na 1003.[/FONT]
[FONT=Verdana]
Warto zwrócić jeszcze uwagę na znak oznaczony przeze mnie na czerwono. Jest to klucz, którym kodowana jest instrukcja. Będzie nam to potem potrzebne.
Skoro mamy już przygotowaną instrukcje, teraz musimy przygotować kartę. Musi to być karta, do której była wysyłana ta instrukcja. Oczywiście karta musi mieć wpisane Twiny.
Najpierw wejdźmy do zakładki „Dump E1”. U góry w okienku „NR RECORD ‘EX’” wpisujemy „51 08 EB”. Następnie wciskamy „Get mask” i „Make universal”.[/FONT]

[FONT=Verdana] Następnie powtarzamy operację, tym razem zamiast „51 08 EB” wpisując „52 08 EB” i wciskając tylko „Make Universal” (bez „Get Mask”).
//ciąg dalszy w następnym poście
[/FONT][FONT=Verdana][/FONT]
04.12.07 17:24
|
#677424
|
(link)
|
zgłoś naruszenie
[FONT=Verdana] Potem przechodzimy do zakładki „Records BX” i wciskamy „Info All”. Pojawi nam się lista rekordów:[/FONT]

[FONT=Verdana]Jak widać przybyły nam dwa rekordy (te w ramce). Powinny mieć Typ Rekordu: Seca Record oraz Typ: E1. Teraz popatrzmy do kolumny index. Jak widać ich numery, są dwiema kolejnymi liczbami: 001A i 001B. Często jednak się zdarza, że tak nie jest. Mogą występować po kolei, ale ich indeksy to np.: 001A i 001C. W takiej sytuacji wpisujemy jeszcze jeden rekord, podając „NR. Record Ex” 53 08 EB i znowu odczytujemy rekordy. Robimy to tak długo aż wpiszemy dwa rekordy o kolejnych indeksach. Jak widać mnie udało się to po wpisaniu trzech rekordów, tzn. dwa odpowiednie rekordy to: „5208EB...” i „5308EB...”.
Teraz wracamy do zakładki „Dump E1” i wpisujemy w okienku „Index dump” index pierwszego z tych dwóch rekordów, a w „NR Record Ex” wartość, której użyliśmy do wpisania drugiego. Czyli w moim przypadku będzie to wyglądało tak:[/FONT]

[FONT=Verdana] Teraz pozostaje nam sprawdzić czy karta dobrze dekoduje. Na dole mamy dwa okienka „Decrypted” i „Crypted” oraz dwa przyciski pomiędzy nimi:[/FONT]

[FONT=Verdana] Wciskamy „Crypt Card”. Po chwili w okienku „Crypted” pojawią się zakodowane dane. Następnie wciskamy „Decrypt Card” i w okienku „Decrypted” powinny się pojawić z powrotem zera (jak na początku). Jeśli pojawi się inna wartość, to znaczy, że coś zrobiliśmy źle.
Jeśli karta dobrze dekoduje, możemy przejść dalej. Do przykładu użyłem instrukcji, która aktywowała mi kartę. Oto ona:
C1 40 01 B0 5C 10 03 EB 24 B5 51 EF F1 F4 2C 0C 7B 0F 3E 71 CA 54 0F 2A A8 F0 FB 2D 85 2F FB 51 5D 77 C4 0F 3D 8F E8 9E FC 28 26 BE 12 2D 2B 52 B2 00 2C CB B3 96 70 B9 2E 95 93 C5 14 18 EF 76 5A A3 58 78 5F DE C9 CB 93 6D DB 9C 85 38 7F 1E F8 2B 2E AF 68 E7 73 20 2C 05 F3 77 A4 6F 7C D5 6B
Jak widać jest kodowana kluczem 0. Przejdźmy do zakładki „Dump E1” i w okienku „KEY FOR CRYPT_DECRYPT” wybierzmy klucz 0.[/FONT]

[FONT=Verdana] Teraz przechodzimy do zakładki „DeSSE” i dane z instrukcji (bez nagłówka) wklejamy do lewego okienka. Przy okazji przyjrzyjmy się przyciskom po prawej stronie.[/FONT]

[FONT=Verdana] Wciskamy odpowiedni przycisk w zależności od tego, która tablicą była kodowana nasza instrukcja (mówią o tym dwa pierwsze bajty ciągu danych).
[/FONT]
[FONT=Verdana] 0065-EMM-1001 – jeśli dwa pierwsze bajty to 10 01
0065-EMM-1003 – jeśli dwa pierwsze bajty to 10 03
W okienku po prawej pojawi się częściowo zdekodowana instrukcja. Teraz przejdźmy do zakładki „DeSE”. Po lewej widzimy częściowo zdekodowaną instrukcję, czyli to samo, co po prawej w zakładce „DeSSE”. Jeśli wszystkie ustawienia są takie jak na kolejnym screenshocie, to wciskamy „DeSE Card” i czekamy, aż po prawej pojawią się zdekodowane nanoinstrukcje.[/FONT]

[FONT=Verdana] Mamy, więc zdekodowaną instrukcję. Przeanalizujmy teraz nanoinstrukcje, które wchodzą w jej skład:
1003 – mówi o tym, jak jest kodowana instrukcja
00 – nic nie robią. Jest powód, dla, którego są umieszczane, ale nie jest on w tym momencie istotny.
1002, 1003 (ale nie to na początku) – kasują klucze 2 i 3. Nie wiem po co
21... – wpisuje datę
905C... 905D..., 905E – wpisują klucze C, D, E. Obok widzimy je w postaci zdekodowanej, czyli takiej jaką możemy wpisywać do karty np. w zakładce Twins
9051..., 9151... – klucz 1, jest dwuczęściowy, tzn. primary i secondary
B0... – wpisuje record Seca. Tak naprawdę nikt nie wie po co to jest. Karta działa równie dobrze bez tego rekordu jak i z nim.
Analogicznie możemy zdekodować np. instrukcję wpisującą podpis. Wtedy otrzymamy nanoinstrukcje B2, 34, F8, F9 czyli podpis PBMu do wpisania w innej karcie. Możemy również zdekodować instrukcję wpisującą klucze C i D na nowy miesiąc (za pomocą klucza 1 a nie 0).[/FONT]
[FONT=Verdana]
Karta, żeby sama łapała klucze musi mieć PPUA i klucz 1 innej karty. Wtedy będzie tak samo jak ona łapała klucze, ale też niestety deaktywację. Można, więc wykorzystać ten sposób, jeśli np. mamy znajomego, który opłaca regularnie abonament.
Tym razem nie będzie screenshotów, bo będziemy wykorzystywali rzeczy, które już były opisane.
Pierwszym krokiem jest wyciągnięcie PPUA. To oczywiście żaden problem. Wystarczy odczytać opłaconą kartę i otrzymane PPUA wpisać do naszej za pomocą zakładki Twins.
Większym problemem jest zdobycie klucza 1. Musimy mieć zlogowaną instrukcję aktywacji, a dodatkowo na opłacanej karcie trzeba wpisać Twiny. Następnie dekodujemy tą instrukcję (tak jak to było opisane wcześniej). Klucz 1 jest dwuczęściowy, czyli składa się z dwóch kluczy nazywanych Primary i Secondary.
Po zdekodowaniu otrzymamy nanoinstrukcje:
9051... Key -> xxxxxxxxxxxxxxxx
9151... Key -> yyyyyyyyyyyyyyyy
Gdzie xxxxxxxxxxxxxxxxx jest kluczem primary, a yyyyyyyyyyyyyyyy kluczem secondary. Teraz pozostaje wpisać klucz do naszej karty. Robimy to w zakładce Twins, tak samo jak wpisywaliśmy klucze C i D. Z tą różnicą, że wpisując klucz Primary wybieramy poniżej „Primary”, a wpisując klucz Secondary wybieramy „Secondary” (Klucze C i D nie posiadają części secondary, więc nie trzeba jej było wpisywać)
Taka karta musi być w blokerze, który będzie przepuszczał instrukcje kierowane na SA, a blokował kierowane na UA. Jeśli jednak zmieniliśmy serial, to można nie używać blokera.
2.4.7 Zabezpieczenia przed deaktywacją
Do karty będącej w dekoderze, operator może wysyłać różne instrukcje. Jeśli jest ona opłacana, to wpisują one nowe klucze itp., Jeśli jednak została uruchomiona przez nas, to operator będzie próbował ją zdezaktywować. Pierwszym sposobem jest użycie blokera. Wtedy żaden EMM nie dotrze do naszej karty. Jednak może się zdarzyć, że np. zapomnimy go użyć, albo nie będzie działał prawidłowo. Dlatego lepiej tak zabezpieczyć kartę, abyśmy w razie deaktywacji mogli ją doprowadzić do poprzedniego stanu, tzn. wpisać Twiny, a potem całą resztę. Pierwszym sposobem jest zapisanie instrukcji, która wpisała nam Twiny. Tzn. po zakończeniu wpisywania Twinów patrzymy w dolne okienko, albo też szukamy w logach zapisanych przez Fioletowego w pliku. Jeśli będzie tam zapisana cała transmisja z kartą, to szukamy takiego fragmentu:
Ins-> [/FONT][FONT=Verdana]C140xxxxxx[/FONT][FONT=Verdana]
Ack <- [/FONT][FONT=Verdana]40[/FONT][FONT=Verdana]
Dane -> [/FONT][FONT=Verdana]1003...[/FONT][FONT=Verdana]
Odp <- yyyy
Bierzemy jedynie nagłówek i dane, czyli części oznaczone przeze mnie kolorem czerwonym i niebieskim, i zlepiamy w jeden ciąg. Tak przygotowaną instrukcję możemy wysłać do karty w zakładce InsGen (tak jak było to opisywane np. przy okazji wysyłania logów do nieaktywnych kart – tzn. wklejamy w środkowe okienko i wciskamy Send). Po jej wysłaniu od nowa mamy Twiny i możemy wpisać klucze C i D i oglądać dalej.
Taka instrukcja może przestać działać po zmianie seriala, dlatego dobrze jest wtedy jeszcze raz wpisać Twiny i zapisać nową instrukcję.
Drugim sposobem jest wpisanie Twinów na providera 0000. Nie są one kasowane podczas deaktywacji i można za ich pomocą np. przywrócić Twiny na 0065, czyli te, o których pisaliśmy dotychczas. Natomiast nie można wpisać Twinów na 0000, jeśli wcześniej zmieniało się serial. My niestety właśnie tak zrobiliśmy i dlatego nie możemy przedstawić tutaj dokładnego opisu ze screenshotami itd.
Oto opis wpisywania twinów na 0000 z forum DVHK (możliwe, że opis jako pierwszy pojawił się na DVB-Z):
[/FONT]
[FONT=Verdana]By dopisać Twiny na prov. 0000 MUSISZ POSIADAĆ TWINY NA PROV. 0065
1. Uruchom program „INSGen”[/FONT][FONT=Verdana] jeżeli są trudności w uruchomieniu – trzeba zarejestrować
„CommX.ocx” np. za pomocą programu „Registra_OCXDLL”[/FONT][FONT=Verdana]
2. Connect
3. Można sprawdzić RECORDS i Read DATA /tu ostatni raz zobaczysz Prov. SECA tylko z kluczem F0/
4. W SETTINGS: ustawiemy Twin Key na 9
5. W SETTINGS: Tab 1003
6. W SETTINGS: Prov. 00 65
7. Wybieramy zakładkę AUTO FUNCT.
8. 1C Bug -> 0000
9. Read DATA – i widzimy dopisane 4 nowe Twin’y /D8, 58, 5F, 5B/ na Prov. 0000[/FONT][FONT=Verdana]
Czyli od tej pory po odczytaniu karty, powinniśmy mieć dodatkowe klucze dla providera 0000.
Oto kolejny opis (z DVHK), który pokazuje jak sprawdzić, czy Twiny na 0000 działają, zmieniając date:
[/FONT][FONT=Verdana]Odpalamy InsDECrypter (wersja progr. nieistotna)
Odczytujemy datę dla prov. 0065.
Ustawienia:
Twin = B
Prov = 00 00
Tab = 1001
zakładka - Ins Maker
w zółte pole wpisujemy:
24 00 65 21 FF FF
dalej - Crea EMM - Send
po wszystkim sprawdzamy date dla 0065, jeśli się zmieniła to wszystko jest ok, jeśli nie:
zmieniamy ustawienia
Twin = 9
Prov = 00 65
Tab = 1003
zakładka - Ins Maker
w żółte pole wpisujemy:
02
dalej - Crea EMM - Send
następnie sprawdzamy:
Ustawienia:
Twin = B
Prov = 00 00
Tab = 1001
zakładka - Ins Maker
w żółte pole wpisujemy:
24 00 65 21 FF FF
dalej - Crea EMM - Send
po wszystkim sprawdzamy date dla 0065, jeśli się zmieniła to wszystko jest ok.
Oczywiście po całym zabiegu przywracamy odpowiednią datę dla 0065.[/FONT][FONT=Verdana]
Jeśli data, się zmieniła to analogicznie możemy dokonywać dowolnych innych zmian dla providera 0065. Jak widać przed chwilą używaliśmy nano:
24 00 65 21 FF FF
Jest to więc nano 21 FF FF, które zmienia datę, dodatkowo poprzedzone: 24 00 65, czyli informacją, że zmiany będą dokonywane na providerze 0065. Analogicznie możemy wpisywać inne nanoinstrukcje, poprzedzając je nano 24 00 65. Np.:
24 00 65 90 59 00 00 00 00 00 00 00 00 24 00 65 90 5F 00 00 00 00 00 00 00 00
Powinno wpisać Twiny dla providera 0065.
Jest to program, który był używany jeszcze przed pojawieniem się Fioletowego. Jest on bardziej elastyczny, choć trzeba poświęcić chwilę, żeby nauczyć się nim posługiwać.
Za jego pomocą można tworzyć EMMy korzystając z rekordów bx. Jest to metoda, która została wyparta przez Twiny, ale często zdarza się że musimy coś zrobić bez użycia Twinów i wtedy będziemy musieli jej użyć. Możemy również użyć czasem UCDS zamiast Fioletowego i mamy wtedy większą kontrolę nad tym co robimy.
Będziemy tworzyć EMMy „składając” je z rekordów bx. Taki rekord ma postać:
B1 00[/FONT]
Podczas wpisywania rekordu wybieramy wartości zaznaczone na niebiesko i zielono. Wartości zaznaczone na czerwono są standardowo zerami, ale możemy je później zmieniać. Wartości wpisane na czarno są stałe.
Rekordy układają się na karcie nie w kolejności wpisywania, ale według EV. Wyobraźmy sobie, że wpisujemy dwa rekordy:
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT]
Jeśli teraz wpiszemy jeszcze rekord:
B1 00 [/FONT][FONT=Verdana]
To na karcie będą zapisane kolejno rekordy:
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT]
B1 00 [/FONT][FONT=Verdana]
Teraz możemy z takich rekordów zbudować EMM, który najpierw ma jeden dowolny bajt (oznaczany YY) a potem te kolejne rekordy i na końcu jeden bajt równy 03 lub 04. Jeśli mamy na karcie więcej rekordów, do zbudowania EMM’a możemy użyć tylko części, ale muszą one występować po sobie.
Przykład:
Mamy na karcie następujące rekordy:
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
B1 00[/FONT]
B1 00 [/FONT]
B1 00[/FONT][FONT=Verdana]
B1 00[/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
Zbudujemy instrukcję za pomocą ciągu rekordów od drugiego do szóstego, z YY=27. W efekcie otrzymamy instrukcję o następujących danych:
[/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
B1 00 [/FONT][FONT=Verdana]
B1 00 51 05 FF CD 00 00 FF FF 00 00
B1 00 52 05 FF AB 00 00 FF FF 00 00
B1 00 54 05 FF [/FONT][FONT=Verdana]
0x
Początek każdej nanoinstrukcji zaznaczyłem na niebiesko. Mamy, więc następujące nanoinstrukcje:
[/FONT][FONT=Verdana]
[/FONT][FONT=Verdana]
[/FONT][FONT=Verdana]
[/FONT][FONT=Verdana]
00 – nic nie robi
[/FONT][FONT=Verdana]
[/FONT][FONT=Verdana]
A więc za pomocą takich rekordów stworzyliśmy sobie instrukcję, która zmieni PPUA, PBM i datę.
W dalszej części będzie opisane, jak to zrobić za pomocą UCDS, oraz podam konkretne przykłady rekordów do wpisania i jak przeprowadzić parsing.
UCDS pojawiał się w wielu wersjach. Ja używam wersji 2.03 i tą wersję polecam (albo jakąś podobną). Niektóre z wcześniejszych wersji nie mają wszystkiego, co będziemy potrzebowali. Natomiast niektórych nowszych wersji, nie da się zmusić do pracy z naszymi kartami.
Po uruchomieniu programu mogą pojawiać się błędy. Dzieje się tak, jeśli nie mamy wszystkich potrzebnych bibliotek. Proponuje przeszukać uploady w ich poszukiwaniu. Na jednym z nich był kiedyś plik ze spakowanymi wszystkimi bibliotekami potrzebnymi do uruchomienia UCDS.
Jako, że program miał służyć do zabawy z włoskimi kartami będziemy musieli dokonać jeszcze jednej zmiany. Z uploadu trzeba ściągnąć polską chaintable i podmienić ją. Tzn. podmieniamy plik chaintable.bin w katalogu UCDS na plik ściągnięty z uploadu.
[/FONT]
[FONT=Verdana]
Wszystkie operacje (wpisywanie rekordów, generowanie EMMów z rekordów itp.) będziemy dokonywali za pomocą wygenerowanych instrukcji. Aby to zrobić najlepiej będzie ich jak najwięcej wygenerować. Przy kolejnych przykładach będę podawał, jak dużo ich potrzeba.
Na początek po uruchomieniu programu wybieramy z menu Carta/Connetti. Zostanie odczytana karta. Wygląda to bardzo podobnie jak w Fioletowym:[/FONT]

[FONT=Verdana] Teraz wybierzmy z menu ECM/EMM/Ins36 / Inserisci / Ins 36xBug. Pojawi się nowe okno, w które wpisujemy instrukcję uniwersalną, czyli:
C1 36 01 9E 14 70 03 11 22 33 44 55 66 77 88 82 9A AC EF AD 5B B7 9F 1F
I klikamy: „Inserisci in archivo”[/FONT]

[FONT=Verdana] Następnie z menu po lewej wybieramy „Ricerca Corte” i wszystkie ustawienia mają być takie jak na poniższym screenshocie (np. Tipo Ins: P3: 7x). Potem klikamy „Ricerca”.[/FONT]

[FONT=Verdana]Po prawej mamy licznik znalezionych instrukcji (Ins Trovate). Stopniowo będzie ich przybywać. W tym momencie proponuję zostawić komputer włączony na dłużej. Ilość potrzebnych instrukcji zależy od tego, co chcemy zrobić. Gdy będziemy mieli tyle instrukcji, ile potrzebujemy, będzie można przejść dalej.
Po pierwsze przed zapisem rekordów powinniśmy zorientować się, jakie rekordy są już zapisane. Ponieważ w UCDS jest to dość niewygodne, proponuję na chwilę użyć Fioletowego (zakładka „Records Bx”, przycisk „Info Bx”). Gdy już będziemy wiedzieli, jakie rekordy mamy i jakie chcemy wpisać możemy przejść dalej.
Istnieją dwie metody zapisywania do kart rekordów bx, które będziemy potrzebowali. Pierwsza, to użycie gotowych instrukcji wpisujących rekordy. Można tak np. wpisać rekordy, którymi są wpisywane, Twiny. W tym celu wystarczy wcisnąć przycisk „Write Bx...” w zakładce „Records Bx” w Fioletowym. Na forum DVHK, można znaleźć także inne instrukcje, które wpisują różne rekordy. Aby zadziałały, na karcie musi być zapisana odpowiednia liczba kredytów.
Zazwyczaj jednak będziemy musieli wpisywać rekordy „ręcznie” i robimy to w następujący sposób w programie UCDS:
Z menu po lewej stronie wybieramy „Crea bx”. Pojawi się nowe okno, w którym możemy zawęzić obszar poszukiwać wybierając interesujące nas parametry CV1, CV2 i Cnt rekordu, który chcemy wpisać. Np. na poniższym screenshocie wybrałem dowolne wartości CV1 i Cnt, oraz CV2=05. Potem klikamy „Crea bx”.[/FONT]

[FONT=Verdana] Pojawi się nowe okno, w którym możemy wybrać rekord jaki nas interesuje, tzn. jego wartości CV1, CV2 i Cnt. Wybieramy klikając w kwadracik obok wybranego rekordu.[/FONT]
//ciag dalszy w następnym poscie
[FONT=Verdana][/FONT]

[FONT=Verdana]Jak widać przybyły nam dwa rekordy (te w ramce). Powinny mieć Typ Rekordu: Seca Record oraz Typ: E1. Teraz popatrzmy do kolumny index. Jak widać ich numery, są dwiema kolejnymi liczbami: 001A i 001B. Często jednak się zdarza, że tak nie jest. Mogą występować po kolei, ale ich indeksy to np.: 001A i 001C. W takiej sytuacji wpisujemy jeszcze jeden rekord, podając „NR. Record Ex” 53 08 EB i znowu odczytujemy rekordy. Robimy to tak długo aż wpiszemy dwa rekordy o kolejnych indeksach. Jak widać mnie udało się to po wpisaniu trzech rekordów, tzn. dwa odpowiednie rekordy to: „5208EB...” i „5308EB...”.
Teraz wracamy do zakładki „Dump E1” i wpisujemy w okienku „Index dump” index pierwszego z tych dwóch rekordów, a w „NR Record Ex” wartość, której użyliśmy do wpisania drugiego. Czyli w moim przypadku będzie to wyglądało tak:[/FONT]

[FONT=Verdana] Teraz pozostaje nam sprawdzić czy karta dobrze dekoduje. Na dole mamy dwa okienka „Decrypted” i „Crypted” oraz dwa przyciski pomiędzy nimi:[/FONT]

[FONT=Verdana] Wciskamy „Crypt Card”. Po chwili w okienku „Crypted” pojawią się zakodowane dane. Następnie wciskamy „Decrypt Card” i w okienku „Decrypted” powinny się pojawić z powrotem zera (jak na początku). Jeśli pojawi się inna wartość, to znaczy, że coś zrobiliśmy źle.
Jeśli karta dobrze dekoduje, możemy przejść dalej. Do przykładu użyłem instrukcji, która aktywowała mi kartę. Oto ona:
C1 40 01 B0 5C 10 03 EB 24 B5 51 EF F1 F4 2C 0C 7B 0F 3E 71 CA 54 0F 2A A8 F0 FB 2D 85 2F FB 51 5D 77 C4 0F 3D 8F E8 9E FC 28 26 BE 12 2D 2B 52 B2 00 2C CB B3 96 70 B9 2E 95 93 C5 14 18 EF 76 5A A3 58 78 5F DE C9 CB 93 6D DB 9C 85 38 7F 1E F8 2B 2E AF 68 E7 73 20 2C 05 F3 77 A4 6F 7C D5 6B
Jak widać jest kodowana kluczem 0. Przejdźmy do zakładki „Dump E1” i w okienku „KEY FOR CRYPT_DECRYPT” wybierzmy klucz 0.[/FONT]

[FONT=Verdana] Teraz przechodzimy do zakładki „DeSSE” i dane z instrukcji (bez nagłówka) wklejamy do lewego okienka. Przy okazji przyjrzyjmy się przyciskom po prawej stronie.[/FONT]

[FONT=Verdana] Wciskamy odpowiedni przycisk w zależności od tego, która tablicą była kodowana nasza instrukcja (mówią o tym dwa pierwsze bajty ciągu danych).
[/FONT]
[FONT=Verdana] 0065-EMM-1001 – jeśli dwa pierwsze bajty to 10 01
0065-EMM-1003 – jeśli dwa pierwsze bajty to 10 03
W okienku po prawej pojawi się częściowo zdekodowana instrukcja. Teraz przejdźmy do zakładki „DeSE”. Po lewej widzimy częściowo zdekodowaną instrukcję, czyli to samo, co po prawej w zakładce „DeSSE”. Jeśli wszystkie ustawienia są takie jak na kolejnym screenshocie, to wciskamy „DeSE Card” i czekamy, aż po prawej pojawią się zdekodowane nanoinstrukcje.[/FONT]

[FONT=Verdana] Mamy, więc zdekodowaną instrukcję. Przeanalizujmy teraz nanoinstrukcje, które wchodzą w jej skład:
1003 – mówi o tym, jak jest kodowana instrukcja
00 – nic nie robią. Jest powód, dla, którego są umieszczane, ale nie jest on w tym momencie istotny.
1002, 1003 (ale nie to na początku) – kasują klucze 2 i 3. Nie wiem po co
21... – wpisuje datę
905C... 905D..., 905E – wpisują klucze C, D, E. Obok widzimy je w postaci zdekodowanej, czyli takiej jaką możemy wpisywać do karty np. w zakładce Twins
9051..., 9151... – klucz 1, jest dwuczęściowy, tzn. primary i secondary
B0... – wpisuje record Seca. Tak naprawdę nikt nie wie po co to jest. Karta działa równie dobrze bez tego rekordu jak i z nim.
Analogicznie możemy zdekodować np. instrukcję wpisującą podpis. Wtedy otrzymamy nanoinstrukcje B2, 34, F8, F9 czyli podpis PBMu do wpisania w innej karcie. Możemy również zdekodować instrukcję wpisującą klucze C i D na nowy miesiąc (za pomocą klucza 1 a nie 0).[/FONT]
[FONT=Verdana]
2.4.6 Jak zrobić kartę z AutoUpdate’m
Karta, żeby sama łapała klucze musi mieć PPUA i klucz 1 innej karty. Wtedy będzie tak samo jak ona łapała klucze, ale też niestety deaktywację. Można, więc wykorzystać ten sposób, jeśli np. mamy znajomego, który opłaca regularnie abonament.
Tym razem nie będzie screenshotów, bo będziemy wykorzystywali rzeczy, które już były opisane.
Pierwszym krokiem jest wyciągnięcie PPUA. To oczywiście żaden problem. Wystarczy odczytać opłaconą kartę i otrzymane PPUA wpisać do naszej za pomocą zakładki Twins.
Większym problemem jest zdobycie klucza 1. Musimy mieć zlogowaną instrukcję aktywacji, a dodatkowo na opłacanej karcie trzeba wpisać Twiny. Następnie dekodujemy tą instrukcję (tak jak to było opisane wcześniej). Klucz 1 jest dwuczęściowy, czyli składa się z dwóch kluczy nazywanych Primary i Secondary.
Po zdekodowaniu otrzymamy nanoinstrukcje:
9051... Key -> xxxxxxxxxxxxxxxx
9151... Key -> yyyyyyyyyyyyyyyy
Gdzie xxxxxxxxxxxxxxxxx jest kluczem primary, a yyyyyyyyyyyyyyyy kluczem secondary. Teraz pozostaje wpisać klucz do naszej karty. Robimy to w zakładce Twins, tak samo jak wpisywaliśmy klucze C i D. Z tą różnicą, że wpisując klucz Primary wybieramy poniżej „Primary”, a wpisując klucz Secondary wybieramy „Secondary” (Klucze C i D nie posiadają części secondary, więc nie trzeba jej było wpisywać)
Taka karta musi być w blokerze, który będzie przepuszczał instrukcje kierowane na SA, a blokował kierowane na UA. Jeśli jednak zmieniliśmy serial, to można nie używać blokera.
2.4.7 Zabezpieczenia przed deaktywacją
Do karty będącej w dekoderze, operator może wysyłać różne instrukcje. Jeśli jest ona opłacana, to wpisują one nowe klucze itp., Jeśli jednak została uruchomiona przez nas, to operator będzie próbował ją zdezaktywować. Pierwszym sposobem jest użycie blokera. Wtedy żaden EMM nie dotrze do naszej karty. Jednak może się zdarzyć, że np. zapomnimy go użyć, albo nie będzie działał prawidłowo. Dlatego lepiej tak zabezpieczyć kartę, abyśmy w razie deaktywacji mogli ją doprowadzić do poprzedniego stanu, tzn. wpisać Twiny, a potem całą resztę. Pierwszym sposobem jest zapisanie instrukcji, która wpisała nam Twiny. Tzn. po zakończeniu wpisywania Twinów patrzymy w dolne okienko, albo też szukamy w logach zapisanych przez Fioletowego w pliku. Jeśli będzie tam zapisana cała transmisja z kartą, to szukamy takiego fragmentu:
Ins-> [/FONT][FONT=Verdana]C140xxxxxx[/FONT][FONT=Verdana]
Ack <- [/FONT][FONT=Verdana]40[/FONT][FONT=Verdana]
Dane -> [/FONT][FONT=Verdana]1003...[/FONT][FONT=Verdana]
Odp <- yyyy
Bierzemy jedynie nagłówek i dane, czyli części oznaczone przeze mnie kolorem czerwonym i niebieskim, i zlepiamy w jeden ciąg. Tak przygotowaną instrukcję możemy wysłać do karty w zakładce InsGen (tak jak było to opisywane np. przy okazji wysyłania logów do nieaktywnych kart – tzn. wklejamy w środkowe okienko i wciskamy Send). Po jej wysłaniu od nowa mamy Twiny i możemy wpisać klucze C i D i oglądać dalej.
Taka instrukcja może przestać działać po zmianie seriala, dlatego dobrze jest wtedy jeszcze raz wpisać Twiny i zapisać nową instrukcję.
Drugim sposobem jest wpisanie Twinów na providera 0000. Nie są one kasowane podczas deaktywacji i można za ich pomocą np. przywrócić Twiny na 0065, czyli te, o których pisaliśmy dotychczas. Natomiast nie można wpisać Twinów na 0000, jeśli wcześniej zmieniało się serial. My niestety właśnie tak zrobiliśmy i dlatego nie możemy przedstawić tutaj dokładnego opisu ze screenshotami itd.
Oto opis wpisywania twinów na 0000 z forum DVHK (możliwe, że opis jako pierwszy pojawił się na DVB-Z):
[/FONT]
[FONT=Verdana]By dopisać Twiny na prov. 0000 MUSISZ POSIADAĆ TWINY NA PROV. 0065
1. Uruchom program „INSGen”[/FONT][FONT=Verdana] jeżeli są trudności w uruchomieniu – trzeba zarejestrować
„CommX.ocx” np. za pomocą programu „Registra_OCXDLL”[/FONT][FONT=Verdana]
2. Connect
3. Można sprawdzić RECORDS i Read DATA /tu ostatni raz zobaczysz Prov. SECA tylko z kluczem F0/
4. W SETTINGS: ustawiemy Twin Key na 9
5. W SETTINGS: Tab 1003
6. W SETTINGS: Prov. 00 65
7. Wybieramy zakładkę AUTO FUNCT.
8. 1C Bug -> 0000
9. Read DATA – i widzimy dopisane 4 nowe Twin’y /D8, 58, 5F, 5B/ na Prov. 0000[/FONT][FONT=Verdana]
Czyli od tej pory po odczytaniu karty, powinniśmy mieć dodatkowe klucze dla providera 0000.
Oto kolejny opis (z DVHK), który pokazuje jak sprawdzić, czy Twiny na 0000 działają, zmieniając date:
[/FONT][FONT=Verdana]Odpalamy InsDECrypter (wersja progr. nieistotna)
Odczytujemy datę dla prov. 0065.
Ustawienia:
Twin = B
Prov = 00 00
Tab = 1001
zakładka - Ins Maker
w zółte pole wpisujemy:
24 00 65 21 FF FF
dalej - Crea EMM - Send
po wszystkim sprawdzamy date dla 0065, jeśli się zmieniła to wszystko jest ok, jeśli nie:
zmieniamy ustawienia
Twin = 9
Prov = 00 65
Tab = 1003
zakładka - Ins Maker
w żółte pole wpisujemy:
02
dalej - Crea EMM - Send
następnie sprawdzamy:
Ustawienia:
Twin = B
Prov = 00 00
Tab = 1001
zakładka - Ins Maker
w żółte pole wpisujemy:
24 00 65 21 FF FF
dalej - Crea EMM - Send
po wszystkim sprawdzamy date dla 0065, jeśli się zmieniła to wszystko jest ok.
Oczywiście po całym zabiegu przywracamy odpowiednią datę dla 0065.[/FONT][FONT=Verdana]
Jeśli data, się zmieniła to analogicznie możemy dokonywać dowolnych innych zmian dla providera 0065. Jak widać przed chwilą używaliśmy nano:
24 00 65 21 FF FF
Jest to więc nano 21 FF FF, które zmienia datę, dodatkowo poprzedzone: 24 00 65, czyli informacją, że zmiany będą dokonywane na providerze 0065. Analogicznie możemy wpisywać inne nanoinstrukcje, poprzedzając je nano 24 00 65. Np.:
24 00 65 90 59 00 00 00 00 00 00 00 00 24 00 65 90 5F 00 00 00 00 00 00 00 00
Powinno wpisać Twiny dla providera 0065.
2.5 Program UCDS
Jest to program, który był używany jeszcze przed pojawieniem się Fioletowego. Jest on bardziej elastyczny, choć trzeba poświęcić chwilę, żeby nauczyć się nim posługiwać.
Za jego pomocą można tworzyć EMMy korzystając z rekordów bx. Jest to metoda, która została wyparta przez Twiny, ale często zdarza się że musimy coś zrobić bez użycia Twinów i wtedy będziemy musieli jej użyć. Możemy również użyć czasem UCDS zamiast Fioletowego i mamy wtedy większą kontrolę nad tym co robimy.
Będziemy tworzyć EMMy „składając” je z rekordów bx. Taki rekord ma postać:
B1 00[/FONT]
[FONT=Verdana] EV1[/FONT]
[FONT=Verdana] EV2
[/FONT][FONT=Verdana] FF [/FONT] [FONT=Verdana]CNT[/FONT]
[FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]SP SP[/FONT]
[FONT=Verdana] Podczas wpisywania rekordu wybieramy wartości zaznaczone na niebiesko i zielono. Wartości zaznaczone na czerwono są standardowo zerami, ale możemy je później zmieniać. Wartości wpisane na czarno są stałe.
Rekordy układają się na karcie nie w kolejności wpisywania, ale według EV. Wyobraźmy sobie, że wpisujemy dwa rekordy:
B1 00 [/FONT][FONT=Verdana]
01 01
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT] [FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00[/FONT]
[FONT=Verdana] B1 00 [/FONT]
[FONT=Verdana]01 05[/FONT]
[FONT=Verdana] FF[/FONT][FONT=Verdana] AB[/FONT]
[FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00[/FONT]
[FONT=Verdana] Jeśli teraz wpiszemy jeszcze rekord:
B1 00 [/FONT][FONT=Verdana]
01 03
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT] [FONT=Verdana]00 00 FF FF 00 00 To na karcie będą zapisane kolejno rekordy:
B1 00 [/FONT][FONT=Verdana]
01 01
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB [/FONT]
[FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00[/FONT]
[FONT=Verdana] B1 00 [/FONT]
[FONT=Verdana]01 03[/FONT]
[FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT] [FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00[/FONT]
[FONT=Verdana] B1 00 [/FONT][FONT=Verdana]
01 05
[/FONT] [FONT=Verdana]FF [/FONT] [FONT=Verdana]AB
[/FONT] [FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00[/FONT]
[FONT=Verdana] Teraz możemy z takich rekordów zbudować EMM, który najpierw ma jeden dowolny bajt (oznaczany YY) a potem te kolejne rekordy i na końcu jeden bajt równy 03 lub 04. Jeśli mamy na karcie więcej rekordów, do zbudowania EMM’a możemy użyć tylko części, ale muszą one występować po sobie.
Przykład:
Mamy na karcie następujące rekordy:
B1 00 [/FONT][FONT=Verdana]
00 01
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]12 [/FONT]
[FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00[/FONT]
[FONT=Verdana] B1 00 [/FONT][FONT=Verdana]
21 56
[/FONT][FONT=Verdana] FF[/FONT][FONT=Verdana] 80
[/FONT] [FONT=Verdana]00 00 FF FF [/FONT] [FONT=Verdana]00 00
[/FONT][FONT=Verdana] B1 00[/FONT]
[FONT=Verdana] 41 10[/FONT]
[FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF[/FONT][FONT=Verdana] 00 00
[/FONT][FONT=Verdana] B1 00 [/FONT]
[FONT=Verdana]51 05[/FONT]
[FONT=Verdana] FF [/FONT][FONT=Verdana]CD
[/FONT][FONT=Verdana] 00 00 FF FF[/FONT][FONT=Verdana] 00 00
[/FONT][FONT=Verdana]B1 00[/FONT][FONT=Verdana]
52 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00[/FONT][FONT=Verdana]
53 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]70
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
54 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
55 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
56 05
[/FONT] [FONT=Verdana]FF [/FONT] [FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00[/FONT]
[FONT=Verdana]Zbudujemy instrukcję za pomocą ciągu rekordów od drugiego do szóstego, z YY=27. W efekcie otrzymamy instrukcję o następujących danych:
[/FONT][FONT=Verdana]
27
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
21
[/FONT] [FONT=Verdana]56 FF [/FONT] [FONT=Verdana]80
[/FONT][FONT=Verdana] 00 00 FF FF 00 00 B1 00 [/FONT][FONT=Verdana]
41
[/FONT][FONT=Verdana] 10 FF AB 00 [/FONT][FONT=Verdana]00 FF
[/FONT][FONT=Verdana] FF 00 00 B1 00 51 05 FF CD 00 00 FF FF 00 00
B1 00 52 05 FF AB 00 00 FF FF 00 00
B1 00 54 05 FF [/FONT][FONT=Verdana]
70
[/FONT] [FONT=Verdana]00 00 FF FF 00 000x
Początek każdej nanoinstrukcji zaznaczyłem na niebiesko. Mamy, więc następujące nanoinstrukcje:
[/FONT][FONT=Verdana]
27
[/FONT][FONT=Verdana] B1 00 – nic nie robi[/FONT][FONT=Verdana]
21
[/FONT][FONT=Verdana] 56 FF – zmienia datę[/FONT][FONT=Verdana]
80
[/FONT][FONT=Verdana] 00 00 FF FF 00 00 B1 00 – zmienia PBM na 00 00 FF...[/FONT][FONT=Verdana]
41
[/FONT][FONT=Verdana] 10 FF AB 00 – zmienia PPUA na 10 FF AB 0000 – nic nie robi
[/FONT][FONT=Verdana]
FF
[/FONT][FONT=Verdana] FF 00 00 B1 00 51 05 FF CD 00 00 FF FF 00 00 B1 00 52 05 FF AB 00 00 FF FF 00 00 B1 00 54 05 FF – nic nie robi[/FONT][FONT=Verdana]
70
[/FONT][FONT=Verdana] 00 00 FF FF 00 00 0x – nic nie robiA więc za pomocą takich rekordów stworzyliśmy sobie instrukcję, która zmieni PPUA, PBM i datę.
W dalszej części będzie opisane, jak to zrobić za pomocą UCDS, oraz podam konkretne przykłady rekordów do wpisania i jak przeprowadzić parsing.
2.5.1 Instalacja
UCDS pojawiał się w wielu wersjach. Ja używam wersji 2.03 i tą wersję polecam (albo jakąś podobną). Niektóre z wcześniejszych wersji nie mają wszystkiego, co będziemy potrzebowali. Natomiast niektórych nowszych wersji, nie da się zmusić do pracy z naszymi kartami.
Po uruchomieniu programu mogą pojawiać się błędy. Dzieje się tak, jeśli nie mamy wszystkich potrzebnych bibliotek. Proponuje przeszukać uploady w ich poszukiwaniu. Na jednym z nich był kiedyś plik ze spakowanymi wszystkimi bibliotekami potrzebnymi do uruchomienia UCDS.
Jako, że program miał służyć do zabawy z włoskimi kartami będziemy musieli dokonać jeszcze jednej zmiany. Z uploadu trzeba ściągnąć polską chaintable i podmienić ją. Tzn. podmieniamy plik chaintable.bin w katalogu UCDS na plik ściągnięty z uploadu.
[/FONT]
[FONT=Verdana]
2.5.2 Generowanie instrukcji
Wszystkie operacje (wpisywanie rekordów, generowanie EMMów z rekordów itp.) będziemy dokonywali za pomocą wygenerowanych instrukcji. Aby to zrobić najlepiej będzie ich jak najwięcej wygenerować. Przy kolejnych przykładach będę podawał, jak dużo ich potrzeba.
Na początek po uruchomieniu programu wybieramy z menu Carta/Connetti. Zostanie odczytana karta. Wygląda to bardzo podobnie jak w Fioletowym:[/FONT]

[FONT=Verdana] Teraz wybierzmy z menu ECM/EMM/Ins36 / Inserisci / Ins 36xBug. Pojawi się nowe okno, w które wpisujemy instrukcję uniwersalną, czyli:
C1 36 01 9E 14 70 03 11 22 33 44 55 66 77 88 82 9A AC EF AD 5B B7 9F 1F
I klikamy: „Inserisci in archivo”[/FONT]

[FONT=Verdana] Następnie z menu po lewej wybieramy „Ricerca Corte” i wszystkie ustawienia mają być takie jak na poniższym screenshocie (np. Tipo Ins: P3: 7x). Potem klikamy „Ricerca”.[/FONT]

[FONT=Verdana]Po prawej mamy licznik znalezionych instrukcji (Ins Trovate). Stopniowo będzie ich przybywać. W tym momencie proponuję zostawić komputer włączony na dłużej. Ilość potrzebnych instrukcji zależy od tego, co chcemy zrobić. Gdy będziemy mieli tyle instrukcji, ile potrzebujemy, będzie można przejść dalej.
2.5.3 Zapis rekordów bx
Po pierwsze przed zapisem rekordów powinniśmy zorientować się, jakie rekordy są już zapisane. Ponieważ w UCDS jest to dość niewygodne, proponuję na chwilę użyć Fioletowego (zakładka „Records Bx”, przycisk „Info Bx”). Gdy już będziemy wiedzieli, jakie rekordy mamy i jakie chcemy wpisać możemy przejść dalej.
Istnieją dwie metody zapisywania do kart rekordów bx, które będziemy potrzebowali. Pierwsza, to użycie gotowych instrukcji wpisujących rekordy. Można tak np. wpisać rekordy, którymi są wpisywane, Twiny. W tym celu wystarczy wcisnąć przycisk „Write Bx...” w zakładce „Records Bx” w Fioletowym. Na forum DVHK, można znaleźć także inne instrukcje, które wpisują różne rekordy. Aby zadziałały, na karcie musi być zapisana odpowiednia liczba kredytów.
Zazwyczaj jednak będziemy musieli wpisywać rekordy „ręcznie” i robimy to w następujący sposób w programie UCDS:
Z menu po lewej stronie wybieramy „Crea bx”. Pojawi się nowe okno, w którym możemy zawęzić obszar poszukiwać wybierając interesujące nas parametry CV1, CV2 i Cnt rekordu, który chcemy wpisać. Np. na poniższym screenshocie wybrałem dowolne wartości CV1 i Cnt, oraz CV2=05. Potem klikamy „Crea bx”.[/FONT]

[FONT=Verdana] Pojawi się nowe okno, w którym możemy wybrać rekord jaki nas interesuje, tzn. jego wartości CV1, CV2 i Cnt. Wybieramy klikając w kwadracik obok wybranego rekordu.[/FONT]
//ciag dalszy w następnym poscie
[FONT=Verdana][/FONT]
04.12.07 17:25
|
#677425
|
(link)
|
zgłoś naruszenie

[FONT=Verdana] Teraz niestety wpisze się jeden losowy rekord. Musimy brać to pod uwagę i np. kolejne rekordy dobrać tak, aby nie przeplatał się z nimi.
Teraz pojawi się znowu to okno co przed chwila, ale po prawej możemy już wybrać rekord, który nas interesuje.[/FONT]

[FONT=Verdana]Tym razem zostanie on już wpisany do karty. Kolejne rekordy możemy już wpisywać również wybierają je z listy, bez konieczności wpisywania tego pierwszego, losowego.
2.5.4 PPV Spot – zmiana dwóch ostatnich bajtów rekordu
Rekordy bx jak już pisałem mają postać:
B1 00 [/FONT]
[FONT=Verdana]EV1 EV2[/FONT]
[FONT=Verdana] FF [/FONT][FONT=Verdana]CNT[/FONT]
[FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]SP SP
[/FONT][FONT=Verdana]Dwa ostatnie bajty (oznaczone na czerwono), są zerami, ale możemy zmienić ich wartość, jeśli będzie to konieczne. Oto jak to zrobić:
Klikamy w menu po lewej „PPV Spot”. Pojawi się nowe okno z listą instrukcji:[/FONT]

[FONT=Verdana]Dla każdej instrukcji są zapisane wartości D2, D3, D4, D5.
Jeśli wybierzemy, jedną z instrukcji, to D4 i D5 zostaną wpisane do rekordów, których EV1 EV2 jest większe od D2 D3 (niekoniecznie do wszystkich).
Pojawi się kolejne okno, w którym wybierzemy, które rekordy mają mieć zmienione bajty:[/FONT]

[FONT=Verdana]Np. w tym przypadku warunek (EV1 EV2 większe od D2 D3) spełniają rekordy 2, 3, 4, 5, 6. Możemy wybrać kilka kolejnych rekordów począwszy od 2. Czyli np. rekordy 2, 3, 4, 5, ale nie możemy wybrać 2, 3, 5 (bo muszą być to kolejne rekordy).
Po wybraniu klikamy „Esegui”.
2.5.5 Parsing
Pozostało nam już tylko zbudować EMMa na podstawie zapisanych rekordów. Do tego celu będzie trzeba użyć znowu odpowiedniej instrukcji.
Z menu po lewej wybieramy „Parsing” i znowu zobaczymy listę instrukcji. Tym razem interesują nas tylko parametry D2 i D3. Do budowy EMMa zostaną użyte kolejne rekordy, począwszy od pierwszego, który ma EV1 EV2 większe od D2 D3. Np. mając rekordy:
B1 00 [/FONT][FONT=Verdana]
41 10
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00[/FONT]
[FONT=Verdana] B1 00[/FONT]
[FONT=Verdana]51 05[/FONT]
[FONT=Verdana]FF [/FONT] [FONT=Verdana]CD
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
52 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]AB
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]B1 00 [/FONT][FONT=Verdana]
53 05
[/FONT][FONT=Verdana] FF [/FONT][FONT=Verdana]70
[/FONT][FONT=Verdana] 00 00 FF FF [/FONT][FONT=Verdana]00 00
[/FONT][FONT=Verdana]i używając instrukcji, której D2 D3 jest równe 49 00, przeprowadzimy parsing na drugi rekord.
Krótko mówiąc musimy wybrać taką instrukcję, żeby D2 D3 było mniejsze niż EV1 EV2, pierwszego rekordu, którego użyjemy do budowy EMMa, ale większe od EV1 EV2 wcześniejszego rekordu.
Gdy wybierzemy instrukcję, pojawi się kolejne okno:[/FONT]

[FONT=Verdana]W tym oknie wybieramy rekordy, które będą użyte do budowy EMMa (podobnie jak w PPV Spot). Możemy wybrać tylko kolejne rekordy, począwszy od pierwszego, który spełnia warunek (D2 D3 < EV1 EV2).
Po wybraniu klikamy „Esegui” i zobaczymy kolejne okno:[/FONT]

[FONT=Verdana] Wpisujemy taką wartość YY jak chcemy. Obok wybieramy, 40 (czyli EMM a nie ECM). Następnie możemy kliknąć „Emula” i w prawym okienku pojawi się EMM, który właśnie zbudowaliśmy. Pozostaje nam jeszcze wcisnąć „Fissa P1 e P2”, i w nowym oknie wybrać klucz 0:[/FONT]

[FONT=Verdana] Potwierdzamy wciskając „Fissa P1 e P2” (w nowym oknie). Możemy jeszcze kliknąć „Verifica automatica parsing”, żeby się upewnić że instrukcja jest poprawnie zbudowana.
Jeśli tak i instrukcja w prawym okienku jest taka jak chcemy, to wciskamy: „Esegui” i czekamy. Po pewnym czasie powinniśmy dostać komunikat, że wszystko przebiegło pomyślnie.
Poniżej są opisane konkretne przykłady zastosowania tej metody:
2.5.6 Usuwanie rekordów bx, gdy nie mamy Twinów
Czasami powpisujemy sobie za dużo rekordów i ciężko jest nad tym zapanować. Możemy je usunąć za pomocą nanoinstrukcji 40 00 00 FF FF.
Potrzebne są, więc rekordy:
B1 00 xx xx FF 40 00 00 FF FF 5x xx
B1 00 xx xx FF xx 00 00 FF FF xx xx
B1 00 xx xx FF xx 00 00 FF FF xx xx
B1 00 xx xx FF xx 00 00 FF FF xx xx
x – dowolna wartość
Przeprowadzimy parsing na pierwszy z tych rekordów i z użyciem YY=5F. Potrzeba będzie do tego około 20 wygenerowanych instrukcji.
Musimy, więc wpisać jeden rekord z dowolnym, EV1 EV2. Następnie wpisać PPV Spot za pomocą instrukcji z D2 D3 mniejszym od EV1 EV2 tej instrukcji, oraz D4=5x i dowolnym D5. Potem sprawdzamy czy za naszym rekordem są, co najmniej 3 inne.
Jak nie to dopisujemy.
Potem przeprowadzamy parsing na ten rekord i 3 kolejne.
2.5.7 Bezpieczna naprawa kredytów
Jak już pisałem naprawa kredytów za pomocą Fioletowego nie jest bezpieczna. Możemy to natomiast zrobić całkiem bezpiecznie w UCDS. Możemy użyć np. takiego nano: 42 B1 00 7x xx. Wtedy będziemy mieli 7xxx kredytów. Oto potrzebne rekordy:
B1 00 7x xx FF xx 00 00 FF FF xx xx
B1 00 xx xx FF xx 00 00 FF FF xx xx
B1 00 xx xx FF xx 00 00 FF FF xx xx
A więc wpisujemy jeden rekord, który ma EV1=7x i dowolne pozostałe wartości, a następnie dwa rekordy o większym EV1 EV2. Użyjemy YY=42. Wcześniej musimy wygenerować około 20 instrukcji. Potem przeprowadzamy parsing na pierwszy z tych rekordów, używając od budowy EMMa także dwóch kolejnych rekordów.
2.5.8 Wpisanie Twinów bez zmiany daty
Po wciśnięciu w Fioletowym „Write Bx...” do karty są zapisywane rekordy:
B1 01 0E 90 59 00 00 00 00 00 00 00
B1 01 0F 90 5F 00 00 00 00 00 00 00
B1 01 13 00 FD 00 00 00 00 00 00 00
B1 01 13 01 00 00 00 00 00 00 00 00
B1 01 13 02 00 00 00 00 00 00 00 00
Następnie Fioletowy przeprowadza parsing na pierwszy z nich z użyciem YY=21. Powoduje to zmianę daty. Zamiast tego, możemy wpisać rekordy Fioletowym, ale potem już nie klikamy „Write Twins” tylko sami przeprowadzamy parsing w UCDS, z użyciem YY=27. Nie zmieni się wtedy data.
2.5.9 Reaktywacja Twinów na karcie z kluczami 0,F
(Na podstawie opisu kol. Ramzesa z DVHK)
(Na podstawie opisu kol. Ramzesa z DVHK)
Czasem zdarza się, że operator zdeaktywuje nam kartę, na której były wpisane Twiny. W takiej sytuacji zostaje nam tylko klucz 0 i F. Możemy jednak odzyskać Twiny.
Po pierwsze sprawdzamy czy zostały nam rekordy bx, wpisywane przez Fioletowego. Jeśli nie to zaraz je wpiszemy:
Wysyłamy instrukcje kolejno instrukcje:
C1 04 01 0F 08 61 AE A2 B7 B9 8F 5F 6D
C1 02 00 00 08
dostaniemy w odpowiedzi 8 bajtów, które oznaczymy AA AA AA AA AA AA AA AA
Analogicznie wysyłamy:
C1 04 01 0F 08 E6 27 DA 36 E5 59 F9 91
C1 02 00 00 08
uzyskamy 8 bajtow BB BB BB BB BB BB BB BB
C1 04 01 0F 08 AD 80 8A 40 2D EA 8A 43
C1 02 00 00 08
uzyskamy 8 bajtow CC CC CC CC CC CC CC CC
C1 04 01 0F 08 12 C3 CD 92 10 49 9C F1
C1 02 00 00 08
uzyskamy 8 bajtow DD DD DD DD DD DD DD DD
C1 04 01 0F 08 EE 97 F8 B1 F5 34 AE 92
C1 02 00 00 08
uzyskamy 8 bajtow EE EE EE EE EE EE EE EE
nastepnie wysylamy do karty kolejno
C1 30 00 02 09 00 00 00 00 00 00 00 00 FF
C1 3C 01 9F 7E 10 01 31 0E 90 59 2C 00 00 8F 00 00 00 00 00 00 00 00 82 AA AA AA AA AA AA AA AA 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B9
C1 30 00 02 09 00 00 00 00 00 00 00 00 FF
C1 3C 01 9F 7E 10 01 31 0F 90 5F 2C 00 00 8F 00 00 00 00 00 00 00 00 82 BB BB BB BB BB BB BB BB 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B9
C1 30 00 02 09 00 00 00 00 00 00 00 00 FF
C1 3C 01 9F 7E 10 01 31 13 00 FD 2C 00 00 8F 00 00 00 00 00 00 00 00 82 CC CC CC CC CC CC CC CC 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B9
C1 30 00 02 09 00 00 00 00 00 00 00 00 FF
C1 3C 01 9F 7E 10 01 31 13 01 00 2C 00 00 8F 00 00 00 00 00 00 00 00 82 DD DD DD DD DD DD DD DD 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B9
C1 30 00 02 09 00 00 00 00 00 00 00 00 FF
C1 3C 01 9F 7E 10 01 31 13 02 00 2C 00 00 8F 00 00 00 00 00 00 00 00 82 EE EE EE EE EE EE EE EE 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B9
(wartości AA... itp. to wcześniej otrzymane odpowiedzi)
W tym momencie na karcie mamy już zapisane rekordy. Teraz w UCDS możemy przeprowadzić parsing na nie, ale potrzebujemy jeszcze wygenerować trochę instrukcji, a instrukcja uniwersalna nie zadziała, ponieważ nie mamy klucza E. Zamiast niej stworzymy inną instrukcję:
Wysyłamy:
C1 04 01 0F 08 00 00 00 00 00 00 00 00
C1 02 00 00 08
w odpowiedzi dostajemy 8 bajtów XX XX XX XX XX XX XX XX
Następnie włączamy inscypher 1.61, podłączamy się do karty, zaznaczamy spain, w pole 'Corpo ins da P' dajemy 70 03 XX XX XX XX XX XX XX XX 82, nastepnie 'Signa Nativa' i 'Signa Finale' i wlasnie Signa Finale to nasza wartosc YY YY YY YY YY YY YY YY...
Teraz w UCDS generujemy instrukcje, ale zamiast instrukcji uniwersalnej wklejamy:
C1 36 01 9F 14 70 03 XX XX XX XX XX XX XX XX 82 YY YY YY YY YY YY YY YY
Następnie przeprowadzamy parsing na nasze rekordy i mamy od nowa Twiny.
2.6 Bezpieczna zmiana pakietu
Można zmienić pakiet opłacanej karty bez jej uszkadzania, tzn. bez zmiany numeru seryjnego.
Najpierw do karty należy wpisać Twiny. Potem wystarczy zadzwonić do BOKu i poprosić o zmianę na taki pakiet, jaki nas interesuje. Niestety będziemy musieli zapłacić za jeden miesiąc jego oglądania. Potem wkładamy kartę do blokera i wykonujemy kolejny telefon, tym razem zmniejszając pakiet do białego. Karta jest w blokerze, więc nie złapie kolejnej zmiany pakietu. Nie będzie również łapać kluczy, dlatego konieczne jej ich wpisywanie, co miesiąc.
Jednak możemy uniknąć i tego. Wystarczy zlogować instrukcje, która będzie nam wpisywała pakiet biały i zdekodować ją. Wyszukujemy w niej nano 41 i cztery bajty, które zawiera ta nanoinstrukcja to nowe PPUA. Wpisujemy je do karty, a następnie używamy, blokera, który blokuje instrukcje na UA i przepuszcza instrukcje na SA. W ten sposób karta będzie łapać nowe klucze, ale nie zmieni się pakiet.
2.7 Opłacane karty
Część opisywanych operacji, może mieć różne skutki. W przypadku reaktywowanych kart, raczej nie powinny wystąpić problemy. Musimy natomiast uważać, żeby nie namieszać za bardzo w opłacanych kartach. Oto lista rzeczy, o których warto pamiętać:
- Wpisanie Twinów Fioletowym zmienia datę. Należy ją przywrócić, albo używać metody, która nie zmienia daty
- Naprawa kredytów Fioletowym może zmienić PPUA lub dokonać innych, bardziej niebezpiecznych zmian w karcie. Najlepiej nie używać tej metody.
- Zmiana numeru seryjnego karty powoduje nieodwracalne zmiany. Lepiej nie używać tej metody do zmiany pakietu.
- Jeśli zmienimy serial, to karta nie dostanie instrukcji kierowanych na UA (aktywacja, zmiana pakietu). Jeśli mamy zamiar łapać te instrukcje, trzeba z powrotem zmienić serial, a wtedy może być problem, bo podpis PBMu nie będzie się zgadzał, a do starego nie możemy wrócić.
- Jeśli nastąpi deaktywacja, to musimy mieć przygotowany sposób na wpisanie Twinów i reaktywację karty
- Jeśli nastąpi deaktywacja, a serial był zmieniony, natomiast jedynym kołem ratunkowym jest zapisana instrukcja wpisująca Twiny, a były one wpisywane przed zmianą seriala, to jest to naprawdę beznadziejna sytuacja. Nie wpiszemy Twinów, nie przywrócimy starego numeru seryjnego. Nie pomoże nawet aktywacja przez operatora.
[/FONT]
[FONT=Verdana]
2.8 Logowanie
Logowanie to po prostu oglądanie lub zapisywanie komunikacji między dekoderem a kartą. Możemy w ten sposób przede wszystkim zdobyć EMMy, które wysyła operator. Potem możemy np. ponownie wysłać taki EMM, aby reaktywować kartę. Jednak przede wszystkim możemy go zdekodować (było to opisane wcześniej) i zdobyć potrzebne dane, takie jak podpis PBMu, który możemy wykorzystać do innej karty, albo klucze C i D na kolejny miesiąc.
2.8.1 Sprzęt
Potrzebny nam będzie logger. Zazwyczaj można kupić urządzenie o nazwie season/logger, czyli takie, które umożliwia jeszcze emulację karty. Wygląda ono tak:
[/FONT]

[FONT=Verdana] Należy jednak uważać, żeby nie kupić season’a zamiast season/logger’a. (nie ma on slotu na kartę).
Można również złożyć go samemu, schematy są na uploadach. Można także łatwo przerobić programator Phoenix/Funprog i po przeróbce będziemy mieli cztery urządzenia w jednym tzn. Phoenix/Funprog/Season/Logger. Do przeróbki potrzeba laminat od starej karty, diodę 1N4148 i kilka kabelków. Schemat można również znaleźć na uploadach, albo na stronie:
Kod:
Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
[/FONT]Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
[FONT=Verdana]Jak widać taki logger trochę przypomina bloker, tzn. wkładamy do niego kartę i całe urządzenie wkładamy do dekodera. Wtedy karta będzie działać tak jakbyśmy ją włożyli bezpośrednio do dekodera. Do loggera podłączamy kabel, którym łączymy go z portem COM w komputerze. Dodatkowo, większość loggerów wymaga podłączenia zasilacza.
2.8.2 Przygotowanie karty
Zazwyczaj chcemy zlogować instrukcje wysyłane do opłaconej karty, tzn. chcemy aby karta je przyjęła tak jakby była po prostu w dekoderze, a dodatkowo chcemy przechwycić tą instrukcję. W takiej sytuacji do loggera wsadzamy tą opłaconą kartę (i możemy przejść do kolejnego rozdziału).
Może się jednak zdarzyć, że chcemy zlogować instrukcję, która jest przysyłana do karty, do której nie mamy dostępu, albo też nie możemy jej użyć, bo nie chcemy, aby operator dokonał na niej zmian. Możemy w takiej sytuacji zamiast tego przygotować zielonkę lub funkę, która wprawdzie nie będzie dekodować sygnału, ale „przedstawi się” dekoderowi jak opłacana karta i będą na nią przesyłane instrukcje, które potrzebujemy.
Np. przeprowadzamy zmianę pakietu. Zamiast naszej karty użyjemy podróbki, która będzie przyjmować instrukcje tak jak opłacana karta. Po zlogowaniu tych instrukcji zmienimy je trochę i dopiero prześlemy do naszej karty.
Bez względu na to jaką kartę będziemy używali zamiast oryginalnej, musimy ją zaprogramować odpowiednim wsadem. Wystarczy jakikolwiek wsad, który obsługuje system Seca1. Będziemy go musieli jednak nieco przerobić i w tym celu posłużymy się programem PicBinEdit. Za pomocą tego programu musimy zmienić numer seryjny. Ponieważ trzeba w programie wpisać numer seryjny składający się z 8 bajtów, wpisujemy:
00 00 00 00 xx xx xx xx
gdzie xx xx xx xx – to nasz numer seryjny zapisany szesnastkowo (np. odczytany Fioletowym)
Dodatkowo wpisujemy odpowiednie PPUA dla providera 0065.
Po wpisaniu tych dwóch wartości możemy zapisać wsad, do pliku, a potem wgrać go do zielonki albo funki.
Żeby się upewnić, że wsad jest dobrze przygotowany, proponuję odczytać tą kartę (zielonkę lub funkę) np. Fioletowym i zobaczyć czy serial i PPUA się zgadza.
2.8.3 Program T8_Log – konfiguracja
Jest wiele programów do logowania. Proponuję obejrzeć różne i potestować. Ja używam programu T8_Log, bo wydaje mi się najwygodniejszy, choć są problemy np. z zapisem logów do pliku.
Po włączeniu programu należy włączyć zakładkę „Configuration”
[/FONT][FONT=Verdana]
Po pierwsze wybieramy odpowiedni port Com. Trzy wartości na dole mają być takie jak na screenshocie powyżej, tzn.:
Data Bits: 8
Parity: Even
Stop Bits: 2
Pozostaje jeszcze BaudRate. Jeśli używamy dekodera Cyfry np. Pioneer’a, to należy wybrać z listy 9600. Jeśli używamy Philipsa byłej Wizji, to wybieramy Custom i w okienku poniżej wpisujemy 8861.
2.8.4 Logujemy
Przechodzimy do zakładki „Logging”. Po pierwsze obejrzyjmy opcje po lewej:[/FONT]

[FONT=Verdana]U góry jest ramka „Opzioni log”. Możemy tam włączyć filtrowanie poszczególnych typów instrukcji. Jeśli włączymy filtrowanie to dane instrukcje nie będą się pojawiać. Zaznaczając kolejne okienka możemy sprawić, że nie będą się pojawiać:
- instrukcje standardowe (zapytania o serial, uprawnienia itp.)
- ECMy
- EMMy
Oczywiście nie ma sensu filtrować EMMów, bo to właśnie je chcemy zdobyć. Możemy więc albo włączyć tylko pierwsze dwie opcje i wtedy będą się pojawiać tylko EMMy, albo nic nie włączać i wtedy będą się pojawiać wszystkie instrukcje.
Niżej można zaznaczyć „Salva log”. Po zaznaczeniu tej opcji logi powinny być zapisywane do pliku. Niestety u mnie to nie działa. Nie wiem czym jest to spowodowane.
Pozostaje jeszcze opcja „Beep ad ogni EMM”. Radzę ją zaznaczyć. Wtedy jeśli się pojawi EMM, usłyszymy dźwięk. Inaczej łatwo przeoczyć EMMa.
Na samej górze (pod menu) są trzy przyciski (ikonki). Pierwszy od lewej, to rozpoczęcie logowania, drugi to zatrzymanie, a trzeci czyści okienko z logami.
Jeśli mamy wszystko podpięte, to wciskamy przycisk z lewej, żeby rozpocząć logowanie. Wkładamy seasona z kartą do dekodera. Powinny się pojawiać różne instrukcje, ponieważ karta podaje do dekodera serial itp. (chyba, że włączyliśmy filtrowanie instrukcji standardowych). Za chwile to się uspokoi i jeśli nie włączyliśmy filtrowania ECMów, to będą się pojawiać co kilka sekund. Można je rozpoznać po tym, że zaczynają się od bajtów: C1 3C ... lub C1 3A...
Jeśli nie używamy oryginalnej karty, tylko podróbki to co chwilę będzie się pojawiał też ATR.
EMMy pojawiają się znacznie rzadziej, tzn. co 15 minut lub nawet co godzinę. Zaczynają się od bajtów:
C1 40 ...
I to je powinniśmy zlogować. Jeśli nie zapisujemy logów do pliku, to proponuję po pojawieniu się EMMa zatrzymać na chwilę logowanie i przekopiować go np. do notatnika. (zaznaczyć, CTRL+c, CTRL+v).
W zależności od tego co chcemy zdobyć, możemy szukać innych EMMów. Np. jeśli chcemy zdobyć podpis, bo zmieniamy pakiet, to musimy zlogować instrukcję:
C1 40 01 B0 65 ...
Jeśli chcemy zdobyć log aktywacyjny, to potrzebujemy instrukcji:
C1 40 01 B0 5C ...
Radzę jednak uważać, bo tak samo wygląda deaktywacja.
Natomiast instrukcja dopisująca klucze (i również deaktywacja) ma postać:
C1 40 01 B1 5C ...
Jeśli zmieniamy pakiet na wyższy i chcemy to zlogować, to zazwyczaj EMMy zmieniające pakiet zaczynają lecieć mniej więcej godzinę po telefonie do BOKu. Podobnie jest z aktywacją.
2.8.5 Obróbka zlogowanych EMMów
C1 40 01 B0 5C 40 10 03 EB 24 B5 51 EF F1 F4 2C 0C 7B 0F 3E 71 CA 54 0F 2A A8 F0 FB 2D 85 2F FB 51 5D 77 C4 0F 3D 8F E8 9E FC 28 26 BE 12 2D 2B 52 B2 00 2C CB B3 96 70 B9 2E 95 93 C5 14 18 EF 76 5A A3 58 78 5F DE C9 CB 93 6D DB 9C 85 38 7F 1E F8 2B 2E AF 68 E7 73 20 2C 05 F3 77 A4 6F 7C D5 6B 90 1D
Bajty zaznaczone na czarno to instrukcja, a na niebiesko jest zaznaczona odpowiedź karty. Trzeba usunąć wszystko co jest na niebiesko, tzn. bajt ACK, czyli 40 zaraz za nagłówkiem i dwa bajty odpowiedzi na końcu.
To co zostanie, to gotowa instrukcja do wysłania do karty, lub do zdekodowania.
2.9 Karty 7.0B
Mam również nadzieję, że znajdą się osoby, które znajdą tutaj jakieś błędy i dzięki temu w kolejnej wersji, będzie już kompletny opis.
Są to karty, o numerach seryjnych powyżej 0 72.103.6xx.xxx Czasami są też nazywane 7.1. Zostały w nich poprawione błędy, które występowały we wcześniejszych kartach i w związku z tym nie możemy w zasadzie dokonywać w nich żadnych zmian opisywanymi wcześniej sposobami.
Możemy jednak bez względu na wersję karty logować instrukcje przesyłane przez operatora, a następnie wysyłać je w dowolnej kolejności i po kilka razy. I właśnie za pomocą takich kombinacji można reaktywować taką kartę i przedłużać jej uprawnienia na kolejne miesiące.
Przed przeczytaniem dalszego ciągu opisu proponuję zerknąć na początek i przypomnieć sobie na czym polega aktywacja, zmiana pakietu i deaktywacja oraz za co jest odpowiedzialne PPUA i jak jest zbudowane (3 pierwsze bajty to SA itd.)
Jak pisaliśmy wcześniej każda karta należy do pewnej grupy kart, które mają wspólne 3 pierwsze bajty PPUA (nazywane SA), a różnią się tylko ostatnim bajtem. Kart w grupie jest 256 i mają również wspólny klucz 1. Co miesiąc każda taka grupa dostaje EMM (zawierający nowe uprawnienia i klucze), który jest zakodowany tym kluczem 1 i ma zapisane, które karty z grupy mają go przyjąć. Karta dekoduje go i sprawdza ostatni bajt PPUA. Na tej podstawie wiadomo czy karta jest opłacana i czy ma przyjąć tą instrukcję. Analogicznie co miesiąc jest przesyłana deaktywacja do pozostałych kart.
Jak widać operator robi tutaj pewien błąd. Nigdzie nie są sprawdzane 3 pierwsze bajty PPUA. Mogą być więc dowolne.
Przykład:
Do pierwszej należą karty o kluczu 1=1111111111111111 i PPUA=11 22 33 xx,
a do drugiej karty o kluczu 1=2222222222222222 i PPUA=44 55 66 xx.
Załóżmy, że mamy kartę która ma klucz 1=1111111111111111 i PPUA=12 23 76 89
Wysyłamy do niej instrukcję kierowaną na pierwszą z tych grup. Instrukcja się wykona tak jakby była to karta z PPUA=11 22 33 89
Aby podszyć się pod jakąś kartę wystarczy wpisać jej klucz 1 i mieć taki sam ostatni bajt PPUA.
Mówiąc inaczej możemy sobie wyobrazić, że kartę identyfikują 2 rzeczy: klucz 1 i ostatni bajt PPUA. Podczas aktywacji i zmiany pakietu są zmieniane obydwie te rzeczy. My będziemy zmieniali tylko jedną z nich i może w ten sposób trafimy na jakąś opłacaną kartę.
Jak wiadomo karta podczas aktywacji i zmiany pakietu karta dostaje kilka EMMów. Interesuje nas konkretnie jeden o nagłówku:
C1 40 01 B0 5C
Taki EMM wpisuje do karty między innymi klucz 1, ale nie wpisuje PPUA.
Wobec tego wysyłając taki EMM i zarazem zachowując PPUA, możemy podszyć się pod inną kartę, która być może będzie opłacana.
2.9.1 Co jest potrzebne aby uruchomić kartę
- Dostała podpis PBMu, czyli była jeszcze aktywna na przełomie kwietnia i maja 2004
- Od czasu przejścia na tablicę 1003 (przełom lutego i marca 2004) dostała co najmniej 2 instrukcje zmieniające pakiet lub aktywujące kartę (np. po opłaceniu zaległości)
Poza tym potrzebujemy porządnego zestawu logów, ale ponieważ sytuacja dotyczy tego roku, bez problemu znajdziemy je na uploadach.
2.9.2 Zbieramy logi
C1 40 01 B0 5C
Inne instrukcje nas na razie nie interesują. Dodatkowym utrudnieniem jest, że te instrukcje mogą zawierać zarówno aktywację jak i deaktywację. Niestety jedynym sposobem na sprawdzenie, co robi instrukcja jest jej wysłanie do karty. Po wysłaniu każdej instrukcji odczytujemy kartę. Jeśli ma tylko klucz 0, to znaczy że ostatnio wysłaną instrukcją była deaktywacja. Jeśli ma klucze 0, 1, C, D, E, to była to aktywacja. Pozostawiamy tylko instrukcje, które aktywują kartę. Jeżeli zostały nam co najmniej dwie takie instrukcje, to możemy się bawić dalej, choć lepiej jeśli mamy ich więcej.
(dlatego dwie instrukcje, bo ostatnia zmieniała nam klucz 1 na ten aktualny, i mając niezmienione PPUA „podszyjemy” się pod naszą własną kartę, a to nie ma sensu
2.9.2 Bombing i dopisywanie kluczy
Jak widać musimy wysłać wszystkie instrukcje z danego miesiąca. Taka operacja nazywa się „bombing”. Jest to praktycznie niemożliwe do zrobienia ręcznie, ale na szczęście możemy sobie pomagać różnymi programami i skryptami. Proponuję poszukać na uploadach programów do bombingu. Jeden z nich nazywa się po prostu „Bombing”.
Teraz zbieramy logi kierowane na SA i przeznaczone dla tej karty. Potrzebne będą logi z kolejnych miesięcy począwszy od miesiąca, kiedy była słana użyta przez nas instrukcja aktywacji. Wysyłamy jedną z nich i patrzymy na odpowiedź. Jeśli jest to 9009, to wysyłamy kolejno coraz wcześniejsze instrukcje, tak długo aż dostaniemy odpowiedź 9000 lub 97xx. Po otrzymaniu takiej odpowiedzi, wysyłamy kolejno instrukcje coraz późniejsze, aż dojdziemy
do instrukcji z ostatniego miesiąca. Jeśli po jej wysłaniu jest znowu 9000 i mieliśmy trochę szczęścia, to mamy aktualne klucze C i D i możemy oglądać.
Może się jednak zdarzyć, że po wysłaniu jednej z instrukcji kierowanych na SA karta zostanie deaktywowana. Oznacza, to że karta, pod którą się „podpięliśmy” nie jest już opłacana. Wtedy należy zacząć zabawę od początku, ale z inną instrukcją aktywacji.
Teraz co miesiąc musimy oczywiście dopisywać klucze. Niestety musimy znowu użyć logów. Tzn. wiemy pod jaką kartę się podpięliśmy, wiec po prostu co miesiąc bierzemy instrukcję kierowaną na SA , przeznaczoną dla niej i wysyłamy do karty. Jeśli właściciel tej karty nie przestał płacić to mamy nowe klucze i uprawnienia.
Nasuwa się jeszcze jedno pytanie: „Dlaczego wysyłać co miesiąc zlogowane instrukcje, a nie wsadzić kartę do dekodera i po prostu złapać na nią tę instrukcję?”. Musimy, to robić ponieważ dekoder sprawdza SA karty i na jego podstawie wybiera instrukcje, które ma przysyłać do karty. Wobec tego pomimo, że oglądamy na koszt innej karty, to nie dostajemy w dekoderze instrukcji kierowanych do niej, ale instrukcje kierowane do naszej karty.[/FONT]
[FONT=Verdana]
3. Projekt „Faktoryzacja”
Jest to projekt mający na celu złamanie kodowania używanego w podpisie PBMu. Jeśli to nastąpi będziemy mogli sobie swobodnie zmieniać pakiet, bez konieczności zmiany serialu i tym samym bez ryzyka uszkodzenia karty. Co więcej uniemożliwi to operatorowi niektóre ataki. Projekt polega na użyciu dużej liczby komputerów. Dlatego każdy, kto jest zainteresowany tym tematem powinien wziąć w nim udział. A jest to bardzo proste. Wystarczy mieć komputer podłączony do internetu.
Po pierwsze należy zajrzeć pod ten adres (wymagana rejestracja):
Kod:
Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
Jest tam do ściągnięcia program, instrukcja oraz zawsze aktualne informacje na temat projektu.Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
Ściągamy program i rozpakowujemy. Następnie otwieramy plik ecmclient.cfg i szukamy linijki:
//email=...
Usuwamy z niej // i wpisujemy swój email, np.:
email=rysiu@o2.pl
Następnie odszukujemy linijki:
// Core for the Pentium 4
//exefile=ECM50P4.EXE
// Core for the Pentium 3
//exefile=ECM50P3.EXE
// Core for the AMD Athlon
//exefile=ECM50A.EXE
I usuwamy // w linijce opisującej posiadany przez nas procesor. Jeśli np. mamy Pentium3, to
powinno to wyglądać tak:
// Core for the Pentium 4
//exefile=ECM50P4.EXE
// Core for the Pentium 3
exefile=ECM50P3.EXE
// Core for the AMD Athlon
//exefile=ECM50A.EXE
Teraz uruchamiamy program ecmclient.exe i jak po chwili powinniśmy zobaczyć komunikat:
[2004-10-24 13:54:13 GMT] Received OTWIERACZ_F8/B1=260000000
Oczywiście data, czas oraz wartość na końcu mogą być inne. Teraz zostawiamy komputer włączony. Co jakiś czas będą się pojawiać informacje o znalezieniu krzywej i program będzie wysyłał wyniki.
[/FONT]
[FONT=Verdana]Co ciekawe, program korzysta tylko z nieużywanej mocy procesora, a więc inne programy nie będą działały wolniej.[/FONT]
[FONT=Verdana]Opis ze strony
Kod:
Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
[/FONT]
Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
AJO.pl
|
TRO MEDIA
Korzystanie z serwisu oznacza akceptację
regulaminu
.
Polityka prywatności
Regulamin
FAQ
Reklama
Współpraca
Kontakt

