Я не писатель, я читатель. Но считаю нужным поделиться.

Буду краток, но уж простите. Данный опус является только желанием поделиться результатом 10-12 часов втыкания в декомпилированный код вируса.

Кому интересно, продолжение ниже.

С самого начала (а это около 13-00 27-го числа), после первого звонка от знакомых, о проявившихся симптомах, начал мониторить сеть на предмет информации. Ее к сожалению мало и до сих пор.

Часам к 5-ти вечера подвезли системник.

Итак.

> h**ps://gist.github.com/vulnersCom/65fe44d27d29d7a5de4c176baba45759 — отсюда взял файл вируса.
> h**ps://retdec.com/decompilation-run/ — тут его декомпилировал.

Сразу оговорюсь — я не писатель, а под windows тем более, поэтому пришлось потратить довольно много времени на изучение полученного кода.

Собственно две вещи которые я обнаружил и хочу поделиться.

1. Файлы меньше 1 Мб (0x100000) шифруются полностью. Больше — шифруется только 1-й мегабайт:

        // 0x100018da
        if (v6 <= lpFileMappingAttributes) {
            if (lpFileSize <= 0x100000) {  //тут проверяется размер файла
                // 0x10001958
                dwNumberOfBytesToMap = (struct _LARGE_INTEGER *)lpFileSize;
                pdwDataLen = dwNumberOfBytesToMap;
                dwMaximumSizeLow = 16 * (lpFileSize / 16 + 1);
                // branch -> 0x100018eb
                // 0x100018eb
                hFileMappingObject = CreateFileMappingW((char *)hFile2, (struct _SECURITY_ATTRIBUTES *)lpFileMappingAttributes, 4, lpFileMappingAttributes, dwMaximumSizeLow, (int16_t *)lpFileMappingAttributes);
                dwFileOffsetHigh = lpFileMappingAttributes;
                if ((int32_t)hFileMappingObject != dwFileOffsetHigh) {
                    // 0x100018ff
                    pbData = MapViewOfFile(hFileMappingObject, 6, dwFileOffsetHigh, dwFileOffsetHigh, (int32_t)dwNumberOfBytesToMap);
                    v4 = (int32_t)pbData;
                    hFile2 = v4;
                    hHash = lpFileMappingAttributes;
                    if (v4 != hHash) {
                        // 0x10001913
                        hKey = *(int32_t *)(a2 + 20);
                        v5 = CryptEncrypt(hKey, hHash, (int32_t)(struct _SECURITY_ATTRIBUTES *)1 % 2 != 0, hHash, pbData, (int32_t *)&pdwDataLen, dwMaximumSizeLow);
                        if (v5) {
                            // 0x1000192e
                            FlushViewOfFile((char *)hFile2, (int32_t)pdwDataLen);
                            // branch -> 0x10001938
                        }
                        // 0x10001938
                        UnmapViewOfFile((char *)hFile2);
                        // branch -> 0x1000193f
                    }
                    // 0x1000193f
                    CloseHandle(hFileMappingObject);
                    // branch -> 0x10001948
                }
                // 0x10001948
                handleClosed = CloseHandle(hFile);
                // branch -> 0x10001951
                // 0x10001951
                g8 = v1;
                g4 = v3;
                return (char *)handleClosed;
            }
        }
        // 0x100018e6
        pdwDataLen = (struct _LARGE_INTEGER *)0x100000; // тут устанавливается максимальный размер шифрования если файл бльше 1 мегабайта
        struct _SECURITY_ATTRIBUTES * v8 = (struct _SECURITY_ATTRIBUTES *)lpFileMappingAttributes;
        lpFileMappingAttributes2 = v8;
        v7 = v8;
        dwNumberOfBytesToMap2 = (struct _LARGE_INTEGER *)0x100000;
        dwMaximumSizeLow = 0x100000;
        // branch -> 0x100018eb
    }

Это же я заметил, просмативая зашифрованные файлы на принесенном компьютере.

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

Ooops, your important files are encrypted.

If you see this text, then your files are no longer accessible, because
they have been encrypted. Perhaps you are busy looking for a way to recover
your files, but don't waste your time. Nobody can recover your files without
our decryption service.

We guarantee that you can recover all your files safely and easily.
All you need to do is submit the payment and purchase the decryption key.

Please follow the instructions:

1. Send $300 worth of Bitcoin to following address:

1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWX

2. Send your Bitcoin wallet ID and personal installation key to e-mail wowsmith123456@posteo.net.
Your personal installation key:

AQIAAA5mAAAApAAAuoxiZtYONU+IOA/XL0Yt/lsBOfNmT9WBDYQ8LsRCWJbQ3iTs
Ka1mVGVmMpJxO+bQmzmEwwiy1Mzsw2hVilFIK1kQoC8lEZPvV06HFGBeIaSAfrf6
6kxuvs7U/fDP6RUWt3hGT4KzUzjU7NhIYKg2crEXuJ9gmgIE6Rq1hSv6xpscqvvV
Fg4k0EHN3TS9hSOWbZXXsDe9H1r83M4LDHA+NJmVM7CKPCRFc82UIQNZY/CDz/db
1IknT/oiBDlDH8fHDr0Z215M3lEy/K7PC4NSk9c+oMP1rLm3ZeL0BbGTBPAZvTLI
LkKYVqRSYpN+Mp/rBn6w3+q15DNRlbGjm1i+ow==

Тут хотелось бы просить помощи специалистов в шифровании.


void function_10001c7f(void) {
    int32_t dwFlags = 0; // ebx
    int32_t hKey = *(int32_t *)(g3 + 20); // 0x10001ca0
    int32_t pdwDataLen = 0;
    int32_t v1;
    if (!CryptExportKey(hKey, *(int32_t *)(g3 + 12), 1, 0, NULL, &pdwDataLen)) {
        // 0x10001d2a
        g3 = (int32_t)NULL;
        g4 = v1;
        return;
    }
    char * memoryHandle = LocalAlloc(64, pdwDataLen); // 0x10001cb1
    if ((int32_t)memoryHandle == dwFlags) {
        // 0x10001d2a
        g3 = (int32_t)NULL;
        g4 = v1;
        return;
    }
    int32_t hExpKey = *(int32_t *)(g3 + 12); // 0x10001cc6
    int32_t hKey2 = *(int32_t *)(g3 + 20); // 0x10001cc9
    if (CryptExportKey(hKey2, hExpKey, 1, dwFlags, memoryHandle, &pdwDataLen)) {
        int32_t pcchString = dwFlags;
        bool v2 = CryptBinaryToStringW(memoryHandle, pdwDataLen, 1, (int16_t *)dwFlags, &pcchString); // 0x10001ce8
        if (v2) {
            char * memoryHandle2 = LocalAlloc(64, 2 * pcchString); // 0x10001cf6
            int32_t hMem = (int32_t)memoryHandle2; // 0x10001cf6_6
            if (hMem == dwFlags) {
                // 0x10001d21
                LocalFree(memoryHandle);
                // branch -> 0x10001d2a
                // 0x10001d2a
                g3 = (int32_t)NULL;
                g4 = v1;
                return;
            }

Третий параметр функции CryptExportKey — 1, это экспорт сессионного ключа. И этот ключ как я понимаю сохраняется в README.TXT.

Собственно вопрос — нельзя ли его импортировать, и расшифровывать файлы? Это не паблик ключ. Понятно, что дайте приват проблем не было бы.

Собственно, больше внимание я обращал именно на функции шифрования, остальное меня не интересовало.

Ну и мнение простого обывателя — данная атака это продолжение майской, в результате которой, видимо, не была достигнута поставленная цель. Потому как на кошельках с прошлой атаки около 160-180 тысяч так и не тронуто. Была бы цель получение денег, их бы уже начали отмывать. За чуть больше чем сутки на кошелек 1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWX перечислили всего чуть больше чем 10000$. Это, конечно, является следствием того, что в прошлый раз никто никаких ключей дешифрования не получил.

Надеюсь моя первая статья не станет последней. С удовольствием исправлю возникшие ошибки.
Поделиться с друзьями
-->

Комментарии (81)


  1. vilgeforce
    30.06.2017 00:09
    +2

    При вызове CryptExportKey можно указать каким ключом шифровать экспортируемый, трой так и делает. Экспортируемый шифруется RSA-2048, так что тут без шансов скорее.


    1. sat_art
      30.06.2017 00:26

      А если знать чем шифруется экспортируемый?


      1. vilgeforce
        30.06.2017 00:29
        +1

        Да не вопрос, RSA ключ в трое лежит практически открытым текстом. Только это RSA и не поможет.


  1. tankistua
    30.06.2017 00:19
    +7

    цель данной атаки финансовая, но рассчитана она была не на получение прибыли, а на нанесение финансрвых потерь. Аргументы:


    1. Один кошелек. Если бы я делал, то я бы генерировал на машине кошелет биткоина и отправлял куда надо вместе с ключем шифрования. Много кошельков сложно отследить.
    2. Почтовый адрес — ну я все понимаю, но с одного почтового адреса даже почту забрать проблематично. При том что его сразу закрыли. Для этих целей есть тор
    3. Каждый диск шифровался своим ключем. Зачем?
    4. Не подверглись шифрованию сменные носители, потому что шифрование проводилось уже вне операционной системы и драйверов юсб просто не было
    5. Шифрование дисков проводилось уже после перезагрузки, следовательно ключ генерировался уже после, когда сети на машине уже не было — ключи никуда не были отправлены.
    6. Гребаный медок, не знаю его роль в этом вопросе, но то, что это через них эта зараза попала на сервера это 100%
    7. Это точно не модифицированный вымогальщик petya — просто картинка похожа


    1. sat_art
      30.06.2017 00:21

      1. Согласен. Но если генерировать адреса, то приватные ключи надо отправлять куда то — можно спалиться. Но если бы стояла цель за выкуп давать возможность расшифровывать, то самый оптимальный вариант по запросу откуда то получать номер кошелька. Ключи хранить в памяти до оплаты. Онлайном проверять баланс кошелька (тот же blockchain.info дает такую возможность), если сумма упала на кошелек — расшифровывать. Ни каких проблем.
      2. Именно…
      3. Потому что для каждого диска, процесс запускал дополнительный поток. Который в свою очередь генерил свой ключ. Почему нельзя было сначала сгенерить ключ, а потом создавать потоки, точно не скажу, но наверное потому, что работать с одним ключом одновременно нескольким потокам нельзя.
      4. Нет, шифрование происходло в системе, вызываются библиотечные функции.
      5. Думаю, шифрование происходило до перезагрузки, а все остальное для понтов.
      6. Их могли использовать в темную.
      7. Вообще не пойму откуда название.


      1. tankistua
        30.06.2017 00:34

        Медок чудаки на букву м — им два года уже рассказывают, что нельзя так обновления выпускать без подписи.


        1. impetus
          30.06.2017 01:46
          +2

          Тут в комментах пишут, что одно из последних было столь кривое, что пользователям поддержка рекомендовала запускать службу из-под доменного админа (впрочем, это сообщение пока одно, подождём ещё подтверждений). Жесть.


      1. vagran
        30.06.2017 19:49

        Для связи с жертвами можно развернуть сайт в виде hidden service в Торе, и никто его ни отследит ни заблокирует.


    1. plartem
      30.06.2017 10:14

      еще один аргумент, скорее всего самый важный: управляющего сервера, который хотя бы ключи хранил, тоже нету.


  1. Vlad_fox
    30.06.2017 10:38
    +1

    8 — атака достаточно сфокусированная, цель — Украина (и дата удачная — перед праздничным днем — днем конституции, кроме нанесения финансового урона еще и нагнетание паники)
    По данным компании ESET (источник: УНИАН ), на Украину пришлось 75,24% заражений от общего количества в мире. На Германию — 9, 06%, на Польшу — 5,81%. Далее идет Сербия (2,87%), Греция (1,39%), Румыния (1,02%). На Россию 0,8%.

    остальных походу просто зацепило взрывной волной…


    1. Ugrum
      30.06.2017 11:48
      -1

      8 — атака достаточно сфокусированная, цель — Украина (и дата удачная — перед праздничным днем — днем конституции, кроме нанесения финансового урона еще и нагнетание паники)


      /надеваю фольгированную кипу/
      Да, давайте я вам я ещё косвенное доказательство целенаправленной атаки подкину.
      Petya-Петя-Петро… Ну вы меня поняли…
      /снимаю фольгированную кипу/


      1. eugene08
        30.06.2017 14:31
        +2

        А по сути есть что сказать?

        — 3/4 заражений произошло в Украине,
        — список пострадавших состоит сплошь и рядом либо из госструктур либо из крупных компаний, которые очень заметны, вносят заметный вклад в ВВП,
        — список точно неполный, знаю большую компанию FMCG, так же пострадавшую, она не в списке,
        — атака произошла одномоментно, учитывая что каналы заражения были разные то похоже что активация синхронна,
        — использованная версия petya это wiper/необратимый шифровальщик а не ransomware, некоторые факты позволяют предположить что получение выкупа не было целью (гуглим petya is a wiper).

        Итого имеем скоординированную атаку вредоносным по, уничтожающее данные, в результате чего пострадали банки/транспортные компании преимущественно на территории одной страны.

        Вы знаете подобные атаки в прошлом?


        1. galserg
          30.06.2017 14:36

          по сути уже сказали
          медоки подцепили трипер и заразили им пол страны
          самые жопорукие — легли полностью
          самые дебильные, хранящие критичные данные на самба шарах и в базах ms sql — получили критические повреждения в межушный ганглий.


          1. NiTr0_ua
            30.06.2017 21:00

            кроме медка это счастье еще рассылается почтой.
            + гуляет по LAN, юзая кроме ms17-010 еще какой-то 0-day эксплойт (слышал от знакомых о случаях заражения серверов со всеми обновлениями).
            + еще, говорят, где-то находили зараженные флэшки с автораном.


            1. Frankenstine
              03.07.2017 11:10

              0-day эксплойт сомнителен, заражение распространяется через кражу уже залогиненных админских учёток.


    1. galserg
      30.06.2017 12:16
      +6

      В Украине зарплата админа в конторах, которые легли — 300-400 долларов
      поэтому те, которые с мозгами и руками — зарабатывают 1500+ в иностранных или аутсорсинговых компаниях.
      а в говноконторы или гос структуры идут работать токо рукожопы.
      вот и весь секрет
      впрочем не весь
      есть мысль, что в распрострастранении вируса сильно помог какой-то анонимайзер, которые на Украине резко стали популярны.

      А агентов путина среди вирусов искать — верный путь к галопиридолу.


      1. sat_art
        30.06.2017 12:21

        Ну я бы так не был категоричен. В Киеве админы не плохо получают для Украины, как и в Москве для России. А дешевых админов и в России достаточно.
        Я согласен, что целенаправленно было спланировано.
        В сетки вирус проникал через почту, а организовать целенаправленную рассылку не так сложно.
        Другое дело, что внутри сети были в черти каком состоянии. И майский вирус ни чему не научил.


        1. galserg
          30.06.2017 12:36
          +5

          Я так категоричен потому, что живу в Киеве, в девопсы пошел из админов и поэтому — знаю рынок.
          А так же видел список подохших контор и примерно знаю сколько там народ зарабатывает.
          не, многим в Украине эникейские 300-400 баксов за счастье, но профессионалы на такую зп не пойдут.
          кстати, в кыбэрполицию набирали тоже на зп до 10к гривен. причем глядя на список скилов в вакансии я чуть не помер от хохота.
          поэтому когда прессллужба киберполицаев присоединилась к хору конспирологов — лично мне стало ясно, что туфта на 100%


      1. Indestr
        30.06.2017 12:41

        По твоей логике, можно сказать что и в Майкрософт работают рукожопы, раз допустили использование пароля в открытом виде. Не нужно всё валить на людей, здесь проявился комплекс уязвимостей, многие сделали выводы, и такой софт как МЕдок будут устанавливать изолированно.


        1. galserg
          30.06.2017 12:46
          +8

          не, в мелкософте работают прекрасные и умные парни, которые за 20+ лет развития ОС не смогли сделать нормальный менеджер процессов, не позволяющий несанкционированную эскалацию привилегий.
          за 10+ лет развития СЕРВЕРНОЙ оси — сервак с настройками по умолчанию воткнутый голой жопой в интернет — живет пару часов, потом его ломают.
          это ж блин вершина программисткого искусства, редхат, обнимая оракл — рыдает.


          1. Indestr
            30.06.2017 12:55

            Ты писал про зарплаты. Поэтому я привёл пример, что не в зарплатах дело.


      1. Alexsandr_SE
        30.06.2017 13:11
        +1

        Про рукожопов это громко. просто реально нет финансирования что бы все было как у людей. Из десятка серверов осталось только два "рабочих" и только один из них может работать сутками без перезагрузок. Накопители не в лучшем состоянии и объем аж 500гиг, много не поместить и так во всех аспектах. Нужно вкладывать в госсектор, а там режим жесткой экономии официально включен, вот и экономят, а железу более 10 лет уже.


        1. galserg
          30.06.2017 13:38
          -2

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


          1. sergarcada
            30.06.2017 14:20
            +4

            А что изменится? Один человек уйдет, как вы говорите, релокейтнется, переведется в ентерпрайз, а на его место придет другой. И как от этого изменится ситуация? Думаете, от этого зарплату поднимут и бюджет на ИТ увеличат?


            1. galserg
              30.06.2017 14:29

              всех не перестреляете (С)?
              да нет, конечно не изменится, ибо та таких должностях обычно сидят, сростаясь с креслом всякого рода вечные студенты, ранние пенсионеры, «виндовс админы» и прочие товарищи, не умеющие самостоятельно обучаться.
              и там, где такие товарищи востребованы, по причине нищенского бюджета — жопа будет всегда, не зависимо от пети или пути.


              1. sergarcada
                30.06.2017 15:15

                Вы не поняли. Что изменится в организации, после того как сменится специалист?
                Дело же не в том, что какой-то специалист жалуется на свою судьбу и загубленный талант. А в том, что руководство не видит смысла поддерживать ИТ-инфраструктуру, работает — и ладно. И была бы это частная контора, она сама бы со временем загнулась. Но госсектор не загнется, хоть на счеты его пересади. И страдает от этого не сисадмин, не его руководство, а в широком смысле жители страны.


                1. galserg
                  30.06.2017 15:29
                  +2

                  а ПОЧЕМУ что-то должно меняться в организации, с бюджетом айти отдела в три копейки в урожайный год?
                  я лишь сказал что обучаемые люди, с руками из плеч — всегда могут найти НОРМАЛЬНУЮ работу.
                  а оставшиеся — и устраивают такую бурю в стакане с дурнопахнущей субстанцией, сваливая вину, как теперь модно, на агентов путина.
                  да, в украине даже вирусы — агенты путина. а мегаспецы — что вы! не виноваты.
                  кстати — в моей конторе не заражен ни один компьютер.


                  1. sergarcada
                    30.06.2017 15:42

                    а ПОЧЕМУ что-то должно меняться в организации, с бюджетом айти отдела в три копейки в урожайный год?

                    Вы задаете мне мой же вопрос? Оригинально, я думал вы как раз знаете на него ответ. Как мегаспец с бюджетом в «три копейки» может изменить ситуацию?
                    Рад за вас, что в вашей организации не заражен ни один компьютер. Удачи в изучении английского и всего-всего.


                    1. galserg
                      30.06.2017 16:04
                      -1

                      а менять зачем? всех все устраивает
                      те, кого это не устраивало — давно не работают на провинциальных госпредприятиях.
                      правда, они приложили для этого определенные усилия.
                      а что до госсектора — скоро в этой нищей, разваливающейся стране отопление зимой пропадет, какой блин айти в госсекторе?


          1. Alexsandr_SE
            30.06.2017 15:05

            И как это повлияет на госсектор? Без улучшения финансирования вообще никак. водном месте знаю бегают с дисков внешним за свой счет купленным на 500гигов, но жутко не хватает объема. Не говоря уже про беготню руками.
            Что касается энтерпрайз, так это еще нужно и в города крупные переезжать, иначе ничего не светит толкового.


            1. galserg
              30.06.2017 15:19

              ок. был неправ про рукожопов.
              руки могут расти из правильного места, но по причине каменного века в технологиях на работе, а так же по причине неумения самообучаться — эти руки толком ничего не умеют, кроме как носить дискетку в 500 гиг между пораженными триппером машинами
              меж тем — кибернетис кластер на поиграться очень легко поднять под вагрантом на своей локальной тачке.
              про аутсорсинг слышали?
              будет ли вообще чел из провинции, имеющий стабильно 20-30 часов на аутсорсинге с рейтом 15 долларов выходить в говноконтору, где он еще как шарик должен пять раз вокруг офиса оббежать, чтоб принести домой жалкие 300 баксов в месяц?

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


              1. Alexsandr_SE
                30.06.2017 15:29

                Блин, я пишу про экономию, а вы мне про потратьте деньги. Денег нет, железо 10-ти и более летней давности за редчайшими исключениями. Иногда народ свои компы приносит из дому, не говоря про мелочевку типа клавиатуры и мышки. Самообучение при таких раскладах весьма ограниченное, просто негде взять железо на опыты и довести это потом до ума. Я знаю места где трудятся машины с объемом памяти 256мб.
                Из провинции когда выберется, должен будет еще за жилье заплатить, с женой не расстаться…
                Как правило в регионах аутсортинг весьма слабо представлен. причина цены. За час берут порядка 20у.е.
                Ну а пока плевать на влияние госсектора последний в состоянии при заражении не мало без совершить при остановке свой работы, также такой работы как есть.


        1. eugene08
          30.06.2017 14:54

          Проблема более комплексная, но не сводится только к деньгам

          Рукожопство — одна из наиболее важных и опасных проблем. Например, в одном министерстве все компы в одном вилане. Представляете? Клерк Вася может постучать со своего компа на комп министра. Что мешало порезать все на виланы, горизонтально и вертикально?

          Eще причина — отсутствие протоколов и стандартов, каждый админ настраивает как хочет/может. Меж тем есть общие принципы позволяющие минимизировать последствия и защитить критичные данные и сервисы (PCI DSS/HIPAA и тп)


          1. dmitry_ch
            30.06.2017 16:04
            +2

            Наверное, тут слово «министерство» не при чем. В минестерства ищут, кстати, людей порой даже и со списком сертификатов, только вопрос в цене, человек с сертификатами не всюду и не за любые деньги пойдет работать.

            Ах да, есть еще вопрос про оборудование. Иной раз купить свич — тендерная история на полгода, так что в в приведенном вами случае могу поверить, что построили как умели и на чем было, а потом уже никто не стал трогать.

            Есть даже такой подход, что тебе платят 3 копейки, ты сидишь с умным лицом и занимаешься своими делами (в меру умения — фриланс тот же). И тупо затраты времени и энергии на улучшение сети и инфраструктуры тебе не стоят потери денег от несделанного фриланса, причем за вланы тебя не похвалят, а только бы еще и не отругали. Другими словами, условия таковы, что «не гореть» работой выгоднее, чем гореть.

            И страна, где такое творится — не при чем. Если нет спрашивающего (кто грамотно оценит усилия) то порой нет резона и на рожон лезть. А если вирус и пожрет, то всегда можно сослаться на вражеских хатцкеров, скажем.


      1. Vlad_fox
        30.06.2017 14:42
        +1

        по Вашему низкий процент заражения в Белоруси, Росии, Казахстане обьясняется более высокими зарплатами админов в тех странах?

        а в говноконторы или гос структуры идут работать токо рукожопы.
        — пострадало около 30-и комерческих банков, сомневаюсь что все они укомплектованы исключительно рукожопами.

        открою вам еще секрет — в банках не пользуются анонимайзерами. не знаю как у вас, я про украинские банки, в нескольких из которых работал и работаю.

        есть более содержательные обьяснения данным ESET?


        1. galserg
          30.06.2017 15:00

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


          1. NiTr0_ua
            30.06.2017 21:12

            в госучреждениях это зверье приползло на почту. а потом — расползлось по локалке.

            при этом заползшее с обновлением медка, как ни странно, в одном случае не успело/не смогло заразить другие компы в сети (другая версия?).


            1. Frankenstine
              03.07.2017 11:19

              Очень на то похоже, много отзывов «из всей сетки слёг только сервер медока».


        1. Alexsandr_SE
          30.06.2017 15:38

          Банки, представители контор, оптовые поставщики, коммунальные и обслуживающие предприятия… Спико весьма большой, походу куда больше официально заявленного. Ведь что киперполиция может, еще записать +1 к общему списку и не более того. Вирус уже на месте, думать нужно было до этого, так же как и медоку этому дать наказ про изменение методики обновлений своей программы. У людей иной раз доменного админа требует для работы, изверги.


          С другой стороны это новая ветка в распространении вирусов. Апдейты большей части приложений могут распространять вирусы в будущем. Взломали сервер и БД, подправить контрольные сумы или вообще или вообще переподписать сертификатов ихним. Программы сами все сделают, сами установят. Сложно, но масштабы и обход сразу кучи проблем говорят о возможности.


      1. Vitalley
        30.06.2017 16:26

        Когда уезжал, с провинциального городка, то там от 100$ были зп, всё что выше считалось очень хорошо.


    1. maxbatura
      30.06.2017 12:22
      +5

      В Украине столько заражений просто благодаря M.E.Doc


      1. NiTr0_ua
        30.06.2017 21:20

        госучреждения медком не пользуются…


        1. Kliba
          30.06.2017 22:53

          Еще как пользуются, по старому опыту говорю


          1. NiTr0_ua
            01.07.2017 20:26

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


    1. Charg
      30.06.2017 16:54
      +1

      А мне кажется что тут причинно-следственная связь перепутана местами. Это не в Украину метили атаку, а просто получилось взломать сервера медка. А раз уж медком пользуются практически только украинцы — вот они и огребли больше всех. А остальные заражения это уже почта.


      1. Wild_ButcheR
        30.06.2017 17:12

        да, мне тоже такой сценарий видится более вероятным


        1. zagayevskiy
          30.06.2017 19:44

          А название Петя — это так, просто по приколу. Да?


          1. Dionis_mgn
            30.06.2017 20:41
            +1

            Там помимо Пети ещё и Миша есть. Это отсылка к Бондиане. Так что не просто так. Но и к Украине отношения никакого.


      1. burzooom
        02.07.2017 13:30

        хакеры, работающие за 1500\месяц, написали два мощных вируса. что бы собрать с небогатой страны сумму равную их двухмесячной зарплате?



  1. xl0e
    30.06.2017 18:32
    -1

    100000 это все же 100кБ а не 1 МБ.


    1. sat_art
      30.06.2017 18:33
      +1

      0x100000 (в шестнадцатиричной системе) =1048576 байт = 1 Мб


  1. alexnissan
    30.06.2017 18:44

    В соседней ветке мне сказали что можно скопировать первый сектор диска С и загрузочную запись windows и при загрузке системы всегда их перезаписывать сохраненной копией и все петя не будет работать


    1. Frankenstine
      03.07.2017 11:22

      Ерунда. Вирус портит бут уже после загрузки, во время работы оси. За час до (зашедуленной) перезагрузки.


      1. alexnissan
        03.07.2017 16:14

        Ну и пусть портит он не сможет загрузиться вместо ОС, можно даже проверку хешсуммы загрузчика приписать, чтоб его не переписывать каждый раз


        1. Frankenstine
          03.07.2017 19:42

          И как часто проверять будете? Каждую секунду? Или может лучше просто не дать вирусу запуститься?


          1. alexnissan
            03.07.2017 19:57

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


            1. Frankenstine
              05.07.2017 09:17

              Во-первых, бут надо как-то обновлять иногда, например при установке новой версии винды. Значит, где-то должна быть соответствующая процедура. Вирус может встроиться в эту процедуру, и тогда вы при каждой перезагрузке будете ЗАРАЖАТЬ бут вирусом.
              Во-вторых, если найдётся какая-нибудь непропатченная возможность уронить винду в BSOD, ничто не помешает вирусу заразить бут и следом же уронить винду, и заражённый бут будет запущен.
              Вы пытаетесь повторить подвиг Дона Кихота. Сражаетесь с ветрянными мельницами.


              1. alexnissan
                05.07.2017 11:27

                Я вижу примерно так на диске отдельный раздел например ext4 чтобы windows его не видел на нем например grub со всеми настройками по проверке и восстановлению загрузочных записей, из него загрузка windows. Никаких мельниц. Почитайте «shellcoder handbook». Мне не понятен момент когда происходит шифрование, под windows или после загрузки вируса вместо него?


                1. Frankenstine
                  05.07.2017 14:14

                  Вирусу накакать на ваши разделы, ему нет до них никакого дела. Он просто перезапишет бут своим кодом, который запустится ВМЕСТО grub'а.
                  Вирус NotPetya состоит из двух частей — одна из-под Windows записывает вредоносный код в бут и шифрует файлы по списку расширений, другая часть уже запускается из бута и шифрует MFT, а так же отображает требование выкупа.


                  1. alexnissan
                    05.07.2017 14:52

                    Ну grub можно записать на CD диск, usb-SD, e-mmc — на все что можно сделать механически read-only, в биосе указать загрузку только с этого носителя. А вот шифровка из под windows это думать надо, интересно за сколько повремени cuda и nvidia tesla справятся с подбором ключа перебором…


                    1. Frankenstine
                      05.07.2017 15:20

                      Если вы будете держать grub на CD диске, то как вы будете обновлять ядро, которое выходит с периодичностью примерно раз в неделю-две? Хрень вы предлагаете, ей-богу. Тем более в старых БИОСах был пункт защиты бута от записи. Помогал ровно никак.


                      1. alexnissan
                        05.07.2017 15:49

                        Какое ядро? Зачем обновлять? У меня grub без обновления работает несколько лет и никогда не просился обновиться. Биос не грузит ничего кроме него как не крути! Это реальное решение, а что можете предложить Вы?


                        1. Frankenstine
                          06.07.2017 16:24

                          Изучите на досуге что такое grub stage 1, stage 1.5, stage 2…


                          1. alexnissan
                            06.07.2017 16:35

                            Спасибо но Зачем? у меня старая версия наверно 2010 года, поставил настроил и забыл. У Вас что-то не получается вы и читайте, я в свое время английский выучил, когда мануалы читал.


                          1. alexnissan
                            06.07.2017 17:35

                            Все я понял вы прочитали до booting components и там описана загрузка linux: kernel и initrd и вы думаете, что это все нужно для работы самого grub, для выполнения проверки хеша загрузчика и восстановления mbr вам возможно понадобится промежуточно использовать linux для выполнения bash scripta, до передачи загрузки windows, если не сможете написать в самом grub, так что читайте внимательнее…


                            1. Frankenstine
                              06.07.2017 22:27

                              Stage 1 слишком мал чтобы вместить драйверы файловых систем, поэтому он просто передаёт загрузку на Stage 1.5 (core.img записанный в пустое место сразу после бут сектора), который обновляется каждый раз, когда ставится новое ядро. Без этого grub не сможет загрузить ядро.
                              Во-первых, вы не можете держать загрузочный сектор на незагрузочном устройстве. Во-вторых вы не можете забить на обновления и не обновлять ядро, а значит и grub.


                              1. alexnissan
                                07.07.2017 11:06

                                Экий Вы не гибкий! Возьмем к примеру liveCD как он по Вашему обновляется?


                                1. Frankenstine
                                  07.07.2017 14:15

                                  На LiveCD ядро не обновляется, скрипт обновления там представляет собой заглушку, только лишь выводящую сообщение о невозможности обновления ядра. Чтобы реально обновить LiveCD, его просто полностью пересобирают.


                                  1. alexnissan
                                    07.07.2017 15:57

                                    А зачем вообще обновлять liveCD? Если вам так проще понять, тогда возьмите iso образ из него все выкиньте что не нужно, оставьте только grub и нужные для его работы каталоги, все настройте как вам надо например меню загрузки:
                                    --> windows check and recovery hdd disk partition structure
                                    --> load windows
                                    (тут фантазируйте как вам лучше грузить по цепи или отдельными пунктами)
                                    и запишите на диск. Ну как в биосе настроить загрузку только с CD я думаю вы знаете.


                                    1. Frankenstine
                                      09.07.2017 12:17

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


                                      1. alexnissan
                                        09.07.2017 15:08

                                        Мне мастерства хватает делать свои «liveCD», чтобы ничего не доустанавливать, до перезагрузки. Для борьбы не подходит, а для восстановления разделов и загрузки подходит, для поиска и восстановления измененных и удаления лишних системных файлов при загрузке системы подходит. Пишут, что массовое распространение началось 27.06, а может он спал и его разбудили? Борьба это для антивирусов.


                                        1. Frankenstine
                                          09.07.2017 15:30

                                          Он не спал, а был загружен через BackDoor.Medoc, см. https://habrahabr.ru/company/drweb/blog/332444/


  1. vagran
    30.06.2017 19:44

    Монетки капают понемногу. 300 евро — это около 0.13 битков, все транзакции около этой суммы скорей всего от жертв.


    1. alexnissan
      30.06.2017 20:24
      -1

      Похоже на «операцию Ы» все уже украдено до нас 330 каждому!!!


  1. RomanStrlcpy
    30.06.2017 21:07

    А может ли кто нить рассказать как они это всё будут обналичивать? Ведь безличность вроде как только внутри самой сети криптовалюты.


    1. alexnissan
      30.06.2017 22:20
      +1

      Накупят товаров в интернет магазинах и продадут через е-bay, как вариант, а может это отвлекающий маневр и деньги они уже получили при варианте «нас может спасти только кража» что более вероятно


  1. Machine79
    02.07.2017 13:29

    Правда что ключ не получить потому что ящик злоумышленников Petya заблокирован?


  1. sat_art
    02.07.2017 13:30

    И не только по тому. Еще и потому, что его никто не собирался давать.


    1. Machine79
      05.07.2017 13:41

      Почему такая уверенность?


      1. MacIn
        06.07.2017 18:01

        Присоединяюсь к вопросу. Неоднократно слышал такое мнение, но без конкретики.