Some times we can't established communication between target's servers and your own computer, but it's possible to spawn a reverse shell on other server than have access to the target's servers. So the easiest way to spawn a reverse shell on the target and control it from your computer is a "proxy" reverse shell. We probably need to implements this "proxy" with multiple incoming protocols (to bypass the first firewall) and multiple outbound protocols (to bypass a second firewall), so the "proxy" should "translate" packets (the command in the content) from a protocol to another protocol.
Some times we can't established communication between target's servers and your own computer, but it's possible to spawn a reverse shell on other server than have access to the target's servers. So the easiest way to spawn a reverse shell on the target and control it from your computer is a "proxy" reverse shell. We probably need to implements this "proxy" with multiple incoming protocols (to bypass the first firewall) and multiple outbound protocols (to bypass a second firewall), so the "proxy" should "translate" packets (the command in the content) from a protocol to another protocol.