През април се появи информация за нов рансъмуер, който криптира не отделните файлове, а целия дисков дял. Вирусът получи името Petya и работи на ниско ниво с NTFS таблицата за разположение на файловете, а потребителите изцяло губят достъпа до дисковия дял и файловете в него.
Petya използва специален метод за скриване на своята активност. Рансъмуерът най-напред иска от потребителите активирането на UAC, като се представя за легално приложение. След като са получени по-високите права, вирусът започва да действа. След като дисковият дял е криптиран, рансъмуерът иска паричен откуп от потребителя и дава кратък срок за набавяне на парите. Ако откупът не бъде платен в указания срок, исканата сума се удвоява.
Оказа се, че самият рансъмуер не е много добре защитен. Потребител на Twitter с акаунт leostone създаде генератор на ключове за Petya, с които криптираните дискове могат да се декриптират. Ключът е индивидуален и се генерира за около 7 секунди.
Същият потребител създаде и уеб сайт, който генерира ключове за потребителите, компютрите на които са заключени от Petya.
Методика
Заразеният диск трябва да се извади и да се постави в друг компютър, а необходимите данни се прочитат от точно определени сектори на диска. Тези данни трябва да минат чрез Base64 декодер и да се изпратят в сайта за обработка.
Това не е много лесен начин и за много потребители може да се окаже невъзможен. Но изход има.
Друг потребител, Fabian Wosar, създаде своя програма, която върши повечето от изброените по-горе неща, самостоятелно. И тук се налага заразеният диск да се премести на друг компютър с работеща ОС Windows. След това трябва да се изтегли и стартира програмата Petya Sector Extractor, която сканира всички дискове в системата за наличието на Petya. Ако бъде открит заразен диск, програмата автоматично започва втория етап от своята работа.
В крайна сметка се получава информация, която трябва да бъде качена в същия сайт. В сайта има две текстови полета с имена Base64 encoded 512 bytes verification data и Base64 encoded 8 bytes nonce. За да се получи декриптиращия ключ е необходимо да се въведат данните, извлечени от програмата, в тези две полета.
Чрез бутона Copy Sector се копират данните за полето Base64 encoded 512 bytes verification data, а чрез бутона Copy Nonce – за полето Base64 encoded 8 bytes.
Ако всичко е правилно, ще видим следния програмен прозорец: