SYMBOLCOMMON_NAMEaka. SYNONYMS
win.hamweq (Back to overview)

Hamweq


There is no description at this point.

References
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 (20200529 | autogenerated rule brought to you by yara-signator)
rule win_hamweq_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2020-05-30"
        version = "1"
        description = "autogenerated rule brought to you by yara-signator"
        tool = "yara-signator v0.4.0"
        tool_config = "callsandjumps;datarefs;binvalue"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.hamweq"
        malpedia_rule_date = "20200529"
        malpedia_hash = "92c362319514e5a6da26204961446caa3a8b32a8"
        malpedia_version = "20200529"
        malpedia_license = "CC BY-NC-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 / approach 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 = { 50 8b4608 ffb048010000 ff5744 50 }
            // n = 5, score = 200
            //   50                   | push                eax
            //   8b4608               | mov                 eax, dword ptr [esi + 8]
            //   ffb048010000         | push                dword ptr [eax + 0x148]
            //   ff5744               | call                dword ptr [edi + 0x44]
            //   50                   | push                eax

        $sequence_1 = { 51 8b4e08 53 57 53 53 }
            // n = 6, score = 200
            //   51                   | push                ecx
            //   8b4e08               | mov                 ecx, dword ptr [esi + 8]
            //   53                   | push                ebx
            //   57                   | push                edi
            //   53                   | push                ebx
            //   53                   | push                ebx

        $sequence_2 = { ff909c000000 8b4608 8b3e 68fc3a0000 ff7010 }
            // n = 5, score = 200
            //   ff909c000000         | call                dword ptr [eax + 0x9c]
            //   8b4608               | mov                 eax, dword ptr [esi + 8]
            //   8b3e                 | mov                 edi, dword ptr [esi]
            //   68fc3a0000           | push                0x3afc
            //   ff7010               | push                dword ptr [eax + 0x10]

        $sequence_3 = { 8bf8 85ff 897df8 0f84a7070000 ff35???????? }
            // n = 5, score = 200
            //   8bf8                 | mov                 edi, eax
            //   85ff                 | test                edi, edi
            //   897df8               | mov                 dword ptr [ebp - 8], edi
            //   0f84a7070000         | je                  0x7ad
            //   ff35????????         |                     

        $sequence_4 = { 68f0010000 68f8504000 50 53 }
            // n = 4, score = 200
            //   68f0010000           | push                0x1f0
            //   68f8504000           | push                0x4050f8
            //   50                   | push                eax
            //   53                   | push                ebx

        $sequence_5 = { 55 8bec 81ec64020000 53 33db }
            // n = 5, score = 200
            //   55                   | push                ebp
            //   8bec                 | mov                 ebp, esp
            //   81ec64020000         | sub                 esp, 0x264
            //   53                   | push                ebx
            //   33db                 | xor                 ebx, ebx

        $sequence_6 = { 6a02 51 ff5038 8b45fc 5f 5e 5b }
            // n = 7, score = 200
            //   6a02                 | push                2
            //   51                   | push                ecx
            //   ff5038               | call                dword ptr [eax + 0x38]
            //   8b45fc               | mov                 eax, dword ptr [ebp - 4]
            //   5f                   | pop                 edi
            //   5e                   | pop                 esi
            //   5b                   | pop                 ebx

        $sequence_7 = { bf3f000f00 8b4e08 8b06 889dfcfeffff }
            // n = 4, score = 200
            //   bf3f000f00           | mov                 edi, 0xf003f
            //   8b4e08               | mov                 ecx, dword ptr [esi + 8]
            //   8b06                 | mov                 eax, dword ptr [esi]
            //   889dfcfeffff         | mov                 byte ptr [ebp - 0x104], bl

        $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 = { 56 e8???????? 8bf8 59 83fffd 59 7509 }
            // n = 7, score = 200
            //   56                   | push                esi
            //   e8????????           |                     
            //   8bf8                 | mov                 edi, eax
            //   59                   | pop                 ecx
            //   83fffd               | cmp                 edi, -3
            //   59                   | pop                 ecx
            //   7509                 | jne                 0xb

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