OpenWrt serial console is not protected by default by a password. As a principle, networking hardware should never be accessible and should be locked-down to avoid attacks.
After OpenWrt first boot, a password is defined by the user in order to protect SSH and LuCI HTTP(S) access. However access to the serial console is still available without password. Very few OpenWrt users are aware that their hardware is wide open, and you should be aware and find solutions.
uci set system.@system.ttylogin="1" uci commit system service system restart
You will need to recompile busybox because it does not include the line
CONFIG_BUSYBOX_CONFIG_LOGIN by default into
Run make menuconfig and enable “Base system → busybox → Login/Password Management Utilities → login”.
Save, exit and verify the
make package/busybox/compile make package/busybox/install
Get the busybox package:
Single user mode is available through GRUB and allows to boot without password. An attacker is then able to change root password and reboot.
A solution would be to lock-down OpenWrt booloader process, to make sure that booting in linux single user mode is impossible. This has to be discussed and this is not yet documented.
You should know that hardware attacks on serial console pins are always possible. However, it requires time and skills.