SYMBOLCOMMON_NAMEaka. SYNONYMS
win.eyservice (Back to overview)

EYService

Actor(s): Nazar


EYService is the main part of the backdoor used by Nazar APT. This a passive backdoor that relies on, now discontinued, Packet Sniffer SDK (PSSDK) from Microolap.

References
2020-05-05CheckpointCheck Point Research
@online{research:20200505:nazar:a4d2c7c, author = {Check Point Research}, title = {{Nazar: Spirits of the Past}}, date = {2020-05-05}, organization = {Checkpoint}, url = {https://research.checkpoint.com/2020/nazar-spirits-of-the-past/}, language = {English}, urldate = {2020-05-05} } Nazar: Spirits of the Past
EYService
2020-04-27MalwareLab.plMaciej Kotowicz
@online{kotowicz:20200427:quick:e6bf310, author = {Maciej Kotowicz}, title = {{Quick look at Nazar's backdoor - Network Communication}}, date = {2020-04-27}, organization = {MalwareLab.pl}, url = {https://blog.malwarelab.pl/posts/nazar_eyservice_comm/}, language = {English}, urldate = {2020-05-05} } Quick look at Nazar's backdoor - Network Communication
EYService
2020-04-23MalwareLab.plMaciej Kotowicz
@online{kotowicz:20200423:quick:ce2218e, author = {Maciej Kotowicz}, title = {{Quick look at Nazar backdoor - Capabilities}}, date = {2020-04-23}, organization = {MalwareLab.pl}, url = {https://blog.malwarelab.pl/posts/nazar_eyservice/}, language = {English}, urldate = {2020-05-05} } Quick look at Nazar backdoor - Capabilities
EYService
2020-04-22EpicTurlaJuan Andrés Guerrero-Saade
@online{guerrerosaade:20200422:nazar:0c5eef8, author = {Juan Andrés Guerrero-Saade}, title = {{Nazar: A Lost Amulet}}, date = {2020-04-22}, organization = {EpicTurla}, url = {https://www.epicturla.com/blog/the-lost-nazar}, language = {English}, urldate = {2020-05-05} } Nazar: A Lost Amulet
EYService Nazar
2018-03CrySyS LabBoldizsar Bencsath
@techreport{bencsath:201803:territorial:04343bb, author = {Boldizsar Bencsath}, title = {{Territorial Dispute – NSA’s perspective on APT landscape}}, date = {2018-03}, institution = {CrySyS Lab}, url = {https://www.crysys.hu/publications/files/tedi/ukatemicrysys_territorialdispute.pdf}, language = {English}, urldate = {2020-05-07} } Territorial Dispute – NSA’s perspective on APT landscape
9002 RAT Agent.BTZ DuQu EYService Flame FlowerShop Stuxnet Uroburos
Yara Rules
[TLP:WHITE] win_eyservice_auto (20210616 | Detects win.eyservice.)
rule win_eyservice_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2021-06-10"
        version = "1"
        description = "Detects win.eyservice."
        info = "autogenerated rule brought to you by yara-signator"
        tool = "yara-signator v0.6.0"
        signator_config = "callsandjumps;datarefs;binvalue"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.eyservice"
        malpedia_rule_date = "20210604"
        malpedia_hash = "be09d5d71e77373c0f538068be31a2ad4c69cfbd"
        malpedia_version = "20210616"
        malpedia_license = "CC BY-SA 4.0"
        malpedia_sharing = "TLP:WHITE"

    /* DISCLAIMER
     * The strings used in this rule have been automatically selected from the
     * disassembly of memory dumps and unpacked files, using YARA-Signator.
     * The code and documentation is published here:
     * https://github.com/fxb-cocacoding/yara-signator
     * As Malpedia is used as data source, please note that for a given
     * number of families, only single samples are documented.
     * This likely impacts the degree of generalization these rules will offer.
     * Take the described generation method also into consideration when you
     * apply the rules in your use cases and assign them confidence levels.
     */


    strings:
        $sequence_0 = { 2bd9 c1fb02 3bc3 772c 8bc5 51 8d1c90 }
            // n = 7, score = 100
            //   2bd9                 | sub                 ebx, ecx
            //   c1fb02               | sar                 ebx, 2
            //   3bc3                 | cmp                 eax, ebx
            //   772c                 | ja                  0x2e
            //   8bc5                 | mov                 eax, ebp
            //   51                   | push                ecx
            //   8d1c90               | lea                 ebx, dword ptr [eax + edx*4]

        $sequence_1 = { 8bce e8???????? 8b442460 8b4048 85c0 7410 8b4c2460 }
            // n = 7, score = 100
            //   8bce                 | mov                 ecx, esi
            //   e8????????           |                     
            //   8b442460             | mov                 eax, dword ptr [esp + 0x60]
            //   8b4048               | mov                 eax, dword ptr [eax + 0x48]
            //   85c0                 | test                eax, eax
            //   7410                 | je                  0x12
            //   8b4c2460             | mov                 ecx, dword ptr [esp + 0x60]

        $sequence_2 = { e8???????? 8b86b4000000 85c0 7407 50 56 e8???????? }
            // n = 7, score = 100
            //   e8????????           |                     
            //   8b86b4000000         | mov                 eax, dword ptr [esi + 0xb4]
            //   85c0                 | test                eax, eax
            //   7407                 | je                  9
            //   50                   | push                eax
            //   56                   | push                esi
            //   e8????????           |                     

        $sequence_3 = { 85c0 7416 8907 8b4e18 680e000080 51 55 }
            // n = 7, score = 100
            //   85c0                 | test                eax, eax
            //   7416                 | je                  0x18
            //   8907                 | mov                 dword ptr [edi], eax
            //   8b4e18               | mov                 ecx, dword ptr [esi + 0x18]
            //   680e000080           | push                0x8000000e
            //   51                   | push                ecx
            //   55                   | push                ebp

        $sequence_4 = { 75ca 53 8b1d???????? 8d44240c 50 8b44240c 8d4c2468 }
            // n = 7, score = 100
            //   75ca                 | jne                 0xffffffcc
            //   53                   | push                ebx
            //   8b1d????????         |                     
            //   8d44240c             | lea                 eax, dword ptr [esp + 0xc]
            //   50                   | push                eax
            //   8b44240c             | mov                 eax, dword ptr [esp + 0xc]
            //   8d4c2468             | lea                 ecx, dword ptr [esp + 0x68]

        $sequence_5 = { ffd6 6a06 8d54245c 68???????? 52 ffd6 b808000000 }
            // n = 7, score = 100
            //   ffd6                 | call                esi
            //   6a06                 | push                6
            //   8d54245c             | lea                 edx, dword ptr [esp + 0x5c]
            //   68????????           |                     
            //   52                   | push                edx
            //   ffd6                 | call                esi
            //   b808000000           | mov                 eax, 8

        $sequence_6 = { 8910 8b4628 c7402401000000 8b4e28 8b5630 035104 8bce }
            // n = 7, score = 100
            //   8910                 | mov                 dword ptr [eax], edx
            //   8b4628               | mov                 eax, dword ptr [esi + 0x28]
            //   c7402401000000       | mov                 dword ptr [eax + 0x24], 1
            //   8b4e28               | mov                 ecx, dword ptr [esi + 0x28]
            //   8b5630               | mov                 edx, dword ptr [esi + 0x30]
            //   035104               | add                 edx, dword ptr [ecx + 4]
            //   8bce                 | mov                 ecx, esi

        $sequence_7 = { e8???????? 684b010000 6a00 8dbe50010000 8d9e54010000 8dae4c010000 56 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   684b010000           | push                0x14b
            //   6a00                 | push                0
            //   8dbe50010000         | lea                 edi, dword ptr [esi + 0x150]
            //   8d9e54010000         | lea                 ebx, dword ptr [esi + 0x154]
            //   8dae4c010000         | lea                 ebp, dword ptr [esi + 0x14c]
            //   56                   | push                esi

        $sequence_8 = { 68???????? 50 c744242808020000 c744242c01000000 ffd3 85c0 7542 }
            // n = 7, score = 100
            //   68????????           |                     
            //   50                   | push                eax
            //   c744242808020000     | mov                 dword ptr [esp + 0x28], 0x208
            //   c744242c01000000     | mov                 dword ptr [esp + 0x2c], 1
            //   ffd3                 | call                ebx
            //   85c0                 | test                eax, eax
            //   7542                 | jne                 0x44

        $sequence_9 = { 50 680e000080 56 ff15???????? 85c0 7506 ff15???????? }
            // n = 7, score = 100
            //   50                   | push                eax
            //   680e000080           | push                0x8000000e
            //   56                   | push                esi
            //   ff15????????         |                     
            //   85c0                 | test                eax, eax
            //   7506                 | jne                 8
            //   ff15????????         |                     

    condition:
        7 of them and filesize < 452608
}
Download all Yara Rules