Mikroprozessoren auslesen

"Marc Jet" schrieb im Newsbeitrag news: snipped-for-privacy@73g2000cwn.googlegroups.com...

auch

Ich kenne jemanden persönlich, der das extra machen ließ. Die Aufnahmen habe ich nicht gesehen. So wie er es beschrieb, hat er zumindest was erkennen können. Seinen Wunsch nach Offensichtlichkeit des Programms kam es aber nicht nach. Wobei ich sagen muß, das er was Mechanik angeht es voll drauf hat, was Programme genau sind, ist ihm aber unklar.

Das kann aber kein Problem der Wellenlänge sein. Die Metallisierung könnte man doch theoretisch sichtbar machen. Bin halt kein Röntgenexperte.

Die Pinanzahl ist auch so ermittelbar und dann noch ein paar Vergleichsbilder und schon hast du zumindest den Typ sehr eingegrenzt. Allein daß kann Gold wert sein.

Hm. Ich denke mal er hat schon was besseres ausprobiert. Er ist meist nämlich ziemlich einfallsreich.

- Henry

--

formatting link

Reply to
Henry Kiefer
Loading thread data ...

"Rafael Deliano" schrieb im Newsbeitrag news: snipped-for-privacy@t-online.de...

Einzeltransistoren

nicht.

Hier ist das ausführlicher zu lesen:

formatting link

- Henry

--

formatting link

Reply to
Henry Kiefer

=F6nnte

Das primaere Problem ist, dass die Metallisierung mikroskopisch fein ist. Ein normales Roentgengeraet ist nicht dafuer ausgelegt. Das ist etwa so, wie mit einem analogen 35mm Fotoapparat einem Mikroskop Konkurrenz machen zu wollen.

Die Wellenlaenge ist nur insofern ein Problem, als dass normale Objektive nicht fuer Roentgenstrahlung geeignet sind, und dass die damit erfassbaren Bilder erst fuer das Auge sichtbar gemacht werden muessen. Somit sind Roentgenmikroskope eine teure Sonderanfertigung. Eine theoretische Moeglichkeit, ja, aber Du und ich werden so schnell keines benutzen zu koennen um mal eben beim Fruehstueck den Typ eines abgefeilten Mikrokontrollers nachzugucken.

Bilder aus dem Zahnarztgeraet lassen gerade mal die Pins abzaehlen (geht auch ohne Roentgen), und die Kantenlaenge des Chips bestimmen (plus minus). Wer mehr ueber einen unbekannten Chip wissen will, ist besser bedient wenn er das Gehaeuse (chemisch) entfernt und mit einem mineralogischen Lichtmikroskop arbeitet. Alle Chips tragen aufschlussreiche Nummern und Markierungen, haeufig gibt es Firmen-Logos und natuerlich hat jeder Hersteller auch typische Eigenheiten wie zB die CMP-bedingten Fuellmuster.

Aber mal Hand aufs Herz, wenn Du einen Mikrokontroller auslesen willst, dann weisst Du in der Regel schon im Vorfeld um welchen es sich handelt. Das ganze Umfeld, PCB, Versorgungspins, Leistungsfaehigkeit, Einsatzfeld, Hersteller, Pressemeldungen, etc, alles das gibt so viel Aufschluss dass Du weder Kristallkugel noch Mikroskope brauchst.

Marc

Reply to
Marc Jet

"Marc Jet" schrieb im Newsbeitrag news: snipped-for-privacy@l12g2000cwl.googlegroups.com... [..]

Ich will persönlich eh keine Chips auslesen. Ich programmiere die selber schneller.

"mineralogisches Lichtmikroskop" - das klingt gut. Kann man gleich den Preis erhöhen.

Was sind "CMP-bedingte Fuellmuster"?? Meinst du die Sense-Leitungen der Flash-Leseverstärker?

Zu deinem letzten Absatz: Aus finanziellen Gründen kann ich mich dazu leider nicht weiter auslassen. Glaube mir, es kann Gold wert sein den genauen Typ zu kennen - auch ohne dem Programminhalt.

Gruß - Henry

Reply to
Henry Kiefer

Henry Kiefer schrieb:

Die Wellenlänge entscheidet eher über den Materialkontrast. Die Auflösung wird idR durch die Fokusgrösse auf der Anode gegeben, da die Bilder im Schattenwurfverfahren entstehen. Moderne Röhren haben Fokusgrössen unter 1 Mikrometer. Es sollten also noch deutlich schärfere Bilder als

