import socket import base64 port = 10005 filename = 'libcrypto.so.1.0.1e' sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.bind(('0.0.0.0', port)) sock.listen(5) while True: connection,address = sock.accept() try: content = 'hello' f = file(filename) content = base64.b64encode(f.read()) connection.sendall(content.strip()) connection.close() except socket.timeout: print 'time out' connection.close()
telnet 102.200.200.202 10005 |tee > temp.txt tail -n +4 temp.txt > temp2.txt base64 -d < temp2.txt |tee >libcrypto.so.1.0.1e.so
上面的ip地址是個例子瞎寫的。記得換成你本身的。python
只有telnet能與外界通訊,那麼能夠把文件轉成文本形式輸出到telnet端,再寫入文件 最後反解回二進制。 二進制轉文本用base64你們應該都知道就很少說了。服務器
https://my.oschina.net/u/218540/blog/761380socket