- Помилки в логіці видалення файлу
- При розташуванні файлів на системному диску:
- При розташуванні файлів на інших (несистемних) дисках:
- Помилка обробки файлів із захистом від запису
- висновки
Іноді творці програм-вимагачів припускаються помилок в коді. Ці помилки можуть допомогти постраждалим знову отримати доступ до своїх файлів після зараження. У нашій статті коротко описуються кілька помилок, допущених розробниками вимагача WannaCry.
Помилки в логіці видалення файлу
Коли Wannacry шифрує файли на комп'ютері жертви, він читає вміст оригінального файлу, шифрує його і зберігає в файл з розширенням «.WNCRYT». Після закінчення процесу шифрування він переміщує файл з розширенням «.WNCRYT» в файл «.WNCRY» і видаляє оригінальний файл. Логіка цього видалення може змінюватися в залежності від розташування і властивостей оригінальних файлів.
При розташуванні файлів на системному диску:
Якщо файл знаходиться в «важливою» папці (з точки зору розробників вимагача, наприклад на робочому столі або в папці «Документи»), то перед його видаленням, поверх нього будуть записані випадкові дані. В цьому випадку способів відновити вміст вихідного файлу немає.
Якщо файл зберігається поза «важливих» папок, то оригінальний файл буде переміщений в папку% TEMP% \% d.WNCRYT (де% d - це числове значення). Такий файл містить початкові дані, поверх яких нічого не пишеться, - він просто видаляється з диска. Тому існує висока ймовірність, що його можна буде відновити за допомогою програм відновлення даних.
Перейменовані оригінальні файли, які можна відновити з директорії% TEMP%
При розташуванні файлів на інших (несистемних) дисках:
- Вимагач створює папку «$ RECYCLE» і задає їй атрибути «прихована» і «системна». В результаті папка стає невидимою в Провіднику Windows, якщо конфігурація Провідника задана за замовчуванням. За планом оригінальні файли після шифрування будуть переміщені в цю папку.
Процедура, яка визначає тимчасову директорію для зберігання оригінальних файлів перед видаленням
- Однак через помилки синхронізації в коді вимагача оригінальні файли в багатьох випадках залишаються в тій же директорії і не переміщаються в папку $ RECYCLE.
- Оригінальні файли видаляються небезпечно. Цей факт робить можливим відновлення видалених файлів за допомогою програм відновлення даних.
Оригінальні файли, які можна відновити з несистемного диска
Процедура, яка генерує тимчасовий шлях для оригінального файлу
Ділянка коду, що викликає описані вище процедури
Помилка обробки файлів із захистом від запису
Аналізуючи WannaCry, ми також виявили, що в здирників допущена помилка в обробці файлів із захистом від запису. Якщо на зараженому комп'ютері є такі файли, то вимагач їх не зашифрує взагалі: будуть створені зашифровані копії кожного такого файлу, а самі оригінальні файли тільки отримають атрибут «прихований». У такому випадку їх легко знайти і відновити їх нормальні атрибути.
Оригінальні файли із захистом від записі не зашифровуються і нікуди не переміщаються
висновки
В результаті проведеного нами глибокого дослідження даного вимагача стає зрозуміло, що його розробники допустили безліч помилок, а якість коду досить низька, як ми зазначили вище.
Якщо ваш комп'ютер був заражений здирником WannaCry, існує велика ймовірність, що ви зможете відновити багато з зашифрованих файлів. Для цього можна скористатися безкоштовними утилітами для відновлення файлів. Ми радимо організаціям поділитися цією статтею з системними адміністраторами - щоб ті могли використовувати такі утиліти для відновлення файлів на комп'ютерах корпоративної мережі, піддалися атаці WannaCry.