formatting link
möglich sein.

--
mfg Rolf Bombach
Reply to
Rolf_Bombach

Hallo Henry,

Nur kurz, weil Du gefragt hast:

eis

Der Unterschied zu einem normalen Mikroskop ist, dass dass das Objekt nicht durchleuchtet wird.

Bei organischem Material schneidet man das Objekt normalerweise in hauchduenne Scheibchen, die zwischen Glassplatten gehalten durchleuchtet werden. Bei einem Chip mit mehreren Silizium und Metallschichten funktioniert das natuerlich nicht, genausowenig wie bei Gesteinsuntersuchungen. Die dafuer noetigen Mikroskope haben einen anderen Lichtweg und sind in der Regel ein bisschen teurer, weil sie seltener gekauft werden.

Bei modernen Chips mit mehr als 2-3 Lagen werden die Lagen vor dem Aufbringen der jeweils naechsten glattgeschliffen. Das ist noetig, weil sonst zu grosse Hoehenunterschiede entstehen wuerden. Der Vorgang heisst CMP (chemisch-mechanisches Schleifen).

Damit bei grossen Leerflaechen in einer Ebene die darunterliegenden nicht beschaedigt werden koennen, werden die Leerraeume mit elektrisch inaktiven Mustern aufgefuellt. So gibt's ueberall aehnlich viel Material abzutragen und das Schleifen ist viel einfacher.

Wie die Muster aussehen spielt keine Rolle, und somit hat jeder Hersteller sein eigenes. Kleine Kreuzchen oder das Herstellerlogo zum Beispiel. Man kommt dem Geheimnis also schnell auf die Spur, selbst wenn ausnahmsweise keine aufschlussreiche Beschriftung auf dem Die vorhanden sein sollte.

Gruss, Marc

Reply to
Marc Jet

Ich gebe sowas einem Bekannten, der arbeitet bei Siemens, und die bauen genau die Geräte, die man da so braucht. Der schiebt das Ding in den besten Tomographen, der da so rumsteht, dann kriege ich eine DVD, die die Daten mitsamt viewer-Programm enthält.

ACK, die Geräte taugen zu dem Zweck nicht.

Ralph.

Reply to
Ralph A. Schmid, DK5RAS

Definitiv, da hatten wir ja von einem modernen, digitalen Zahnarzt-Röntgengerät schon bessere Bilder.

Reply to
Ralph A. Schmid, DK5RAS

Stefan Engler schrieb:

Das war doch auch mal bei den "Hackerbikes" ... Diese Fahrräder die überall in München rumstehen und bei denen man eine Zentrale anrufen muss um einen Entsperrcode zu erhalten. Da hab ich vom CCC mal mitgekriegt, dass die AVRs dort auch nicht geschützt waren. Seit dem gab es ein paar Fahrräder die statt Citybike (oder so ähnlich) Hackerbike im Display stehen hatten.

Mfg Thomas Pototschnig

Reply to
Thomas Pototschnig

Natürlich buffer overflow, sehr oft aber auch "integer" overflow. Es ist völlig unerheblich, ob der Code im RAM ausgeführt wird. Er benutzt Arbeitsdaten im RAM. Diese werden manipuliert.

Übrigens gilt das natürlich auch für den Stack. Zwar ist ist es im Unterschied zu anderen Systemen beim AVR nicht möglich, hier direkt Code auszuführen, aber es ist möglich, vorhandenen und bekannten Code im Flash gezielt anzuspringen und diesen mit Parametern zu versorgen.

Das ist mehr als genug.

Reply to
Heiko Nocon

Marc Jet schrieb:

Und sie ist aus Aluminium! Al-27 vs Si-28, wer das im Röntgenlicht, bei den Schichtdicken, unterscheiden will bekommt die 'Goldene Kristallkugel'.

Gruß Dieter

Reply to
Dieter Wiedmann

Ich habe bisher immer eine Aufschrift gefunden, nur war sie nicht immer (für mich) aufschlußreich :)

Reply to
Ralph A. Schmid, DK5RAS

Hallo Heiko,

Sobald das Microcontröllerchen wirklich als solcher eingesetzt wird, er also weder Daten noch Adressbus nach aussen gelegt hat, wirst Du sehr schlechte Karten dabei haben, auch nur irgendwelchen Code manipulieren zu können.

Marte

Reply to
Marte Schwarz

Ich zitiere: "In dem Kasten ohne Display ist die Stromversorgung durch Batterien sichergestellt (3x 1.5V Mono)."

ERNSTHAFT?

Monozellen? Die sind doch noch größer als Baby. So Riesendinger? Vielleicht waren da Mignon gemeint?!

-Andreas

Reply to
Andreas Eibach

Auch ein µC kommuniziert mit der Umwelt, sonst bräuchte man ihn nicht, sondern könnte statt dessen Streichholzschachteln grau lackieren und auf Platinen kleben.

Und genau auf den Wegen, über die er mit der Umwelt kommuniziert, kann man ihn mit Informationen füttern, die er nicht erwartet. Gute Programme machen dann Oops, schütteln sich und versuchen es einfach nochmal. Schlechte Programme schreiben über Pufferenden hinweg (buffer overflow) oder gleich ganz wild im Speicher herum (integer overflow).

Das nennt man dann Sicherheitslücken. Und wenn du den bisherigen Thread gelesen hättest und Basiskenntnisse der Programmierung besitzen würdest, dann sollte dir klar sein, warum man sowas dazu gebrauchen kann, um vorhandenen Code zweckentfremdet zu benutzen. Es ist überhaupt nicht nötig, diesen Code zu manipulieren.

Reply to
Heiko Nocon

Hallo Heiko,

OK, wenn Du solch miese Programme wirklich hacken willst... In einem µC hat ein solches Programm nicht wirklich was zu suchen.

Es erscheint mir sehr unwahrscheinlich, dass Du aus dem verhalten eines abgeschmierten µC noch irgendetwas sinnvolles zweckentfremdet Manipulieren könntest. Das wäre äusserst größer Zufall, wenn Du da was manipultieren kannst.

Marte

Reply to
Marte Schwarz

Das ist wohl wahr. Ein solches Programm hat über µC hinaus sogar eigentlich nirgendwo etwas zu suchen.

Das ändert allerdings erstaunlicherweise rein garnichts an der Tatsache, das solche Programme mindestens zu Tausenden real existieren...

Zwei Gründe, warum es eben kein Zufall ist, daß man speziell bei AVR-Programmen mit recht guter Erfolgsrate gezielt Lücken finden und ausnutzen kann, habe ich schon in meinem ersten Posting in diesem Thread erwähnt.

Reply to
Heiko Nocon

Dann gib uns doch mal ein konkretes Beispiel wie sowas gehen könnte. Mal angenommen, du willst eine Waschmaschinensteuerung die mit einem AVR realisiert ist auslesen. An dem Teil sind 5 Taster und 5 LEDs direkt an den Portpins angeschlossen, ein Wahlschalter der seine Stellung mit 5 Pins auch direkt am AVR Port signalisiert. Dann noch zwei AD Kanäle für Wasserstand und Temperatur, ein Timerpin für die Motordrehzahlmessung, ein Timerpin für Motor PWM, ein paar Pins für Pumpen, Wassereinlass, Türverriegelung usw. und noch ein Dot Matrix Display, damit du irgendwo deinen lpm Befehl zum Stringausgeben hast (denn ohne den wirds vermutlich richtig schwierig). Die Fuses vom AVR seien gesetzt, du darfst an allem rumfummeln, nur nicht den AVR von seinem Gehäuse befreien.

Gruss, Michael

Reply to
Michael Dreschmann

In dem Fall ist es vielleicht nicht unsinnvoll, den AVR aus der Schaltung rauszunehmen und auf einem Test-Board zu betreiben. Man gibt Takt und Eingaben so vor, dass das Programm den String auf dem LCD ausgeben moechte. Man analysiert das Timing (Port-Pins versus Takt-Pin) und greift den Befehl an, welcher die Schleife am String-Ende zum Abbruch bringt. Der Angriff kann beispielsweise durch einen zu kurzen Takt-Impuls oder durch Impulse auf der Betriebsspannung realisiert sein. Man probiert verschiedene Variationen durch (automatisiert durch ein Steuerprogramm am PC) bis der gewuenschte Effekt eintritt und die Schleife ueber das String-Ende hinauslaeuft.

Das ist zwar nicht exakt der Bufferueberlauf aus dem Thread, aber Deine konstruierte Situation hat ja explizit auf komplexere Daten-Eingaben verzichtet. Als ob AVRs nicht auch in Anwendungen mit RS232 Port o.ae. verwendet wuerden..

Gruss, Marc

Reply to
Marc Jet

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.