logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak odczytać zabezpieczony mikrokontroler Atmel 89C2051?

codeserwis 12 Maj 2007 14:27 3010 15
REKLAMA
  • #1 3876697
    codeserwis
    Poziom 11  
    Posty: 8
    Witam wszystkich
    czy ktoś z grupowiczów jest wstanie odczytać zabezpieczonego takiego Atmela lub zna firmę co może odzyskać program z niego
  • REKLAMA
  • #2 3877723
    markosik20
    Poziom 33  
    Posty: 2261
    Pomógł: 208
    Ocena: 147
    Taniej i prościej będzie napisać nowy :). Nawet jak komuś to zlecisz.
  • #4 3879401
    witold16
    Poziom 13  
    Posty: 112
    Pomógł: 4
    Ocena: 1
    Takie cos to trzeba wykonac prgramatorem równoległym bo zabezpieczenie jest pewnie jest takie, że SPI jest zablokowane.

    Moderowany przez McRancor:

    Ostrzeżenie za błędne rady wprowadzające pytającego w błąd

  • #5 3879417
    Pituś Bajtuś
    Poziom 28  
    Posty: 934
    Pomógł: 137
    Ocena: 10
    Oj Wituś, po co sie wypowiadasz jeśli nie masz bladego pojęcia co piszesz? 89C2051 jest programowany WYŁĄCZNIE równolegle i nie posiada SPI.

    Moderowany przez McRancor:

    Ostrzeżenie za złamanie regulaminu 10.8

  • REKLAMA
  • #6 3896963
    codeserwis
    Poziom 11  
    Posty: 8
    Panowie jak by było takie proste to sam bym zrobił wiem że Chinole szlifują procesory i podpinają sie bezpośrednio do struktury żeby odczytać program ...... żaden mi znany programator nie jest wstanie odczytać zabezpieczonego procesora tylko indywidualne pomysły i rozwiązania mogą pomoc....

    pozdrawiam temat cały czas aktualny
  • #7 3902056
    bolek
    Poziom 35  
    Posty: 4099
    Pomógł: 86
    Ocena: 299
    :arrow: PITUS
    Te procesory wyszły także w wersji ISP, tak że luzik ;)
  • #8 3902417
    shg
    Poziom 35  
    Posty: 2289
    Pomógł: 339
    Ocena: 135
    Z literką C, o którym mowa w temacie - bez ISP. Z literką S - z ISP.

    Co zaś do samego tematu, z tego co kojarzę, to Atmele "łamało" się bawiąc się napięciem zasilania.
    Wydaje mi się, że trzeba by uruchomić kasowanie całego układu (włącznie z fusami), ale na czes w którym czyszczony jest Flash zmniejszyć napięcie programujące poniżej poziomu, który spowoduje skasowanie komórek pamięci, a przywrócić je do normalnego poziomu w momencie kasowania fusów.
    A do tego, jakie to mają być napięcia i jakie czasy trzeba dojść eksperymentalnie, co zresztą nie jest zbyt skomplikowane. Pozostaje tylko kwestia powtarzalności czasów między poszczególnymi układami, ale możei tu da się coś zdziałać monitorując zmiany prądu pobieranego z Vcc. Zgaduję, że w momencie zakończenia kasowania flasha, albo w momencie rozpoczęcia kasowania fusów nastąpi jakiś skok prądu, który będzie można wykryć.
    No ale najprzód to trzeba zbudować sobie stosowny programator (najprościej na innym uC).
  • REKLAMA
  • #9 3903349
    Smoczy
    Poziom 20  
    Posty: 436
    Pomógł: 26
    Ocena: 67
    Mądre i logiczne słowa shg, cała reszta to bicie piany, bo nikomu nie chce się troszę poszukać i poczytać. Pozdrawiam Łukasz
  • #10 3908885
    orcan.bp
    Poziom 14  
    Posty: 69
    Pomógł: 3
    Ocena: 92
    Tylko z tego co wiem a mogę się mylić kasowanie nie następuje komórka po komórce lecz cała pamięć jest kasowana, co można zauważyć po czasie programowania i kasowania. Kasowanie trwa chwilkę a programowanie o wiele dłużej. Jedyny wykonalny mi znany sposób to odkrycie struktury proca oraz potraktowanie ultrafioletem miejsca na strukturze w którym są fusebity tak aby skasować te zabezpieczające.
    Pozdrawiam.
  • #11 3909602
    shg
    Poziom 35  
    Posty: 2289
    Pomógł: 339
    Ocena: 135
    Zgadza się, kasowana jest cała pamięć programu, ale fusy kasowane są osobno.
    Nie znalazłem tego w opisie uC z serii '51, ale jest w notach AVRów, podejrzewam że w obu rodzinach wygląda to tak samo lub podobnie.
    Cytat:
    The Chip Erase will erase the Flash and EEPROM memories plus Lock Bits. The Lock Bits are not reset until the Program memory has been completely erased

    W 'x051 może można by pomanipulować czasem trwania stanu niskiego na /PROG. W nocie podają, że w wypadku kasowania układu ma wynosić 10ms, podczas gdy programowanie wymaga maksymalnie 110us.
  • REKLAMA
  • #12 3915010
    sq6ade
    Poziom 40  
    Posty: 6855
    Pomógł: 482
    Ocena: 285
    Cytat:
    The Lock Bits are not reset until the Program memory has been completely erased

    No to chyba oznacza że Lockbity są kasowane dopiero po tym jak flesz zostanie wyvczyszczony. No i bardzo dobrze. Niech oprogramowanie będzie bezpieczne :D
    p.s.
    Mało stresów sprawiają nam poprzekręcane liczniki w autach i niby-sprawne airbagi? :D
  • #13 3915588
    shg
    Poziom 35  
    Posty: 2289
    Pomógł: 339
    Ocena: 135
    Niewątpliwie wynika z tego, że zabezpieczenie kasowane jest dopiero po zakończeniu procesu kasowania. Tylko pozostaje pytanie, czy po kasowaniu przeprowadzana jest samoczynna weryfikacja? Dokumentacja Nie wspomina nic o weryfikacji. Niby wynikało by to z przytoczonego zdania, ale myślę że mogli by to jednak napisać.

    Najlepiej było by to sprawdzić w praktyce. Chęci są, tylko czasu brak :/
  • #14 3916044
    john_t
    Poziom 29  
    Posty: 1070
    Pomógł: 127
    Ocena: 89
    Nie słyszałem jeszcze aby KTOŚ odczytał poprawny kod z zabezpieczonego Atmela. I bardzo dobrze!!!
  • #15 3916286
    bolek
    Poziom 35  
    Posty: 4099
    Pomógł: 86
    Ocena: 299
    A ja słyszałem, powiem nawet że to koszt ok 200$ jednak trzeba go wysłać do chin. I jest to raczej sprawdzona informacja, (mam wtyczke w chinach :) ) Tam pewno w co drugim kiosku maja takie maszynki.
    Choć w polsce widziałem osobiscie, ruski patent do odczytywania jakiejś motoroli stosowanej w motoryzacji. Jak dobrze pamiętam to żeby osiagnać odpowiednie stromości zboczy procek niekiedy dostawał odwrotną polaryzacje.
  • #16 3920756
    morph13
    Poziom 25  
    Posty: 987
    Pomógł: 25
    Ocena: 32
    Cytat:
    Nie słyszałem jeszcze aby KTOŚ odczytał poprawny kod z zabezpieczonego Atmela. ........

    A jak myślicie kto by sie otwarcie do tego przyznał, bo ja osobiście .... NIE.
    Są znacznie "bezpieczniejsze prawnie" i bardziej opłacalne metody wykorzystanie takiej wiedzy niż klepanie o tym na forum i to "szczególnie na forum" :-).
    Prawda jest taka, że nie ma 100% zabezpieczenia dla uP z Flash i fusebitami które można programować. Dodatkowo żadem producent w/w układów też się nie przyzna, że można "złamać zabezpieczenia" produkowanych przez niego układów. Poprostu wszystko lub prawie wszystko kreci się wokół "elektronicznej komercji".

    Dodatkowo posty shg (i nie tylko) plus artykuł w EP (wspomniano już o nim) dają pewien obraz jak można by się do tego zabrać.... i zdecydowanie nie jest to temat dla "elektronicznych nowicjuszy" ale dla fachowców np od szpiegostwa przemysłowego :-).

Podsumowanie tematu

✨ Dyskusja dotyczy możliwości odczytania zabezpieczonego mikrokontrolera Atmel 89C2051. Układ ten programowany jest wyłącznie równolegle, nie posiada interfejsu SPI, a zabezpieczenia uniemożliwiają standardowy odczyt zawartości pamięci. Próby odczytu zabezpieczonego kodu są bardzo trudne i wymagają specjalistycznych, często indywidualnych metod, takich jak manipulacja napięciem zasilania podczas kasowania pamięci flash i fusebitów, co może pozwolić na częściowe obejście zabezpieczeń. Kasowanie pamięci odbywa się jednorazowo, a fusebity są kasowane osobno, co komplikuje proces odzyskiwania danych. Wspomniano również o metodach fizycznych, np. naświetlaniu ultrafioletem obszarów z fusebitami. Istnieją informacje o usługach w Chinach oferujących odczyt zabezpieczonych mikrokontrolerów za około 200 USD, jednak brak jest potwierdzonych, powszechnie dostępnych rozwiązań. Temat jest złożony i wymaga zaawansowanej wiedzy technicznej, często wykorzystywanej w kontekście szpiegostwa przemysłowego. Producent nie udostępnia oficjalnych metod obejścia zabezpieczeń, a pełne złamanie ochrony jest praktycznie niemożliwe przy użyciu standardowych programatorów.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA