En este artículo de ISC en DVR compromiso el autor habla sobre el compromiso de un sistema integrado. En particular, el atacante ejecuta una serie de comandos echo
en el host remoto, y:
Este DVR no tiene la función "subir". No hay wget ni hay un cliente ftp o telnet.
...
El primer eco escribe 51 bytes en "/ var / run / rand0-btcminer-arm" y el segundo eco devuelve "hecho", lo que indica que el sistema está listo para el siguiente comando de eco.
A diferencia del nombre, "rand0-btcminer-arm" no es un minero de bitcoin. En su lugar, simplemente parece ser una versión de "wget".
No entiendo cómo podrían encajar los fundamentos básicos de wget en 51 bytes. El artículo contiene un volcado de paquetes, así que supongo que podría escribirlo en un archivo e intentar aplicar ingeniería inversa al binario, pero sospecho que hay algo más aquí.
¿Podría alguien ayudarme a entender cómo está sucediendo esto? ¿El "binario" realiza una llamada de biblioteca a las funcionalidades de la red?