Может кто-нибудь объяснить, как работает этот Excel 2010 или более ранняя защита паролем - PullRequest
0 голосов
/ 21 ноября 2018

Может кто-нибудь объяснить, как это работает, зачем мне нужно считать от 65 до 66, где 12 счетчиков и что дают все Chr (переменная)?

Я не пытаюсь закодироватьэто, но я нашел это в Интернете, когда кто-то спросил, как разблокировать их лист после того, как они забыли свой пароль.Я хотел бы понять, что на самом деле происходит

Sub PasswordBreaker()

    Dim i As Integer, j As Integer, k As Integer
    Dim l As Integer, m As Integer, n As Integer
    Dim i1 As Integer, i2 As Integer, i3 As Integer
    Dim i4 As Integer, i5 As Integer, i6 As Integer
    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 i1 = 65 To 66
    For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
    For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
    ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
        Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
        Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
    If ActiveSheet.ProtectContents = False Then
        MsgBox "One usable password is " & Chr(i) & Chr(j) & _
            Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
            Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
        Exit Sub
    End If
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
End Sub

Спасибо

1 Ответ

0 голосов
/ 21 ноября 2018

Это сгенерирует несколько 12-символьных длинных паролей, таких как AAAAAAAAAAA или AAAAAAAAAABA и т. Д., И попытайтесь, если они работают, снять защиту с листа.

Функция Chr Chr(65)дает вам символ с кодом ASCII 65, который является A.Таким образом, фактически циклы производят все перестановки A и B для первых 11 символов, а последний цикл имеет еще несколько символов от ASCII 32 до 126 для 12ᵗʰ символа пароля.

Поскольку старая версия Excel использует небезопасную функцию хеширования для хранения пароля, существует несколько паролей для создания одного и того же хэша.Так что это просто дешевый способ найти один из паролей, который работает.

Для получения более подробной информации см .: Понимание методологии безопасности паролей в Excel

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...