Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Passwort von Arbeitsmappe entfernen
#1
Hallo zusammen,
 
ich habe eine Datei mit einer durch ein Passwort geschützten Arbeitsmappe.
Da diese Datei nicht von mir ist kenne ich logischerweise das Passwort leider nicht.
Um diese Datei bearbeiten zu können muss das Passwort entfernt werden.
Im Internet habe ich die Möglichkeit gefunden das Passwort über ein Makro entfernen zu lassen:
 
On Error Resume Next
For i = 65 To 66: For j = 65 To 66
For k = 65 To 66: For l = 65 To 66
For m = 65 To 66: For n = 65 To 66
For o = 65 To 66: For p = 65 To 66
For q = 65 To 66: For r = 65 To 66
For s = 65 To 66: For t = 32 To 126
ActiveWorkbook.Unprotect Chr(i) & _
Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(n) & Chr(o) & _
Chr(p) & Chr(q) & Chr(r) & _
Chr(s) & Chr(t)
Next t: Next s: Next r: Next q
Next p: Next o: Next n: Next m
Next l: Next k: Next j: Next i
MsgBox "Arbeitsmappen-Schutz abgeschaltet"
End Sub
 
Nachdem dieses dann ausgeführt wird, zeigt meine Datei relativ schnell „Keine Rückmeldung“ an.
Logischerweise behält die Mappe dadurch ihren Schutz.
 
Kann mir hierzu jemand helfen?
 
Schöne Grüße
Antworten Top
#2
(15.02.2023, 13:33)a.ruesche schrieb: Da diese Datei nicht von mir ist
… wird dir auch keiner dabei helfen, das Passwort zu hacken. Der Ersteller wird schon seinen Grund gehabt haben, das Passwort zu setzen.
Hat Dir mein Beitrag geholfen? Dann hilf auch Du - mit einer Spende an Wikipediadie Tafeln oder aktion-deutschland-hilft.de
Antworten Top
#3
Hallo,

der von Dir beschriebene Code entfernt kein Passwort, das beim Öffnen der Datei eingegeben werden muss!

Bei neueren Excel-Versionen funktioniert auch dieser Code nicht mehr wofür er mal gedacht war. ;)
Gruß
Michael
Antworten Top
#4
(15.02.2023, 13:38)EarlFred schrieb: … wird dir auch keiner dabei helfen, das Passwort zu hacken. Der Ersteller wird schon seinen Grund gehabt haben, das Passwort zu setzen.

Danke für diese tolle und und vor allem hilfreiche Antwort ohne zu wissen was die Datei überhaupt beinhaltet.
Antworten Top
#5
Welcher Schutz ist denn gemeint? Blattschutz, Arbeitsmappenschutz, Öffnen-Passwort, ...?
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • a.ruesche
Antworten Top
#6
Das Passwort für die Datei habe ich. 
Allerdings muss ich den Mappenschutz entfernen um die Datei bearbeiten zu können.

Arbeitsmappenschutz

(15.02.2023, 13:45)Der Steuerfuzzi schrieb: Welcher Schutz ist denn gemeint? Blattschutz, Arbeitsmappenschutz, Öffnen-Passwort, ...?

Kannst du mir zufällig helfen wie ich das Passwort der Arbeitsmappe entfernen kann? Wink
Antworten Top
#7
Frag Google mal zu dem Thema im Zusammenhang mit 7-zip, Giga.de und Chip.de haben da ganz interessante Artikel dazu.

Mehr Hilfe wirst du aber von mir leider nicht bekommen ...
Gruß
Michael
Antworten Top
#8
Hallo,

damit Du wenigstens verstehst, warum der von Dir gepostete Code nicht sinnvoll ist, versuche ich Dein Verständnis dafür zu sensibilisieren. Das ist eine sehr rudimentäre Brute Force Attacke. Der Code prüft lediglich 194.560 Zeichenkombinationen, einer 12-stelligen Zeichenkombination. Dabei bestehen die ersten 11 Zeichen jeweils entweder aus einem A oder einem B (also ausschließlich die Großschreibweise). Zeichen 12 ist eines von 95 Symbolen zwischen den ASCII Codes 32, was dem Leerzeichen entspricht und 126, was der Tilde (~) entspricht.

Diese Parameter ergeben sich aus den 12 ineinander verschachtelten Schleifen. Die 12 Schleifen geben die fixe Anzahl der geprüften Symbole vor. Außer der ganz inneren Schleife, die die Zählervariable t hat, laufen alle Schleifen nur die Werte 65 und 66 durch. Mit jeder Schleife verdoppelt sich also der Aufwand. 2*2*2*2*2*2*2* 2*2*2*2*2 = 2^11 = 2.048 Durchläufe für 11er-Kombinationen aus A und B. Die innere Schleife läuft von 32 bis 126, also 126-32+1 = 95 Mal durch. Da sie innen liegt, macht sie das aber 2.048 mal. So kommt man auf 2.048*95 = 194.560 Durchläufe.

