Авторский канал о данных, аналитике, визуализации и датапроектах.
Саша Варламов @agvarl, Tableau Zen Master, Avito, ex Playrix, ex InDrive
Post #57
2.16K

Пароли в Excel или мнимая безопасность
Заглавная картинка - скрин из 'Cyberpunk 2077' с небольшими изменениями. Игра революционная в прямом и переносном смыслах. Там есть игровые моменты, в которых дешифруете файлы. Это делается несколькими кликами. Ну то есть, файлы зашифрованы, но несколько секунд достаточно для декодирования и просмотра данных.
Сегодня немного про Excel, формат xlsx и пароли.
Так сложилось что я не работал в Excel полноценно. У меня всё началось с Matlab, Matematica, потом - google sheets, SQL, БД и далее - инструменты BI. Существуют компании, где нет продуктов Microsoft. И таких компаний немало, там макбуки у всех обычно, и с экселем не работают. Но всё равно приходиться иногда разбираться с файлами эксель - от них никуда не денешься.
Несколько раз сталкивался с тем, что в задачах или wiki, на ресурсах подрядчиков или заказчиков остаются какие-то запароленные файлы Excel. Непонятно кто и когда это делал, но данные оттуда вдруг понадобились. Давайте разбираться зачем это делали, и как с этим работать.
Если кратко, то пароли в Excel обычно ставят либо на страницу, либо шифруют весь файл.
1. Если пароль на странице (Protect Current Sheet), то можно сказать что его нет, и данные можно вытащить. Есть еще вариант 'Protect Workbook Structure', но тоже отнесем сюда.
2. Если запаролен весь файл (Encrypt with Password), то забрать данные сильно сложнее - файл шифруется.
То есть,
1. 'Защита' 🛡
2. 'Шифрование'. 🔐
Чаще используют первый вариант - он проще, можно просто кликать на закладки и устанавливать пароль. Так делают или для пересылки через телегу (например), или ещё по каким-то причинам. Видел, такое с P&L делали. Мне кажется что слово 'Защита' действует магическим образом на пользователя. А шифрование для рядового юзера - что-то сложное и менее понятное.
Давайте посмотрим что можно сделать с вариантом 1.
Файл xlsx - это zip архив (это может быть откровением для многих). Расширение файла можно поменять на zip и посмотреть что внутри. Чтобы убрать пароли с конкретных листов, надо в файлах листов 'sheet 1' (как пример), а это xml файлы, удалить секцию кода <sheetProtection. Вот вы и удалили пароль.
Другой способ прочитать данные - открыть файл с паролем в Tableau или Power BI. Они игнорируют пароли, сразу показывают скрытые листы и показывают данные. C Tableau понятно, но почему Power BI игнорирует свою же майкрософтовскую защиту становится ясно, если прочитать официальную доку 'Защита листа'
Там указано что пароль ставится для защиты от изменений данных, а не от защиты чтения.
В случае 2 когда паролится весь документ через File - Info - Protect Workbook - Encrypt with Password, то zip архив шифруется и не открывается потом архиватором. Здесь все сложнее - надо расшифровать архив, но про методы подбора не пишу здесь по понятным причинам. Если надо защитить данные, то только этот способ.
Пишу всё это, потому что в моей практике было несколько случаев, когда искали пароли к листам. Многие считают что данные защищены паролем (написано же 'защитить') и пересылают в таком виде в мессенджерах. Обычные пользователи редко представляют разницу между защитой и шифрованием. Еще немногие знают что BI инструменты игнорируют такие пароли.
Такое небольшое знание может сэкономить несколько часов работы, заслужить уважение коллег и почувствовать себя на минуту героиней/героем Киберпанка.
Заглавная картинка - скрин из 'Cyberpunk 2077' с небольшими изменениями. Игра революционная в прямом и переносном смыслах. Там есть игровые моменты, в которых дешифруете файлы. Это делается несколькими кликами. Ну то есть, файлы зашифрованы, но несколько секунд достаточно для декодирования и просмотра данных.
Сегодня немного про Excel, формат xlsx и пароли.
Так сложилось что я не работал в Excel полноценно. У меня всё началось с Matlab, Matematica, потом - google sheets, SQL, БД и далее - инструменты BI. Существуют компании, где нет продуктов Microsoft. И таких компаний немало, там макбуки у всех обычно, и с экселем не работают. Но всё равно приходиться иногда разбираться с файлами эксель - от них никуда не денешься.
Несколько раз сталкивался с тем, что в задачах или wiki, на ресурсах подрядчиков или заказчиков остаются какие-то запароленные файлы Excel. Непонятно кто и когда это делал, но данные оттуда вдруг понадобились. Давайте разбираться зачем это делали, и как с этим работать.
Если кратко, то пароли в Excel обычно ставят либо на страницу, либо шифруют весь файл.
1. Если пароль на странице (Protect Current Sheet), то можно сказать что его нет, и данные можно вытащить. Есть еще вариант 'Protect Workbook Structure', но тоже отнесем сюда.
2. Если запаролен весь файл (Encrypt with Password), то забрать данные сильно сложнее - файл шифруется.
То есть,
1. 'Защита' 🛡
2. 'Шифрование'. 🔐
Чаще используют первый вариант - он проще, можно просто кликать на закладки и устанавливать пароль. Так делают или для пересылки через телегу (например), или ещё по каким-то причинам. Видел, такое с P&L делали. Мне кажется что слово 'Защита' действует магическим образом на пользователя. А шифрование для рядового юзера - что-то сложное и менее понятное.
Давайте посмотрим что можно сделать с вариантом 1.
Файл xlsx - это zip архив (это может быть откровением для многих). Расширение файла можно поменять на zip и посмотреть что внутри. Чтобы убрать пароли с конкретных листов, надо в файлах листов 'sheet 1' (как пример), а это xml файлы, удалить секцию кода <sheetProtection. Вот вы и удалили пароль.
Другой способ прочитать данные - открыть файл с паролем в Tableau или Power BI. Они игнорируют пароли, сразу показывают скрытые листы и показывают данные. C Tableau понятно, но почему Power BI игнорирует свою же майкрософтовскую защиту становится ясно, если прочитать официальную доку 'Защита листа'
Там указано что пароль ставится для защиты от изменений данных, а не от защиты чтения.
В случае 2 когда паролится весь документ через File - Info - Protect Workbook - Encrypt with Password, то zip архив шифруется и не открывается потом архиватором. Здесь все сложнее - надо расшифровать архив, но про методы подбора не пишу здесь по понятным причинам. Если надо защитить данные, то только этот способ.
Пишу всё это, потому что в моей практике было несколько случаев, когда искали пароли к листам. Многие считают что данные защищены паролем (написано же 'защитить') и пересылают в таком виде в мессенджерах. Обычные пользователи редко представляют разницу между защитой и шифрованием. Еще немногие знают что BI инструменты игнорируют такие пароли.
Такое небольшое знание может сэкономить несколько часов работы, заслужить уважение коллег и почувствовать себя на минуту героиней/героем Киберпанка.
- 👍 22
- ❤ 5


















