1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

API-Trick verhindert Löschen von Registry-Eintrag

Discussion in 'Sicherheit' started by franzkat, Mar 14, 2005.

Thread Status:
Not open for further replies.
  1. franzkat

    franzkat CD-R 80

    Durch diesen Thread

    http://www.administrator.de/index.php?content=0996f333f082882eb46316007b789f84

    bin ich auf ein Phänomen aufmerksam geworden, welches ich bemerkenswert finde. Es gibt eine Methode, einen Registry-Eintrag so zu manipulieren, dass der jeweilige Wert nicht zugänglich ist und der Zweig auch nicht gelöscht werden kann. Bei dem oben angesprochenen Beitrag wird berichtet, dass die Trial-Version von O&O Defrag damit arbeitet. Bei sysinternals.com findet man eine genauere Beschreibung des technischen Hintergrunds für dieses Phänomen und ein Testprogramm, welches das Phänomen simuliert.

    http://www.sysinternals.com/ntw2k/info/tips.shtml#registryhidden

    Ich halte es für sehr naheliegend, dass in Kürze auch Malware mit diesem Trick arbeitet, was zu nicht unerheblichen Problemen führen könnte.Ich habe versucht den von Sysinternals erzeugten Eintrag über einen Hex-Editor zu entfernen (nach vorheriger Speicherung der geänderten software-Datei): Bin dabei aber nicht erfolgreich gewesen, weil die Datenbankstruktur der Registry in der Hex-Ansicht komplizierter ist als gedacht. Also mit Löschen der Bytefolge xyz ist nix; man müßte auch bestimmte Steuerdaten für die Registry-Datenbank neu setzen.Wer hat mit so etwas Erfahrung ? Wer hat eine Idee, wie man dem Phänomen beikommen kann? Ein Native-API-Reg-Editor ist mir nicht bekannt.
     
  2. franzkat

    franzkat CD-R 80

    zu Pluto :

    Das heißt, das dürfte nicht helfen.

    Nachtrag : Hab's getestet : Pluto kann den Zweig erwartungsgemäß nicht öffnen.
     
  3. franzkat

    franzkat CD-R 80

    Erklär mal genauer, was du gemacht hast ! Was bedeutet vorher, nachher und allerdings ? Was liegen für Aktionen dazwischen? (Ich habe auch Resplendend Registrar eingesetzt; allerdings kann ich damit auch keine Löschaktion machen bzw. den versteckten Wert sehen) Ich hab's jetzt mit nem Hex-Editor auch hingekriegt. Man muss allerdings darauf achten, dass man die Datei 'software' wieder mit der Anzahl der gelöschten Bytes mit 00 Byte am Ende auffüllt, damit man wieder auf die gleiche Größe kommt.
     
  4. franzkat

    franzkat CD-R 80

    So kann man das Problem lösen, indem man die Registry mit dem Hex-Editor editiert :

    - man lädt die Datei software aus %windir%\system32\config (kann man nicht direkt machen; ich habe mit einer ERUNT-Kopie gearbeitet; das geht am bequemsten)
    in einen Hexeditor

    - man sucht den Textstring Internals und markiert dann den Auschnitt wie im Screenshot :

    http://mitglied.lycos.de/franzkat/touch1.jpg

    - anschließend auf Entf drücken.
    - man fügt exakt an dieser Stelle wieder statt der gelöschten 272 Byte die gleiche Anzahl 0 Byte ein.

    http://mitglied.lycos.de/franzkat/touch2.jpg

    Anschließend im Hex-Editor speichern und wieder zurück in den config-Ordner.

    Der Native-API-Spuk ist verschwunden.
     
  5. franzkat

    franzkat CD-R 80

    Folgendes Tool zeigt einem an, ob man überhaupt welche von diesen sog. Embedded Nulls in der Registry hat :

    http://www.sysinternals.com/ntw2k/freeware/rootkitreveal.shtml

    Lol. Habe dadurch festgestellt, dass der O&O Defrag-Eintrag bei mir auch vorhanden ist.Werde ich mich heute Mittag mal drum kümmern und auch Brummelchens TuneUp-Utilities-Vorschlag testen.
     
  6. franzkat

    franzkat CD-R 80

    RegAnalyzer ist nicht schlecht und zeigt tatsächlich die versteckten Werte an. Allerdings taucht der O&O Defrag-Schlüssel nicht unter :

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\System auf, sondern es wird als erster Schlüssel unter

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ ein ???-Unterschlüssel angezeigt. Löschen geht aber-wie MM oben schon schreibt-nicht mit RegAnalyzer.

    Der O&O-Defrag-Eintrag ist in der Hex-Ansicht noch wesentlich komplizierter als der Sysinternals-Simulationseintrag.Da hat man per Hex-Editor praktisch kaum noch eine Chance, ohne die Registry zu beschädigen, wenn man die Offsets nicht genau kennt. Es gibt aber einen anderen Weg, den Eintrag korrekt zu löschen :

    Das altbekannte Petter-Nordahl-Tool Offline NT Password & Registry Editor ist eben nicht nur zum Passwortsetzen gut, sondern auch zum Registry-Editieren.Das ist zwar auf der Kommandozeile etwas gewöhnungsbedürftig, aber man hat vollen Zugriff auf den besagten O&O-Null-Key; und da eben unter Linux nicht die Windows API benutzt wird, kann man dann auch den Eintrag löschen.
     
  7. franzkat

    franzkat CD-R 80

    Habe ich auch gedacht. Ist aber ein Irrtum. Das Tool tut so, als wenn der Eintrag gelöscht würde. Er bleibt aber in Wahrheit vorhanden.

    Ich habe jetzt noch mal bei dem O&O-Eintrag folgendes getestet :Wenn man die beiden Bytes hinter 'System' in einem Hex-Editor mit X und 0 überschreibt, dann wird der Name des Eintrags in SystemX umbenannt und der Namensstring entsprechend der Win API-Konvention korrekt terminiert. Der Eintrag erscheint dann unter regedit ganz normal. Der Wert kann eingesehen und der ganze Eintrag problemlos gelöscht werden.
     
  8. franzkat

    franzkat CD-R 80

    Ich hatte eine ursprüngliche Trial freigeschaltet; deshalb stellt sich das Problem so nicht für mich.

    Müßte man auch noch mal unter VMware testen, ob das geht.
     
Thread Status:
Not open for further replies.

Share This Page