| |
|
|
- Seite 1 - |
|
| Ich habe noch einiges vor und möchte mal insgesammt antesten, wie es mit des Kenntnissen um Assembler (ASM/MASM) hier im Forum so aussieht.
Keinen blassen Schimmer: Ihr habt noch nie großartig mit ASM zu tun gehabt und bislang selbst keine Quelltexte in ASM geschrieben. Auch die, die zwar im Prinzip einen Großteil eines ASM Textes lesen können, aber nicht dazu in der Lage sind, eigenen Code zu schreiben, sollten sich hier eintragen. Auch jemand, der zwar irgendwann einmal irgendein Tutorial durchgeackert hat, aber nie zum Schreiben gekommen ist, gehört hier hin. Vor etwa einer Woche hätte ich mich auf jedenfall hier eingetragen.
Habe Grundkenntnisse: Hier gehören alle hin, die zwar schon kleinere Codes in ASM geproggt haben, aber weit davon entfernt sind, die gesammt Syntax zu kennen. Auch alle Einsteiger in ASM Programmierung sollten sich hier angesprochen fühlen. Ich selbst habe mich auch hier verewigt.
Habe Erfahrung mit ASM: Das ist die richtige Stelle zum Ankreuzen für die Profis in ASM Programmierung (Frank Abbing würde ich zum Beispiel hier einordnen). Jeder, der schon einige größere Projekte mit ASM durchgeführt hat, aber längst noch nicht jeden Kniff kennt (wie z.B. Treiberprogrammierun oder das Erstellen von DLLs) und Leute, die zwar früher viel mit ASM herumgespielt, aber schon seit Jahren nichts mehr geproggt haben, sollten hier ihr Kreuz setzen.
Ich hätte es wirklich gerne, wenn jeder, der auf diese Umfrage stößt, sie auch beantworten würde. Wer besonders viel Zeit hat, kann auch einen kurzen Text darunterschreiben, was er bislang genau mit ASM gemacht hat.
Besten Dank
Andreas |
|
|
| |
|
|
|
| |
|
- Seite 1 - |
|
Frank Abbing | [quote:39dd4449cf]Interessant finde ich in diesem Zusammenhang, daß Du Frank hier als Assemblerprofi bezeichnest, obwohl ich mir sicher bin, daß er weder Informatik studiert hat, noch auch nur irgendeinen Schein in Assemblerprogrammierung vorweisen kann.[/quote:39dd4449cf]
Das ist richtig. Ich sehe mich selber auch nicht als Profi, weil es noch genügend Dinge gibt, die ich gar nicht oder nur unzureichend beherrsche, z.B. Die Makro-Programmierung. Fortgeschrittener - ja. Profi - nein. Als Fortgeschrittenen betrachte ich hierbei jemanden, der öfter gefragt wird, als das er selber jemanden fragen müsste. |
|
|
| |
|
|
|
| [quote:091d15b84d=Jörg Sellmeyer] Interessant finde ich in diesem Zusammenhang, daß Du Frank hier als Assemblerprofi bezeichnest, obwohl ich mir sicher bin, daß er weder Informatik studiert hat, noch auch nur irgendeinen Schein in Assemblerprogrammierung vorweisen kann. Ich glaube Du mußt Deine eigene Definition von Profi/Experte doch nochmal überdenken
Gruß Jörg[/quote:091d15b84d] Kein Profi, sondern jemand mit Erfahrung. Diese Formulierung habe ich absichtlich gewählt. Ich habe mir einige Artikel von Leuten durchgelesen, die ich als Experten bezeichnen würde (u.a. von Professoren und Doktoren) um hinter manche Spezialitäten der Programmierung zu blicken. Ich bin in der Regel froh wenn ich etwa ein viertel von einem dieser Artikel überhaupt verstehe - nicht weil sich schlecht geschrieben sind, sondern weil mir einfach eine Masse an Wissen fehlt, die dort einfach als das muß schon mal grundsätzlich vorhanden sein vorausgesetzt wird. Was macht mich, Frank oder irgendjemand anderen hier für dich genau zu einem Experten?
Ich habe im letzten Jahr mal die Shatter Attack etwas genauer unter die Lupe genommen. Allein um diese paar Zeilen Quelltext zu programmieren, ist ein Umfang an Wissen und ein Verständnis von Windows nötig, was hier bislang noch keiner gezeigt hat - und auch da gab es damals in der Öffentlichkeit Diskussionen, ob es sich bei diesem Programmierer wirklich um einen Experten handelt. ;D
Ich persönlich finde es ziemlich arrogant in einer Liga spielen zu wollen, in die man einfach nicht hineingehört. Vor talentierten Laien habe ich wesentlich mehr Respekt, als vor selbsternannten Experten. Wer sich hier selbst in die Liga der Experten katapultiert, ohne dies nachweislich zu sein, zeigt damit nicht nur, daß er von großen Bereichen der Windowsprogrammierung gar keine Ahnung hat,, sondern auch, daß sein Horizont so beschränkt ist, daß er in keiner Weise wahrnimmt, daß diese Bereiche überhaupt existieren.
Vor jemandem, der in der Liga der Experten mitspielen kann oder könnte habe ich ebenfalls großen Respekt - ich persönlich kann das nicht, denn mir fehlt jegliches Grundwissen dazu - nämlich das eines Studiums oder einer fundierten Ausbildung im Bereich Informatik. Da mir dieses Grundwissen komplett fehlt, kann mein Wissen nur Laienwissen sein, da ich, wie gesagt, immer nur ein viertel der Artikel wirklich verstehe, die ich mir da durchlese. Aus dem gleichen Grund kann ich von dem Rest nur denken, das ich den verstanden habe, denn mein Wissen wurde niemals auf seine Richtigkeit hin überprüft.
PS: Frank Abbing wollte ich hier nicht als Experten bezeichnen, sondern nur darstellen, wo er und die Profis in ASM Programmierung sich einordnen sollen. Ob Frank ein Profi ist, kann ich beim besten Willen nicht beurteilen - ich kann aber sehr genau sagen, wo ich ihn in meiner Umfrage gerne sehen würde. |
|
|
| |
|
|
|
| Das sieht ja ziemlich gut aus ...
Grund meiner Umfrage: Ich habe vor, demnächst hier noch einiges über Treiberprogrammierung in ASM fallen zu lassen (falls das auf fruchbaren Boden trifft). Nachsehen sollte man da öfters mal unter den Umfragen zur Treiberprogrammierung und den Native-APIs. Mit diesen gesammelten Infos sollte es dann selbst für einen Einsteiger in ASM kein Problem sein, eigene Treiber in ASM zu entwickeln, um die Funktionalität seiner Profanprogramme zu erweitern.
Voraussetungen sind grobe Grundkenntnisse (Habe Grundkenntnisse) in ASM - wer sich hier unter Erfahrungen verewigt hat, wird gar keine Probleme haben das umzusetzen. Die Leute, die hier keinen blassen Schimmer angekreuzt haben, sollten sich vorerst mal einige Tage lang in ASM einarbeiten und gute Kenntnisse in API-Programmierung mitbringen.
Besteht Interesse an solchen Infos? |
|
|
| |
|
|
|
Frank Abbing | [quote:465e0bc041]Besteht Interesse an solchen Infos?[/quote:465e0bc041] Bevor du das fragst, solltest du zunächst mal erklären, was mit einem Treiber möglich ist, dass ein normales Programm nicht kann. Ich denke, das scheinbare Desinteresse im Zusammenhang mit deinem Vorhaben liegt auch darin begründet, dass viele einfach nicht wissen, was mal damit überhaupt anfangen kann... |
|
|
| |
|
|
|
| [quote:0ad6364bce=Frank Abbing][quote:0ad6364bce]Besteht Interesse an solchen Infos?[/quote:0ad6364bce] Bevor du das fragst, solltest du zunächst mal erklären, was mit einem Treiber möglich ist, dass ein normales Programm nicht kann. Ich denke, das scheinbare Desinteresse im Zusammenhang mit deinem Vorhaben liegt auch darin begründet, dass viele einfach nicht wissen, was mal damit überhaupt anfangen kann...[/quote:0ad6364bce] OK, ich versuchs mal zu erklären. Zunächst mal etwas, was gar nichts mit Treiberprogrammierung zu tun hat:
Mit der Anwendung [...] kann man unter anderem durch Ändern der Zugriffsrechte des Policy- und Account-Objektes unter Windows2000 die Zugriffsrechte dieser Objekte so setzen, das ein anderer Admin meinem Account zwar Privilegien hinzufügen, dies aber nie wieder löschen kann. Zur Zeit ist mir keine Möglichkeit bekannt, den Security Descriptor dieser Objekte über die API zu öffnen - wie mache ich das aber dann? Ich greife direkt auf den Security Descriptor dieser Objekte in der Registry zu und ändere ihn dort! Ich mache also mit direktem Zugriff etwas, was eigentlich gar nicht möglich ist.
Mit TNT kann ich im Userbereich, d.h. in virtuellen Speicherbereichen bis 2GB fremder Prozesse, nach Objekten im Speicher suchen, diese auslesen und direkt ändern. Ein Beispiel für direktes Auslesen einer solchen Struktur ist die kleine Spielerei in [...] , bei der ich Fehlercodes anderer Prozesse auslese. Wo dieser Fehlercode genau steht, habe ich mir mit TNT herausgesucht - nirgendwo nachgelesen oder abgeschrieben. Ich bin also durch direkten Zugriff auf Speicherbereiche dazu in der Lage, mich von dem komplett zu lösen, was irgendwo erklärt oder beschrieben ist und vielleicht ganz neue Sachen zu entwickeln - nicht nur Sachen in schlechterer Form nachzuproggen.
Eine Sache, die im Augenblick beim Treiberschreiben im Vordergrund für mich steht, ist direkter Lese- und Schreibzugriff auf Speicherbereiche oberhalb von 2GB. Was das heißt ist wohl jetzt klar: Komplettes Lösen von dem was irgenwo beschrieben oder erklärt ist, selbst nachsehen und direkt ändern um damit Sachen zu machen, die anders nicht gehen - und zwar bezogen auf den gesammten virtuellen Speicher jedes laufenden Prozesses!
Beispiel: Strukturen, die ich dort vermute, sind u.a. der Access-Token und bestimmte Sicherheitsbeschreibungen. Für einen Admin ist es kein Problem, die Sicherheitsbeschreibungen auf einem Rechner so zu setzen, das er alles lesen, löschen und ändern kann. Wenn zwei Admins an einem Rechner arbeiten, will der eine aber vielleicht nicht, das der andere alles lesen oder löschen kann...
Wie gesagt: was ein Treiber unter anderem kann, ist mir die Möglichkeit geben selbst in alle Bereiche des virtuellen Prozeßspeichers aller Prozesse zu blicken und diese nach belieben zu ändern. |
|
|
| |
|
|
|
Frank Abbing | Speicherschnüffler... |
|
|
| |
|
|
|
| Jau, Speicherschnüffeln, wie in AntiVir, der zur Zeit auf deinem Rechner läuft, zum Beispiel . AntiVir startet ebenfalls einen Treiber, den du weder sehen noch beenden kannst und der im Kernel nach Viren sucht. . Mir geht es dabei um das Speicherschnüffeln im eigenen Rechner, um durch direkte Zugriffe und direktes Auslesen und Nachsehen von Sachverhalten die Grenzen von API-Programmierung abschütteln zu können und im Endeffekt nicht mehr auf das angewiesen zu sein, was mir Microsoft in seinen Dokumentationen über sein Betriebsystem verraten will. Es geht darum Sachen zu tun, die normalerweise nur wirkliche Experten tun. Es geht darum, direkt hinter die Sachen zu blicken, von denen die Artikel handeln, die ich mir in meiner Freizeit durchlese und die von den Leuten geschrieben wurden, die ich Experten nennen würde.... |
|
|
| |
|
|
|
Frank Abbing | Also ich habe Interesse an den Infos. Bin aber zur Zeit sehr eingespannt.
[quote:9c7a872a1f]Jau, Speicherschnüffeln, wie in AntiVir, der zur Zeit auf deinem Rechner läuft, zum Beispiel .[/quote:9c7a872a1f] Nene, bei mir läuft der nicht (mehr). Bei mir passt seit einiger Zeit Avast! auf... |
|
|
| |
|
|
| |
|
- Seite 2 - |
|
|
| Ich will mal hoffen, das auch der einen Treiber startet . |
|
|
| |
|
|
|
Michael Wodrich | Mit Sicherheit. Und von Multitasking versteht der auch was - da laufen bis zu 7 Module die auf alles mögliche aufpassen.
Ich habe avast! seit einem Jahr - und trotz des letzten Unfalls werde ich dabei bleiben. Die Updates kommen sehr schnell und der Befall hat sich immerhin um gute 80% verringert. Am Regenschirm (AntiVir) ist wesentlich mehr vorbeigeschlüpft.
Ich habe auch Interesse an den Native-Geschichten. Da fällt mir eine Anwendung ein, die ich schon immer mal umsetzen wollte - so schnell wie die Antiviren-Jäger über die Platte sausen um nach bestimmten Dateien/Daten zu suchen. Da man mit RECYCLER / SYSTEM VOLUME INFORMATION / und so weiter auch Verzeichnisse hat in die man nicht hineinkommt (und an diesen Stellen auf die Nase fällt) gibt es da sicherlich einige Möglichkeiten mehr im Native-Bereich.
Schöne Grüße Michael Wodrich |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 08.11.2006 ▲ |
|
|
|
|
| Du wirst Post von mir bekommen - in der nächsten Zeit. Habe leider ab heute wieder Nachtschicht. |
|
|
| |
|
|
|
| [quote:1b7e71c255] Ich habe auch Interesse an den Native-Geschichten. Da fällt mir eine Anwendung ein, die ich schon immer mal umsetzen wollte - so schnell wie die Antiviren-Jäger über die Platte sausen um nach bestimmten Dateien/Daten zu suchen. Da man mit RECYCLER / SYSTEM VOLUME INFORMATION / und so weiter auch Verzeichnisse hat in die man nicht hineinkommt (und an diesen Stellen auf die Nase fällt) gibt es da sicherlich einige Möglichkeiten mehr im Native-Bereich. [/quote:1b7e71c255] Wenn es um den Zugriff geht: Das man da nicht hineinkommt, liegt am Security Descriptor - also an den Zugriffsrechten - für diese Ordner. Ich habe mir das für SYSTEM VOLUME INFORMATION mal mit PrivAktivate angesehen: Wirklich Zugriff auf diesen Ordner hat nur der Account System - der Account des Betriebsystems, in dem Treiber und bestimmte Services laufen. Was wichtig ist: Der Eigentümer dieses Ordners ist die Gruppe Administratoren, d.h. die Gruppe Administratoren hat das Recht, die Zugriffsrechte dieses Ordners zu ändern. Schnellste und einfachste Möglichkeit für Zugriff auf diese Ordner: 1.) Zugriffsrechte auf Vollzugriff für meinen Account ändern. 2.) Daten auslesen. 3.) Zugriffsrechte zurücksetzen. (ungetestet)
Ich habe zwar noch nicht genau nachgesehen, ich gehe aber davon aus, daß das OS mit dem Auslesen dieser Ordner einen Teiber beauftragt, der mit den Office-Programmen und dem Explorer kommuniziert. Ich werde in den nächsten Tagen auf Windows2000 mal nachsehen, welche Treiber dafür evtl. in Frage kommen (mit Mister Root, ist zwar noch nicht fertig, der kann das aber schon). Evtl. kann man sich da ja irgendwo einklinken - wenn man an die passenden Infos kommt... |
|
|
| |
|
|