SYMBOLCOMMON_NAMEaka. SYNONYMS
win.badnews (Back to overview)

BadNews

Actor(s): QUILTED TIGER

VTCollection    

There is no description at this point.

References
2022-06-01 ⋅ Qianxin Threat Intelligence Center ⋅ Red Raindrop Team
Analysis of the attack activities of the Maha grass group using the documents of relevant government agencies in Pakistan as bait
BadNews QUILTED TIGER
2022-01-07 ⋅ Malwarebytes ⋅ Threat Intelligence Team
Patchwork APT caught in its own web
BadNews
2021-09-04 ⋅ cocomelonc ⋅ cocomelonc
AV engines evasion for C++ simple malware: part 1
4h_rat Azorult BADCALL BadNews BazarBackdoor Cardinal RAT
2021-04-27 ⋅ Kaspersky ⋅ GReAT
APT trends report Q1 2021
PAS Artra Downloader BadNews Bozok DILLJUICE Kazuar Quasar RAT SodaMaster
2020-03-04 ⋅ CrowdStrike ⋅ CrowdStrike
2020 CrowdStrike Global Threat Report
MESSAGETAP More_eggs 8.t Dropper Anchor BabyShark BadNews Clop Cobalt Strike CobInt Cobra Carbon System Cutwail DanaBot Dharma DoppelDridex DoppelPaymer Dridex Emotet FlawedAmmyy FriedEx Gandcrab Get2 IcedID ISFB KerrDown LightNeuron LockerGoga Maze MECHANICAL Necurs Nokki Outlook Backdoor Phobos Predator The Thief QakBot REvil RobinHood Ryuk SDBbot Skipper SmokeLoader TerraRecon TerraStealer TerraTV TinyLoader TrickBot Vidar Winnti ANTHROPOID SPIDER APT23 APT31 APT39 APT40 BlackTech BuhTrap Charming Kitten CLOCKWORK SPIDER DOPPEL SPIDER FIN7 Gamaredon Group GOBLIN PANDA MONTY SPIDER MUSTANG PANDA NARWHAL SPIDER NOCTURNAL SPIDER PINCHY SPIDER SALTY SPIDER SCULLY SPIDER SMOKY SPIDER Thrip VENOM SPIDER VICEROY TIGER
2019-10-22 ⋅ Lab52 ⋅ Jagaimo Kawaii
New PatchWork Spearphishing Attack
BadNews
2019-10-02 ⋅ Virus Bulletin ⋅ Daniel Lunghi, Jaromír Hořejší
Abusing third-party cloud services in targeted attacks
BadNews SLUB
2019-08-26 ⋅ Qianxin ⋅ Red Raindrop Team
APT-C-09 Reappeared as Conflict Intensified Between India and Pakistan
BadNews
2018-10-09 ⋅ Trend Micro ⋅ Cedric Pernet, Daniel Lunghi, Jaromír Hořejší
Untangling the Patchwork Espionage Group
BadNews SocksBot QUILTED TIGER
2018-03-07 ⋅ Palo Alto Networks Unit 42 ⋅ Brandon Levene, Brittany Ash, Josh Grunzweig
Patchwork Continues to Deliver BADNEWS to the Indian Subcontinent
BadNews
2017-04-05 ⋅ Fortinet ⋅ Artem Semenchenko, Jasper Manuel
In-Depth Look at New Variant of MONSOON APT Backdoor, Part 1
BadNews
2017-04-05 ⋅ Fortninet ⋅ Artem Semenchenko, Jasper Manuel
In-Depth Look at New Variant of MONSOON APT Backdoor, Part 2
BadNews
2016-08-08 ⋅ Forcepoint ⋅ Abel Toro, Andy Settle, Nicholas Griffin
MONSOON – ANALYSIS OF AN APT CAMPAIGN
BadNews TinyTyphon QUILTED TIGER
2016-08-08 ⋅ Forcepoint ⋅ Nicholas Griffin
MONSOON - Analysis Of An APT Campaign
BadNews TinyTyphon QUILTED TIGER
Yara Rules
[TLP:WHITE] win_badnews_auto (20260917 | Detects win.badnews.)
rule win_badnews_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.badnews."
        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.badnews"
        malpedia_rule_date = "20260916"
        malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6"
        malpedia_version = "20260917"
        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 = { ff15???????? 50 e8???????? 83c404 68???????? 6804010000 }
            // n = 6, score = 1000
            //   ff15????????         |                     
            //   50                   | push                eax
            //   e8????????           |                     
            //   83c404               | add                 esp, 4
            //   68????????           |                     
            //   6804010000           | push                0x104

        $sequence_1 = { c705????????33322e64 66c705????????6c6c c605????????00 ff15???????? }
            // n = 4, score = 900
            //   c705????????33322e64     |     
            //   66c705????????6c6c     |     
            //   c605????????00       |                     
            //   ff15????????         |                     

        $sequence_2 = { c78534ffffff47657457 c78538ffffff696e646f c7853cffffff77546578 66c78540ffffff7457 }
            // n = 4, score = 900
            //   c78534ffffff47657457     | mov    dword ptr [ebp - 0xcc], 0x57746547
            //   c78538ffffff696e646f     | mov    dword ptr [ebp - 0xc8], 0x6f646e69
            //   c7853cffffff77546578     | mov    dword ptr [ebp - 0xc4], 0x78655477
            //   66c78540ffffff7457     | mov    word ptr [ebp - 0xc0], 0x5774

        $sequence_3 = { 8945fc 53 56 57 8d8534ffffff }
            // n = 5, score = 900
            //   8945fc               | mov                 dword ptr [ebp - 4], eax
            //   53                   | push                ebx
            //   56                   | push                esi
            //   57                   | push                edi
            //   8d8534ffffff         | lea                 eax, [ebp - 0xcc]

        $sequence_4 = { 55 8bec 8b450c 3d01020000 }
            // n = 4, score = 900
            //   55                   | push                ebp
            //   8bec                 | mov                 ebp, esp
            //   8b450c               | mov                 eax, dword ptr [ebp + 0xc]
            //   3d01020000           | cmp                 eax, 0x201

        $sequence_5 = { 83e957 eb02 33c9 c0e004 02c1 3423 c0c003 }
            // n = 7, score = 900
            //   83e957               | sub                 ecx, 0x57
            //   eb02                 | jmp                 4
            //   33c9                 | xor                 ecx, ecx
            //   c0e004               | shl                 al, 4
            //   02c1                 | add                 al, cl
            //   3423                 | xor                 al, 0x23
            //   c0c003               | rol                 al, 3

        $sequence_6 = { 68???????? 6a1a 68???????? 57 }
            // n = 4, score = 800
            //   68????????           |                     
            //   6a1a                 | push                0x1a
            //   68????????           |                     
            //   57                   | push                edi

        $sequence_7 = { 6a00 d1f9 68???????? 03c9 }
            // n = 4, score = 800
            //   6a00                 | push                0
            //   d1f9                 | sar                 ecx, 1
            //   68????????           |                     
            //   03c9                 | add                 ecx, ecx

        $sequence_8 = { ffd3 85c0 7403 83c608 }
            // n = 4, score = 700
            //   ffd3                 | call                ebx
            //   85c0                 | test                eax, eax
            //   7403                 | je                  5
            //   83c608               | add                 esi, 8

        $sequence_9 = { ff15???????? 85c0 7405 83c004 eb02 }
            // n = 5, score = 700
            //   ff15????????         |                     
            //   85c0                 | test                eax, eax
            //   7405                 | je                  7
            //   83c004               | add                 eax, 4
            //   eb02                 | jmp                 4

        $sequence_10 = { 8bf0 56 ff15???????? 50 6a40 ff15???????? }
            // n = 6, score = 700
            //   8bf0                 | mov                 esi, eax
            //   56                   | push                esi
            //   ff15????????         |                     
            //   50                   | push                eax
            //   6a40                 | push                0x40
            //   ff15????????         |                     

        $sequence_11 = { 57 6a00 6880000000 6a04 6a00 6a01 6a04 }
            // n = 7, score = 700
            //   57                   | push                edi
            //   6a00                 | push                0
            //   6880000000           | push                0x80
            //   6a04                 | push                4
            //   6a00                 | push                0
            //   6a01                 | push                1
            //   6a04                 | push                4

        $sequence_12 = { 68???????? ff15???????? b8???????? 83c424 }
            // n = 4, score = 500
            //   68????????           |                     
            //   ff15????????         |                     
            //   b8????????           |                     
            //   83c424               | add                 esp, 0x24

        $sequence_13 = { a1???????? 8d95c4fdffff 8901 8bf2 a1???????? 894104 a1???????? }
            // n = 7, score = 100
            //   a1????????           |                     
            //   8d95c4fdffff         | lea                 edx, [ebp - 0x23c]
            //   8901                 | mov                 dword ptr [ecx], eax
            //   8bf2                 | mov                 esi, edx
            //   a1????????           |                     
            //   894104               | mov                 dword ptr [ecx + 4], eax
            //   a1????????           |                     

        $sequence_14 = { 800416fd 8bc6 42 8d7801 8d642400 }
            // n = 5, score = 100
            //   800416fd             | add                 byte ptr [esi + edx], 0xfd
            //   8bc6                 | mov                 eax, esi
            //   42                   | inc                 edx
            //   8d7801               | lea                 edi, [eax + 1]
            //   8d642400             | lea                 esp, [esp]

        $sequence_15 = { e8???????? a1???????? 8985f0feffff a1???????? 6a5c 8985f4feffff }
            // n = 6, score = 100
            //   e8????????           |                     
            //   a1????????           |                     
            //   8985f0feffff         | mov                 dword ptr [ebp - 0x110], eax
            //   a1????????           |                     
            //   6a5c                 | push                0x5c
            //   8985f4feffff         | mov                 dword ptr [ebp - 0x10c], eax

        $sequence_16 = { 56 e8???????? 83c40c 8934fd009e0110 eb07 56 e8???????? }
            // n = 7, score = 100
            //   56                   | push                esi
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   8934fd009e0110       | mov                 dword ptr [edi*8 + 0x10019e00], esi
            //   eb07                 | jmp                 9
            //   56                   | push                esi
            //   e8????????           |                     

        $sequence_17 = { c1e106 899528e5ffff 53 8b1495d0a70110 898d24e5ffff 8a5c1124 02db }
            // n = 7, score = 100
            //   c1e106               | shl                 ecx, 6
            //   899528e5ffff         | mov                 dword ptr [ebp - 0x1ad8], edx
            //   53                   | push                ebx
            //   8b1495d0a70110       | mov                 edx, dword ptr [edx*4 + 0x1001a7d0]
            //   898d24e5ffff         | mov                 dword ptr [ebp - 0x1adc], ecx
            //   8a5c1124             | mov                 bl, byte ptr [ecx + edx + 0x24]
            //   02db                 | add                 bl, bl

        $sequence_18 = { 8b148dd0a70110 8a441a04 a801 0f84fe060000 81feffffff7f 7617 e8???????? }
            // n = 7, score = 100
            //   8b148dd0a70110       | mov                 edx, dword ptr [ecx*4 + 0x1001a7d0]
            //   8a441a04             | mov                 al, byte ptr [edx + ebx + 4]
            //   a801                 | test                al, 1
            //   0f84fe060000         | je                  0x704
            //   81feffffff7f         | cmp                 esi, 0x7fffffff
            //   7617                 | jbe                 0x19
            //   e8????????           |                     

        $sequence_19 = { e8???????? c70016000000 e8???????? ebb4 c745e4f0b10110 }
            // n = 5, score = 100
            //   e8????????           |                     
            //   c70016000000         | mov                 dword ptr [eax], 0x16
            //   e8????????           |                     
            //   ebb4                 | jmp                 0xffffffb6
            //   c745e4f0b10110       | mov                 dword ptr [ebp - 0x1c], 0x1001b1f0

        $sequence_20 = { 50 f30f7f85c4fdffff e8???????? a1???????? }
            // n = 4, score = 100
            //   50                   | push                eax
            //   f30f7f85c4fdffff     | movdqu              xmmword ptr [ebp - 0x23c], xmm0
            //   e8????????           |                     
            //   a1????????           |                     

    condition:
        7 of them and filesize < 612352
}
[TLP:WHITE] win_badnews_w0   (20180301 | No description)
import "pe"

rule win_badnews_w0 {
    meta:
        author = "Florian Roth"
        reference = "http://blog.fortinet.com/2017/04/05/in-depth-look-at-new-variant-of-monsoon-apt-backdoor-part-2"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.badnews"
        malpedia_version = "20180301"
        malpedia_license = "CC BY-NC-SA 4.0"
        malpedia_sharing = "TLP:WHITE"
    strings:
        $x1 = "\\Microsoft\\Windows\\coco.exe" fullword ascii
        $x2 = ":\\System Volume Information\\config" fullword ascii
        $x3 = " cscript.[BACKSPA[PAGE DO[CAPS LO[PAGE UPTPX498.dTPX499.d" fullword wide

        $s1 = "\\Microsoft\\Templates\\msvcrt.dll" fullword ascii
        $s2 = "%04d/%02d/%02d %02d:%02d:%02d - {%s}" fullword wide
        $s3 = "wininet.dll    " fullword ascii
        $s4 = "DMCZ0001.dat" fullword ascii
        $s5 = "TZ0000001.dat" fullword ascii
        $s6 = "\\MUT.dat" fullword ascii
        $s7 = "ouemm/emm!!!!!!!!!!!!!" fullword ascii
    condition:
        ( 1 of ($x*) or 3 of them )
}
Download all Yara Rules