2014-09-21 3 views
3

Почему следующий код нарушает защиту паролем excel? У каждого листа, который я сломал с ним, был пароль, похожий на «AAAAABABABAWA», но я сомневаюсь, что это настоящие пароли.Понимание того, как работает функция защиты паролем

Кажется, у нас есть целая цепочка со странным диапазоном. Любая идея, как это работает?

Sub PasswordBreaker() 'Breaks worksheet password protection. 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

ответ

6

Данный механизм пароля страшен. Для разблокировки будет создано много разных паролей. Сценарий пробует пучок, начинающийся с AAAAAAAAAAAA, и останавливается на первом, который работает. Вот почему он говорит: «Один полезный пароль» - есть много полезных паролей.

Детально входной пароль передается через скремблер, который производит 16-разрядный вывод, независимо от длины входного пароля. Поскольку имеется только 65 536 возможных «скремблированных» значений, которые проверяются, и много миллиардов возможных входных паролей для любого установленного вами пароля, есть миллиарды других разных паролей, которые будут работать, чтобы разблокировать его.

Большинство механизмов доступа к паролю не являются настолько неуверенными.

How does Excel's worksheet password protection work

+0

Ничего себе. Это ужасно, спасибо за это. Использует ли слово Microsoft одно и то же для шифрования? – 2014-09-21 23:15:32

+0

Защищенные документы Microsoft Word также легко взломать: просто обнулите пароль в файле. http://www.instructables.com/id/Unprotect-MS-word-Doument./ – andrewdotn

+0

Это ужасно, так как я действительно использую эту функцию. Спасибо за ваш ответ. – 2014-09-21 23:27:08

Смежные вопросы