So sieht der Code aus, wenn er "richtig" eingerückt ist. Da erkennst Du auch sofort die Verschachtelung der Schleifen:
(Der läuft so auch auf Deinem Rechner)
Code:
Sub BruteForce()

  z1 = Timer
  On Error Resume Next
  For i = 65 To 66
    For j = 65 To 66
      For k = 65 To 66
        For l = 65 To 66
          For m = 65 To 66
            For n = 65 To 66
              For o = 65 To 66
                For p = 65 To 66
                  For q = 65 To 66
                    For r = 65 To 66
                      For s = 65 To 66
                        For t = 32 To 126
'                          ActiveWorkbook.Unprotect Chr(i) & _
'                          Chr(j) & Chr(k) & Chr(l) & _
'                          Chr(m) & Chr(n) & Chr(o) & _
'                          Chr(p) & Chr(q) & Chr(r) & _
'                          Chr(s) & Chr(t)
                        Next t
                      Next s
                    Next r
                  Next q
                Next p
              Next o
            Next n
          Next m
        Next l
      Next k
    Next j
  Next i
  'MsgBox "Arbeitsmappen-Schutz abgeschaltet"
  MsgBox Timer - z1
End Sub

Auf meinem Rechner dauert die Ausführung des Codes mit auskommentiertem ActiveWorkbook.Unprotect Teil 0,016 Sekunden, denn knapp 200.000 Schleifendurchläufe sind nicht viel. Also kommt schnell die Idee auf, einfach alle sogenannten druckbaren Zeichen pro Schleife durchzugehen. Also alle Zeichen, die in einem Passwort wirklich verwendet werden können. Bleiben wir der Einfachheit halber bei den 95 oben genannten Zeichen von 32 bis 126. Wir stoßen jetzt direkt auf das nächste Problem: Wie lang ist das Passwort?

Ich kürze es etwas ab, weil ich die ganzen Rechnungen nicht hier hinschreiben möchte. Aber bleiben wir bei der 12 stelligen Zeichenkette und gehen davon aus, wir wissen, dass das die länge der gesuchten Zeichenkette ist. Dann haben wir 12 Schleifen die jeweils 95 Durchläufe haben. Klingt erstmal nicht viel. Aber wie oben die ersten 11 Schleifen den Aufwand jeweils nur verdoppeln, weil sie nur 2 Zeichen prüfen, verursacht hier jede Schleife einen Aufwand um das 95-fache. Das sind dann 95^12 = 540.360.087.662.637.000.000.000 Durchläufe.

Rechnen wir den Zeitaufwand basierend auf unserem Versuch mit dem vorhandenen Code hoch, dauert das dann im Worst Case etwa 1,4 Milliarden Jahre, die gesuchte Kombination zu finden. Ist vielleicht etwas lange Wink Das ist übrigens eine gute Veranschaulichung, warum verschachtelte Schleifen oft ein totaler Laufzeitkiller sind.

Wie die anderen auch, sage ich nix weiter dazu, wie ein Passwortschutz in Excel umgangen werden kann. Das hat den Grund, dass niemand von uns weiß, ob Du wirklich an die Daten ran darfst. Diese Haltung ist in allen gängigen Foren Konsens.

Viele Grüße,

Zwenn
[-] Folgende(r) 1 Nutzer sagt Danke an Zwenn für diesen Beitrag:
  • Huzzim
Antworten Top
#9
Vielleicht nochmal zum Hintergrund für den Code, der gepostet wurde.

Die Passwörter für Blatt- und Arbeitsmappenschutz werden in Excel als 16Bit-Haswerte ohne Salt gespeichert. Egal wie lange das Passwort ist, es ist immer ein 16Bit-Hashwert. Durch diese geringe Länge des Hash-Wertes ergeben sich lediglich 65535 verschiedene Möglichkeiten. Das bedeutet, dass es sehr viele Kollisionen gibt, d.h. mehrere Passwörter führen zum gleichen Hashwert. Dies macht sich der Code zunutze, um eines davon zu erraten. Durch geschickte Verwendung der Zeichen, die der Code ausprobiert, werden alle möglichen Hashwerte mit einer relativ geringen Anzahl an Versuchen abgedeckt. Das funktioniert aber nur bis Excel 2010.

Ab Excel 2013 werden die Hashwerte als SHA-512 mit Salt gespeichert, so dass dieses Makro schlicht nicht mehr funktionieren kann ...
Gruß
Michael
[-] Folgende(r) 2 Nutzer sagen Danke an Der Steuerfuzzi für diesen Beitrag:
  • Zwenn, schauan
Antworten Top
#10
Ah, interessant. Das wusste ich bisher nicht. Danke Smile
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste