SYMBOLCOMMON_NAMEaka. SYNONYMS
win.hamweq (Back to overview)

Hamweq


There is no description at this point.

References
2020-07-13Youtube (OALabs)Sergei Frankoff, OALabs
@online{frankoff:20200713:how:fd519be, author = {Sergei Frankoff and OALabs}, title = {{How To Sinkhole A Botnet}}, date = {2020-07-13}, organization = {Youtube (OALabs)}, url = {https://www.youtube.com/watch?v=FAFuSO9oAl0}, language = {English}, urldate = {2020-07-16} } How To Sinkhole A Botnet
Hamweq
2020-05-31Nullteilerfrei BlogLars Wallenborn
@online{wallenborn:20200531:string:53b78a9, author = {Lars Wallenborn}, title = {{String Obfuscation in the Hamweq IRC-bot}}, date = {2020-05-31}, organization = {Nullteilerfrei Blog}, url = {https://blag.nullteilerfrei.de/2020/05/31/string-obfuscation-in-the-hamweq-irc-bot/}, language = {English}, urldate = {2020-06-05} } String Obfuscation in the Hamweq IRC-bot
Hamweq
2020-05-30Youtube (OALabs)Sergei Frankoff
@online{frankoff:20200530:irc:a711f6e, author = {Sergei Frankoff}, title = {{IRC Botnet Reverse Engineering Part 1 - Preparing Binary for Analysis in IDA PRO}}, date = {2020-05-30}, organization = {Youtube (OALabs)}, url = {https://www.youtube.com/watch?v=JPvcLLYR0tE}, language = {English}, urldate = {2020-06-05} } IRC Botnet Reverse Engineering Part 1 - Preparing Binary for Analysis in IDA PRO
Hamweq
2011-06-03CERT Polska / NASKCERT.PL
@techreport{certpl:20110603:botnet:fd65588, author = {CERT.PL}, title = {{Botnet Hamweq - analiza}}, date = {2011-06-03}, institution = {CERT Polska / NASK}, url = {https://www.cert.pl/wp-content/uploads/2011/06/201106_hamweq.pdf}, language = {Polish}, urldate = {2019-11-28} } Botnet Hamweq - analiza
Hamweq
Yara Rules
[TLP:WHITE] win_hamweq_auto (20230125 | Detects win.hamweq.)
rule win_hamweq_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-01-25"
        version = "1"
        description = "Detects win.hamweq."
        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.hamweq"
        malpedia_rule_date = "20230124"
        malpedia_hash = "2ee0eebba83dce3d019a90519f2f972c0fcf9686"
        malpedia_version = "20230125"
        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 = { ff7510 8945f4 8b06 66c745f00200 ff5068 }
            // n = 5, score = 200
            //   ff7510               | push                dword ptr [ebp + 0x10]
            //   8945f4               | mov                 dword ptr [ebp - 0xc], eax
            //   8b06                 | mov                 eax, dword ptr [esi]
            //   66c745f00200         | mov                 word ptr [ebp - 0x10], 2
            //   ff5068               | call                dword ptr [eax + 0x68]

        $sequence_1 = { 740d 3c32 7409 c745fc01000000 eb33 8d45e0 8b0e }
            // n = 7, score = 200
            //   740d                 | je                  0xf
            //   3c32                 | cmp                 al, 0x32
            //   7409                 | je                  0xb
            //   c745fc01000000       | mov                 dword ptr [ebp - 4], 1
            //   eb33                 | jmp                 0x35
            //   8d45e0               | lea                 eax, [ebp - 0x20]
            //   8b0e                 | mov                 ecx, dword ptr [esi]

        $sequence_2 = { ff5054 8b4514 ff30 e8???????? }
            // n = 4, score = 200
            //   ff5054               | call                dword ptr [eax + 0x54]
            //   8b4514               | mov                 eax, dword ptr [ebp + 0x14]
            //   ff30                 | push                dword ptr [eax]
            //   e8????????           |                     

        $sequence_3 = { 51 ff5038 b906030000 33c0 80bdfcfdffff5c }
            // n = 5, score = 200
            //   51                   | push                ecx
            //   ff5038               | call                dword ptr [eax + 0x38]
            //   b906030000           | mov                 ecx, 0x306
            //   33c0                 | xor                 eax, eax
            //   80bdfcfdffff5c       | cmp                 byte ptr [ebp - 0x204], 0x5c

        $sequence_4 = { bb80000000 57 8bcb 33c0 }
            // n = 4, score = 200
            //   bb80000000           | mov                 ebx, 0x80
            //   57                   | push                edi
            //   8bcb                 | mov                 ecx, ebx
            //   33c0                 | xor                 eax, eax

        $sequence_5 = { 751e 8b3e 8d859cfdffff 53 50 ff5744 50 }
            // n = 7, score = 200
            //   751e                 | jne                 0x20
            //   8b3e                 | mov                 edi, dword ptr [esi]
            //   8d859cfdffff         | lea                 eax, [ebp - 0x264]
            //   53                   | push                ebx
            //   50                   | push                eax
            //   ff5744               | call                dword ptr [edi + 0x44]
            //   50                   | push                eax

        $sequence_6 = { 76d2 80240700 5f 5e }
            // n = 4, score = 200
            //   76d2                 | jbe                 0xffffffd4
            //   80240700             | and                 byte ptr [edi + eax], 0
            //   5f                   | pop                 edi
            //   5e                   | pop                 esi

        $sequence_7 = { 7429 8b03 6a00 8d8c3500fcffff 6a01 51 }
            // n = 6, score = 200
            //   7429                 | je                  0x2b
            //   8b03                 | mov                 eax, dword ptr [ebx]
            //   6a00                 | push                0
            //   8d8c3500fcffff       | lea                 ecx, [ebp + esi - 0x400]
            //   6a01                 | push                1
            //   51                   | push                ecx

        $sequence_8 = { 897dc8 66c745cc0500 ffb120010000 ff908c000000 3bc3 0f84ec000000 }
            // n = 6, score = 200
            //   897dc8               | mov                 dword ptr [ebp - 0x38], edi
            //   66c745cc0500         | mov                 word ptr [ebp - 0x34], 5
            //   ffb120010000         | push                dword ptr [ecx + 0x120]
            //   ff908c000000         | call                dword ptr [eax + 0x8c]
            //   3bc3                 | cmp                 eax, ebx
            //   0f84ec000000         | je                  0xf2

        $sequence_9 = { ffd6 ff75f4 898538ffffff ffd0 85db 0f84c3060000 }
            // n = 6, score = 200
            //   ffd6                 | call                esi
            //   ff75f4               | push                dword ptr [ebp - 0xc]
            //   898538ffffff         | mov                 dword ptr [ebp - 0xc8], eax
            //   ffd0                 | call                eax
            //   85db                 | test                ebx, ebx
            //   0f84c3060000         | je                  0x6c9

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