SYMBOLCOMMON_NAMEaka. SYNONYMS
win.chinotto (Back to overview)

Chinotto

Actor(s): APT37

VTCollection    

There is no description at this point.

References
2023-03-28ThreatMonSeyit Sigirci (@h3xecute), ThreatMon Malware Research Team
Chinotto Backdoor Technical Analysis of the APT Reaper’s Powerful Weapon
Chinotto
2023-03-21ZscalerNaveen Selvan, Sudeep Singh
The Unintentional Leak: A glimpse into the attack vectors of APT37
Chinotto
2023-03-16SekoiaThreat & Detection Research Team
Peeking at Reaper’s surveillance operations
Chinotto
2023-01-27ThorCERTDongwook Kim, Seulgi Lee, Taewoo Lee
TTPs #9: Analyzing Attack Strategies to Monitor Individuals' Daily Lives
Chinotto
2022-12-05KISAKrCERT
TTPs#9: Analyzing the attack strategy monitoring the daily life of individuals
Chinotto
2021-11-29KasperskyGReAT
ScarCruft surveilling North Korean defectors and human rights activists
Chinotto Chinotto PoorWeb
Yara Rules
[TLP:WHITE] win_chinotto_auto (20260504 | Detects win.chinotto.)
rule win_chinotto_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.chinotto."
        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.chinotto"
        malpedia_rule_date = "20260422"
        malpedia_hash = "a182e35da64e6d71cb55f125c4d4225196523f14"
        malpedia_version = "20260504"
        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 = { 33c0 5b c3 55 8bec 83ec20 53 }
            // n = 7, score = 100
            //   33c0                 | xor                 eax, eax
            //   5b                   | pop                 ebx
            //   c3                   | ret                 
            //   55                   | push                ebp
            //   8bec                 | mov                 ebp, esp
            //   83ec20               | sub                 esp, 0x20
            //   53                   | push                ebx

        $sequence_1 = { 397f44 75ed 8b4e4c 894e50 c7473cc04a4000 eb06 }
            // n = 6, score = 100
            //   397f44               | cmp                 dword ptr [edi + 0x44], edi
            //   75ed                 | jne                 0xffffffef
            //   8b4e4c               | mov                 ecx, dword ptr [esi + 0x4c]
            //   894e50               | mov                 dword ptr [esi + 0x50], ecx
            //   c7473cc04a4000       | mov                 dword ptr [edi + 0x3c], 0x404ac0
            //   eb06                 | jmp                 8

        $sequence_2 = { 66c740502d2d 8d95c4f5ffff 52 66c740522573 }
            // n = 4, score = 100
            //   66c740502d2d         | mov                 word ptr [eax + 0x50], 0x2d2d
            //   8d95c4f5ffff         | lea                 edx, [ebp - 0xa3c]
            //   52                   | push                edx
            //   66c740522573         | mov                 word ptr [eax + 0x52], 0x7325

        $sequence_3 = { 0f84f5feffff 8b95c0f6ffff 391a 7564 a1???????? 8b0d???????? 68fc000000 }
            // n = 7, score = 100
            //   0f84f5feffff         | je                  0xfffffefb
            //   8b95c0f6ffff         | mov                 edx, dword ptr [ebp - 0x940]
            //   391a                 | cmp                 dword ptr [edx], ebx
            //   7564                 | jne                 0x66
            //   a1????????           |                     
            //   8b0d????????         |                     
            //   68fc000000           | push                0xfc

        $sequence_4 = { 50 66c740047570 57 66c740063a00 e8???????? 8b4dfc 83c408 }
            // n = 7, score = 100
            //   50                   | push                eax
            //   66c740047570         | mov                 word ptr [eax + 4], 0x7075
            //   57                   | push                edi
            //   66c740063a00         | mov                 word ptr [eax + 6], 0x3a
            //   e8????????           |                     
            //   8b4dfc               | mov                 ecx, dword ptr [ebp - 4]
            //   83c408               | add                 esp, 8

        $sequence_5 = { 8d8648010000 50 895e40 e8???????? 83c40c 5f c684334801000000 }
            // n = 7, score = 100
            //   8d8648010000         | lea                 eax, [esi + 0x148]
            //   50                   | push                eax
            //   895e40               | mov                 dword ptr [esi + 0x40], ebx
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   5f                   | pop                 edi
            //   c684334801000000     | mov                 byte ptr [ebx + esi + 0x148], 0

        $sequence_6 = { 48 8d51fd 8817 66894701 8a13 d0ea 83c703 }
            // n = 7, score = 100
            //   48                   | dec                 eax
            //   8d51fd               | lea                 edx, [ecx - 3]
            //   8817                 | mov                 byte ptr [edi], dl
            //   66894701             | mov                 word ptr [edi + 1], ax
            //   8a13                 | mov                 dl, byte ptr [ebx]
            //   d0ea                 | shr                 dl, 1
            //   83c703               | add                 edi, 3

        $sequence_7 = { 89563c b801000000 5b 8be5 5d c3 }
            // n = 6, score = 100
            //   89563c               | mov                 dword ptr [esi + 0x3c], edx
            //   b801000000           | mov                 eax, 1
            //   5b                   | pop                 ebx
            //   8be5                 | mov                 esp, ebp
            //   5d                   | pop                 ebp
            //   c3                   | ret                 

        $sequence_8 = { 83c434 5f 5e 33cd 8d85e0fdfcff 5b }
            // n = 6, score = 100
            //   83c434               | add                 esp, 0x34
            //   5f                   | pop                 edi
            //   5e                   | pop                 esi
            //   33cd                 | xor                 ecx, ebp
            //   8d85e0fdfcff         | lea                 eax, [ebp - 0x30220]
            //   5b                   | pop                 ebx

        $sequence_9 = { ffd6 85c0 781b 33c0 8d9b00000000 8a8c05f0feffff 888c05d0f6ffff }
            // n = 7, score = 100
            //   ffd6                 | call                esi
            //   85c0                 | test                eax, eax
            //   781b                 | js                  0x1d
            //   33c0                 | xor                 eax, eax
            //   8d9b00000000         | lea                 ebx, [ebx]
            //   8a8c05f0feffff       | mov                 cl, byte ptr [ebp + eax - 0x110]
            //   888c05d0f6ffff       | mov                 byte ptr [ebp + eax - 0x930], cl

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