首页
泷羽收录
文章合集
OSCP打靶
渗透学习
渗透工具
Search
1
【红队工具】VShell v4.9.3 高级版,国产C2工具下载及使用
5,081 阅读
2
2025最新渗透测试靶场推荐,新手必练的靶场推荐
4,485 阅读
3
src平台推荐,挖SRC必须知道的25个漏洞提交平台
3,252 阅读
4
几个常见的密码字典推荐
2,630 阅读
5
全网首发!HMV全套windows机器提权,域渗透教程,2w字超详细
2,566 阅读
AI
OSCP打靶
安全服务
建站
泷羽收录
渗透学习
渗透工具
登录
Search
标签搜索
Windows渗透
域渗透
HackMyVm
CyberStrikeLab靶场
内网渗透
渗透测试
网络安全
Web安全
cyberstrikelab
OSCP
SQL注入
WAF绕过
信息收集
渗透工具
靶场
靶场推荐
MSF
ThinkPHP漏洞
Vulfocus
vulnhub
泷羽Sec
累计撰写
185
篇文章
累计收到
3
条评论
首页
导航
泷羽收录
文章合集
OSCP打靶
渗透学习
渗透工具
搜索到
31
篇与
的结果
2026-06-25
Python很慢?这十个方法让你的代码执行速度提升3倍!
前言Python,作为一种动态类型的解释性语言,确实在执行速度上可能不如C这样的静态类型的编译语言。但是,通过一些技巧和策略,我们可以显著提升Python代码的性能。本文将探讨如何通过优化方法使Python代码运行得更快、更高效。我们将利用Python的timeit模块来精确测量代码的执行时间。注意:timeit模块在默认情况下会重复执行代码一百万次,以确保测量结果的准确性和稳定性def print_hi(name): print(f'Hi, {name}') if __name__ == '__main__': # 执行print_hi('PyCharm')方法 t = timeit.Timer(setup='from __main__ import print_hi', stmt='print_hi("PyCharm")') t.timeit()如何计算python脚本的运行时间呢?在time模块中time.perf_counter()提供了一个高精度的计时器,适合测量短时间,例如import time # 记录程序开始时间 start_time = time.perf_counter() # 你的代码逻辑 # ... # 记录程序结束时间 end_time = time.perf_counter() # 计算程序运行时间 run_time = end_time - start_time print(f"程序运行时间:{run_time} 秒")介绍一、I/O密集型操作I/O密集型操作(Input/Output Intensive Operation)指的是那些在执行过程中,大部分时间都花在等待输入/输出操作完成的程序或任务。I/O操作包括从磁盘读取数据、写入数据到磁盘、网络通信等。这些操作通常涉及到硬件设备,因此它们的执行速度受到硬件性能和I/O带宽的限制。他们的特点有:\1. 等待时间:程序在执行I/O操作时,往往需要等待数据从外部设备传输到内存,或从内存传输到外部设备,这会导致程序的执行被阻塞。\2. CPU利用效率:由于I/O操作的等待时间,CPU在这段时间内可能处于空闲状态,导致CPU利用率不高。\3. 性能瓶颈:I/O操作的速度往往成为程序性能的瓶颈,尤其是在数据量大或传输速度慢的情况下。例如,使用I/O密集型操作print,运行一百万次import time import timeit def print_hi(name): print(f'Hi, {name}') return if __name__ == '__main__': start_time = time.perf_counter() # 执行print_hi('PyCharm')方法 t = timeit.Timer(setup='from __main__ import print_hi', stmt='print_hi("PyCharm")') t.timeit() end_time = time.perf_counter() run_time = end_time - start_time print(f"程序运行时间:{run_time} 秒")运行结果为3s而不使用i/o操作执行一个方法,即调用这个print_hi('xxxx')空方法,不使用print(),程序明显快了不少def print_hi(name): # print(f'Hi, {name}') return如果代码中必要的时候,例如文件读写,可以使用如下方法提高效率异步I/O:使用异步编程模式例如asyncio,允许程序在等待I/O操作完成时继续执行其他任务,从而提高CPU利用率。缓冲:使用缓冲区暂存数据,减少I/O操作的频率。并行处理:并行执行多个I/O操作,以提高整体的数据处理速度。优化数据结构:选择合适的数据结构,减少数据的读取和写入次数。二、使用生成器生成列表、字典在Python 2.7及其后续版本中,引入了对列表、字典和集合生成器的改进,这些改进让数据结构的构建过程更加简明和高效。1、传统方法def fun1(): list=[] for i in range(100): list.append(i) if __name__ == '__main__': start_time = time.perf_counter() t = timeit.Timer(setup='from __main__ import fun1', stmt='fun1()') t.timeit() end_time = time.perf_counter() run_time = end_time - start_time print(f"程序运行时间:{run_time} 秒") # 输出结果:程序运行时间:3.3872999000595883 秒2、使用生成器优化代码注:为了方便以下内容皆省略主函数main的代码部分def fun1(): list=[ i for i in range(100)] # 程序运行时间:2.1053185999626294 秒从上述的推导式程序中可以看出,除了理解更简洁、更容易阅读之外,它也更快。这使得此方法成为生成列表和循环的首选方法。三、避免字符串连接,使用join()join() 是一个字符串方法,在Python中用于将序列中的元素连接(或拼接)成一个字符串,通常使用特定的分隔符。他的优点通常为:\1. 效率高:join() 是连接字符串的高效方法,尤其是当处理大量字符串时,它通常比使用 + 操作符或 % 格式化更快,在连接大量字符串时,join() 方法通常比逐个连接更节省内存。\2. 简洁性:join() 使得代码更加简洁,避免了重复的字符串连接操作。\3. 灵活性:可以指定任何字符串作为分隔符,这为字符串拼接提供了极大的灵活性。\4. 广泛的用途:不仅可以用于字符串,还可以用于列表、元组等序列类型,只要元素可以被转换成字符串。举例:def fun1(): obj=['hellow','my','name','is','xiaoyu','!'] s="" for i in obj: s+=i # 程序运行时间:0.3610708999913186 秒使用 join() 来实现字符串拼接:def fun1(): obj=['hellow','my','name','is','xiaoyu','!'] "".join(obj) # 程序运行时间:0.18804279994219542 秒使用join()将函数的执行时间从0.36秒减少到0.18秒。四、使用Map代替循环在多数场景中,传统的for循环可以被更为高效的map()函数所替代。map()*是一个Python内置的*高阶函数,它能够将指定的函数应用于各种可迭代的数据结构,如列表、元组或字符串。使用map()的主要优势在于,它提供了一种更为简洁且高效的数据处理方式,避免了编写显式的循环代码。传统的循环方式:def fun1(): arr=["hello", "my", "name", "is", "xiaoyu", "!"] new = [] for i in arr: new.append(i) # 程序运行时间:0.31288250000216067 秒使用map()函数做相同的功能:def fun2(x): return x def fun1(): arr=["hello", "my", "name", "is", "xiaoyu", "!"] map(fun2,arr) # 程序运行时间:0.18387670000083745 秒对比之后,使用map()节省了将近一半的时间,大大提升了运行效率五、选择正确的数据结构选用恰当的数据结构对提升Python代码的执行效率至关重要。各类数据结构都针对特定操作进行了优化,合理选择能够加速数据的检索、添加和移除过程,进而增强程序的整体运行效能。例如,判断容器内的元素的时候,字典的查找效率高于列表,但是是在大量数据的情况下,少量数据恰恰相反# 使用少量数据进行测试 def fun1(): arr=["hello", "my", "name", "is", "xiaoyu", "!"] 'hello' in arr 'my' in arr # 程序运行时间:0.11527379998005927 秒 def fun1(): arr={"hello", "my", "name", "is", "xiaoyu", "!"} 'hello' in arr 'my' in arr # 程序运行时间:0.17057139997836202 秒 # 使用 numpy 进行随机生成100个整数 def fun1(): nums = {i for i in np.random.randint(100, size=100)} 1 in nums # 程序运行时间:14.48330469999928 秒 def fun1(): nums = {i for i in np.random.randint(100, size=100)} 1 in nums # 程序运行时间:13.411826699972153 秒看到了在少量数据的情况下list执行效率是要大于dict的,但是在大量数据的情况下,dict的效率大于list如果有频繁的新增、删除操作,新增、删除的元素数量又很多时,list的效率不高。此时,应该考虑使用collections.deque。collections.deque是双端队列,同时具备栈和队列的特性,能够在两端进行 O(1)复杂度的插入和删除操作。collections.deque的使用from collections import deque def fun1(): arr=deque()# 创建一个空的deque for i in range(1000000): arr.append(i) # 程序运行时间:0.05507110000002058 秒 def fun1(): arr=[] for i in range(1000000): arr.append(i) # 程序运行时间:0.06128990000001977 秒list的查找操作也非常耗时。当需要在list频繁查找某些元素,或频繁有序访问这些元素时,可以使用bisect维护list对象有序并在其中进行二分查找,提升查找的效率。六、避免不必要的函数调用在Python编程中,优化函数调用次数对于提升代码效率至关重要。过多的函数调用不仅增加了开销,还可能消耗额外的内存,从而拖慢程序的运行速度。为了提升性能,我们应尽量减少不必要的函数调用,并尝试将多个操作合并成一个,以此来减少执行时间和资源消耗。这样的优化策略有助于我们编写更高效、更快速的代码。七、避免不必要的import虽然Python的import语句相对较快,但每个import都会涉及到查找模块、执行模块代码(如果还没有被执行过)、并将模块对象放入到当前命名空间中。这些操作都需要一定的时间和内存。当你不必要地导入模块时,就会增加这些开销。八、避免使用全局变量import math size=10000 def fun1(): for i in range(size): for j in range(size): z = math.sqrt(i) + math.sqrt(j) # 程序运行时间:15.630933800013736 许多程序员刚开始会用 Python 语言写一些简单的脚本,当编写脚本时,通常习惯了直接将其写为全局变量,例如上面的代码。但是,由于全局变量和局部变量实现方式不同,定义在全局范围内的代码运行速度会比定义在函数中的慢不少。通过将脚本语句放入到函数中,通常可带来 15% - 30% 的速度提升。import math def fun1(): size = 10000 for i in range(size): for j in range(size): z = math.sqrt(i) + math.sqrt(j) # 程序运行时间:14.933845699997619 秒九、避免模块和函数属性访问import math # 不推荐写法 def fun2(size: int): result = [] for i in range(size): result.append(math.sqrt(i)) return result def fun1(): size = 10000 for _ in range(size): result = fun2(size) # 程序运行时间:10.154493000009097 秒每次使用.(属性访问操作符时)会触发特定的方法,如__getattribute__()和__getattr__(),这些方法会进行字典操作,因此会带来额外的时间开销。通过from import语句,可以消除属性访问。from math import sqrt # 推荐写法:用到哪个模块就导哪个模块 def fun2(size: int): result = [] for i in range(size): result.append(sqrt(i)) return result def fun1(): size = 10000 for _ in range(size): result = fun2(size) # 程序运行时间:8.960758000030182 秒十、减少内层for循环的计算import math def fun1(): size = 10000 sqrt = math.sqrt for x in range(size): for y in range(size): z = sqrt(x) + sqrt(y) # sqrt() 求非负实数的平方根 # 程序运行时间:14.267008299939334 秒在上面代码中sqrt(x)位于内测for循环,每次循环都会重新计算,增加不必要的时间开销import math def fun1(): size = 10000 sqrt = math.sqrt for x in range(size): sqrt_x=sqrt(x) # 在外层for循环进行计算 for y in range(size): z = sqrt_x + sqrt(y) # 程序运行时间:8.499037600005977 秒总结通过这些方法,我们可以有效地提高Python代码的性能,使其在处理复杂任务时更加快速和高效。记住,性能优化是一个持续的过程,需要根据具体情况不断调整和改进,python运行速度的优化方法不限于以上方法,还有很多,如有大佬路过,请多指教。
2026年06月25日
0 阅读
0 评论
0 点赞
2026-05-21
fscan免杀研究,过国内所有最新版杀软以及Defender
先来看看效果,当前fscan版本为2.1.3,github最新版,上周发布的,https://github.com/shadow1ng/fscan/设置好代理$env:GO111MODULE = "on" $env:GOPROXY = " https://goproxy.cn ,direct" 编译方法go build -ldflags="-s -w" -trimpath main.go 1、特征替换比如改!windows下的批量替换脚本Get-ChildItem -Recurse -Filter "*.go" | ForEach-Object { (Get-Content $_.FullName) -replace 'github.com/shadow1ng/fscan', 'xiaoyu' | Set-Content $_.FullName } 2、版本信息在flag.go中能找到这些信息改!3、清除残留字符commin/logger.go改!core/port_scan.go 修改 PE 头信息core/web_scanner.go改!web/api/result.go改!4、修改banner同样的也在flag.go中改!5、打包go.mod最上面一行,否则会导致编译不成功,改!打包go build -ldflags="-s -w" -trimpath main.go 火绒被杀换一种打包方案$env:GOOS="windows"; $env:GOARCH="amd64"; go build -ldflags="-s -w" -trimpath main.go 还是被火绒杀掉无窗口模式go build -ldflags="-s -w -H=windowsgui" -trimpath -o fscan_no_window.exe main.go 还是被杀6、加壳被杀7、安装garblego env -w GOPROXY=https://goproxy.cn,direct go install mvdan.cc/garble@latest go mod tidy garble基础混淆,被杀go run mvdan.cc/garble@latest -seed=random build -ldflags="-s -w" -trimpath -o xiaoyu.exe . garble 加上 -literals 字符串加密,被杀go run mvdan.cc/garble@latest -seed=random -literals build -o xiaoyu.exe main.go 其他免杀操作,比如添加大量无用代码/虚假函数/变量/结构体,改变变量名称,添加大量虚假运算、控制流、数据结构,添加虚假网络操作,反调试技术,DLL等等我有一刀,可斩宇宙![狗头]360防护引擎全开本地执行一切正常没有被杀火绒内存查杀全开windows安全中心分析时间,2026年5月21日,晚18点55分注:因部分人原因,本文仅提供免杀学习参考,不分享任何文中所使用到的工具,小羽我技术菜,工具过不了卡巴,就别喷了
2026年05月21日
617 阅读
0 评论
0 点赞
2026-05-20
2026最新sqlmap汉化版下载,教学必用!
这次汉化的比较全面,免费分享,之前流传的中文版本已经非常老了,还系统不兼容,现在是26年最新版本的sqlmap,版本号1.10.5.3首先就是使用示例:我搜集了各种常用的sqlmap命令,直接举例在了帮助界面中,这样就能直接复制粘贴,再也不用手动敲命令了帮助界面汉化另外对于一些细节也做了汉化处理对于注入类型也进行了汉化处理,以及操作系统识别,web识别,后端识别等等表数据获取--os-shell获取方式,给我赚个转存费就行(无夸克链接,只有百度):通过网盘分享的文件:工具专区 链接: https://pan.baidu.com/s/1XUsii27r3js5InpM5cQziw 提取码: yqwy
2026年05月20日
280 阅读
0 评论
0 点赞
2026-05-13
WxProbe,一款自研的公众号敏感信息收集工具
此工具的灵感主要是源于一次北京红队金融项目,在公众号这块的信息收集实验比较少,要手动一个一个公众号去翻,特意写的一个工具这个工具主要用于敏感信息收集工具,专注于微信公众号文章批量获取与 AI 智能分析。通过 Token 登录微信公众平台,批量抓取指定公众号发布的历史文章,利用 DeepSeek AI 识别手机号、身份证、邮箱、车牌号、密码等等敏感信息。以及公司关联信息,公司注册资金、统一信用代码,法定代表人,股东结构等等信息(AI生成的结果,仅供参考)注:此工具仅限于学习使用,请勿用于非法用途,若造成不良后果,与工具开发者以及泷羽Sec安全团队无关,请自行承担相应的法律责任,此工具禁止逆向源码,一旦发现,后果自负,若需要源码二开,可以自行联系工具作者一次性买断(白菜价)。技术架构WxProbe ├── WeChatLogin # Token + Cookie 登录管理 ├── ArticleFetcher # 文章列表获取 + 正文抓取 │ ├── scrapling # headless 隐身模式(反爬) │ └── requests # 保底方案 ├── SensitiveInfoAnalyzer │ ├── _regex_scan # 正则快速扫描(手机号/身份证/邮箱/IP等) │ └── analyze_single # DeepSeek AI 深度分析 ├── WechatSogouAPI # 搜狗微信搜索(可选) └── ShadowEyeApp (UI) ├── 公众号情报 Tab ├── 搜狗搜索 Tab ├── URL 抓取 Tab └── 设置 / 导出 模块 功能 🔐 公众号情报 Token 一键登录 → 搜索公众号 → 多页爬取文章 → AI 分析 → 导出报告 🔎 搜狗搜索 无需登录,直接搜索微信文章 → 一键抓取 → AI 分析敏感信息 📎 URL 抓取 粘贴微信文章链接(单条/批量),抓取正文并用 AI 分析 🤖 AI 分析 DeepSeek + 正则双引擎:手机号、身份证、邮箱、IP、银行卡、密钥等 使用教程打开微信公众平台扫码登录登录后复制token复制cookie复制到这上面来输入之后就能登录成功尝试搜索公众号默认是五页选择自己要爬取的公众号后点击爬取刚开始是没有敏感信息的,需要手动点击是否进行AI分析,这里使用的AI是deepseek需要在系统设置,设置自己的apikey和模型名称AI分析完成后,可以在敏感信息中看到常见的手机号、身份证号、姓名、邮箱、地址、IP地址、银行卡号、网站链接/域名、密码/密钥/Token、组织机构代码、车牌号、QQ/微信号、其他PII等等,对于公司信息会调出企业工商信息,比如(注册资金,实缴资本、统一社会信用代码、注册时间等等工商信息,以及公司结构)这对于公众号这块的信息来讲是非常的有用的中国债卷尝试若您对结果不满意,可以导出功能,自行对数据进行分析2、信息收集部分,本工具已绕过搜狗反爬功能,您可以通过搜狗搜索引擎,搜索到微信公众号相关文章,利用AI进行敏感信息分析,和前面一样比如邮箱、手机号等等信息,为了稳定请不要频繁点击某一个功能,耐心等待工具执行(若数据量较大可能要等待10分钟、一小时),在此期间可以双击某一个文章查看文章详情注意:对于搜狗搜索引擎,单个文章建议请抓取一次即可,不要重复抓取,否则极易促发反爬。3、若您已经拥有了一定数量的公众号相关的URL,则可以使用URL抓取功能例如https://mp.weixin.qq.com/s/caVRY62bhNZm5Ri81oqUwghttps://mp.weixin.qq.com/s/hcB1m6tmDFfx9PA7rNzOZA注意:对于某号文章爬取,可全面绕过,稳定爬取,无需担心被拦截,但需要确保你已成功登录工具获取方式,扫描下方二维码加入freebuf知识大陆即可获取,仅需79此时加入,可获取香港免备案服务器一个月使用权(配置:4核心 4GB 硬盘:40G 带宽:10Mbps 峰值 流量:无流量限制),限时到2026年6月1日之前,之后不再赠送注:服务器使用需要实名,介意的话可以忽略赠品常见问题Q: 搜狗搜索提示验证码拦截? 先执行一次搜索(让系统建立 session),搜索成功后 session 会缓存,后续抓取会复用该 session。Q: URL 抓取按钮一直"分析中"? 需要先在「公众号情报」tab 完成登录。如果已登录仍卡住,可能是网络问题,2 分钟超时后会自动恢复。Q: 分析结果为空或"未获取到正文"? scrapling 可能被反爬。程序会自动降级到 requests + BeautifulSoup 保底方案。如仍失败,检查文章链接是否有效。
2026年05月13日
575 阅读
1 评论
1 点赞
2026-04-30
MemShellParty 一款主流 Web 中间件内存马生成工具
本工具仅供安全研究人员、网络管理员及相关技术人员进行授权的安全测试、漏洞评估和安全审计工作使用。使用本工具进行任何未经授权的网络攻击、渗透测试等行为均属违法,使用者需自行承担相应的法律责任。工具简介MemShellParty 是一款专注于主流 Web 中间件的内存马快速生成工具,专为安全研究人员与红队攻防人员打造,核心目标是简化内存马载荷的生成流程,大幅提升漏洞验证与攻防实战的工作效率。核心特性全场景强兼容全面覆盖攻防场景下各类常见中间件与框架,JDK 版本适配范围覆盖 JDK6 ~ JDK21,可满足不同环境下的实战使用需求。高可用稳保障针对所有支持的中间件与框架,搭建了完整的自动化测试矩阵,严格保障每一次生成的载荷都具备极高的可用性与稳定性,最大程度杜绝实战场景中的不确定性。极致轻量化优化基于深度优化的字节码生成策略,MemShellParty 实现了内存马体积的大幅缩减:常规内存马体积相较于 JMG 等传统工具缩小 30%,Agent 内存马通过 ASM 技术实现了 80% 的体积优化。无侵入无干扰生成的内存马对目标中间件的正常业务流量无任何影响,即使同时注入十几个不同类型的内存马,也不会干扰目标服务的正常运行。一键化傻瓜操作内置针对主流表达式注入、反序列化、SSTI 等常见漏洞的载荷生成能力,系统可自动适配 Java 模块限制绕过配置,动态生成最优攻击载荷,实现常规漏洞载荷的一键生成。高灵活自定义扩展原生支持哥斯拉、冰蝎、蚁剑、Suo5、NeoreGeorg 等主流工具的内存马生成;同时提供高度灵活的自定义内存马上传能力,可将任意定制化载荷融入 MemShellParty 的生成体系,打造贴合自身战术需求的攻击平台。快速使用使用前必读工具内置的探测马已完成服务类型的一一对应,探测所得的服务类型即为可生成对应内存马的服务类型(非中间件原生类型,例如 Apusic10 探测结果为 GlassFish,因其基于 GlassFish 进行二次开发)。在线尝鲜提示:仅限尝鲜使用,对于公网暴露的非官方服务请谨慎使用,避免生成的内存马被植入后门。 正式稳定版(master 分支):https://party.mem.mk ,每次 Release 都会自动部署最新镜像。 开发预览版(dev 分支):https://dev-party.mem.mk ,可抢先体验正在开发的新功能。 本地部署(推荐)适合内网环境或本地测试使用,可通过 Docker 一键启动服务,部署完成后访问 http://127.0.0.1:8080 即可使用。# Docker Hub 源,拉取最新镜像 docker run --pull=always --rm -it -d -p 8080:8080 --name memshell-party reajason/memshell-party:latest # Github Container Registry 源,拉取最新镜像 docker run --pull=always --rm -it -d -p 8080:8080 --name memshell-party ghcr.io/reajason/memshell-party:latest # 国内网络优化,南大 Github Container Registry 镜像源 docker run --pull=always --rm -it -d -p 8080:8080 --name memshell-party ghcr.nju.edu.cn/reajason/memshell-party:latest
2026年04月30日
627 阅读
0 评论
0 点赞
1
2
...
7