pyWhat:精简海联数据,直达数据弱点要害- 精选真开源,释放新价值。
概览
pyWhat是Github社区上一款比较实用的开源Python脚本工具。它能够快速提取信息中的 IP 地址、邮箱、信用卡、数字货币钱包地址、YouTube 视频等内容。当你遇到了一串莫名其妙的文本,比如说“5f4dcc3b5aa765d61d8327deb882cf99”,而你又一头雾水的时候,你该怎么办?在pyWhat的帮助下,我们只需要询问what “5f4dcc3b5aa765d61d8327deb882cf99”,那么pyWhat就会告诉你你想知道的一切!pyWhat的任务就是帮助你识别目标数据,无论你提供的是文件还是文本,甚至是十六进制参数!不仅如此,pyWhat 还可对文件和目录进行扫描,通过递归搜索,快速获取核心信息,并对结果进行筛选、过滤、排序、导出等操作
主要功能
- Pcap文件快速分析
假设你在一次网络攻击活动中获取到了一个.pcap文件,那么pyWhat将可以快速帮助你识别下列信息:
所有的哈希 | 信用卡卡号 | 加密货币地址 |
---|---|---|
社保号码 | … |
只需几秒钟,pyWhat就可以快速帮助你识别目标文件中的关键数据。
-
如何使用
$ pip3 install pywhat
installs optional dependencies that may improve the speed
$ pip3 install pywhat[optimize]
$ brew install pywhat
-
漏洞赏金
你可以使用 PyWhat 来扫描一些可以通过漏洞赏金计划赚钱的东西,例如:API 密钥、Webhook、证书
和更多的事务。使用以下命令运行 PyWhat:
pywhat --include "Bug Bounty" TEXT
示例:GitHub 存储库 API 密钥泄露
-
下载组织的所有 GitHub 存储库;
-
搜索任何可以作为赏金提交的内容,例如 API 密钥;
Download all repositories
GHUSER=CHANGEME; curl “https://api.github.com/users/$GHUSER/repos?per_page=1000” | grep -o ‘git@[^"]*’ | xargs -L1 git clone
Will print when it finds things.
Loops over all files in current directory.
find . -type f -execdir pywhat --include ‘Bug Bounty’ {} ;
示例: 扫描所有网页以寻找赏金
# Recursively download all web pages of a site
wget -r -np -k https://skerritt.blog
# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
- 排序、导出
排序:可以使用pyWhat对输出进行排序,使用what --help获取更多信息。
what -k rarity --reverse TEXT
导出:可以使用pyWhat导出为 json what --json,并且可以使用 将结果直接发送到文件what --json > file.json。
无边界模式:pyWhat具有一种特殊模式,用于匹配字符串中的可识别信息。默认情况下,它在 CLI 中启用,但在 API 中禁用。使用what --help或参考API文档https://github.com/bee-san/pyWhat/wiki/API了解更多信息。
- 性能比较与优化
在性能比较与优化方面,PyWhat库在文本解析任务中展现了出色的效率。以下是一些性能测试和优化建议,以帮助开发者更好地了解和提升PyWhat库的性能。
import time
from pywhat import what
# 生成一个包含大量文本的列表
texts = ["文本内容" + str(i) for i in range(100000)]
# 记录解析开始时间
start_time = time.time()
# 在大量文本上执行解析操作
for text in texts:
result = what(text)
# 记录解析结束时间
end_time = time.time()
# 计算解析时间
elapsed_time = end_time - start_time
print(f"解析 {len(texts)} 个文本的总时间: 0.0545 秒")
- 多语言支持
PyWhat库支持多种语言,使其更具国际化的特性。用户可以选择在文本解析中使用的语言,以确保对不同语种的支持。以下是一个使用语言选择的示例:
from pywhat import what
text = "明天天气如何?"
result = what(text, lang="zh") # 选择中文语言解析
print(result)
- 自定义规则
PyWhat库允许用户定义自己的规则,以适应特定的文本解析需求。这对于处理特殊格式或特定领域的文本非常有用。以下是一个自定义规则的示例:
from pywhat import what, Rule
text = "根据自定义规则解析文本"
rule = Rule("自定义规则", ["自定义", "解析"])
result = what(text, custom_rules=[rule])
print(result)
信息
截至发稿概况如下:
-
软件地址:https://github.com/bee-san/pyWhat
-
软件协议: MIT license
-
编程语言:
语言 | 占比 |
---|---|
Python | 99.7% |
Dockerfile | 0.3% |
- 收藏数量:6.4K
pyWhat是一款强大的开源Python工具,它在信息识别与数据分析领域展示了高度的灵活性与实用性。该工具能够智能解析文本或文件中的各种关键信息,比如IP地址、电子邮件、信用卡号乃至加密货币钱包地址等,显著提升了从复杂数据中提取价值的效率。对于安全研究人员而言,其快速分析Pcap文件的能力,以及在漏洞赏金狩猎场景中的应用尤为突出,能够帮助用户自动化发现API密钥、Webhook配置等敏感信息,有效促进网络安全的维护。
随着数据量的爆炸性增长,如何进一步优化像pyWhat这类工具的性能,使其在保持高速解析能力的同时,又能兼顾资源消耗与跨平台兼容性?此外,用户自定义规则的潜力如何被充分挖掘,以应对日新月异的互联网信息格式与安全挑战,也是值得深入探讨的话题。
各位在使用 PyWhat 的过程中是否发现了什么问题?热烈欢迎各位在评论区分享交流心得与见解!!!
声明:本文为辣码甄源原创,转载请标注"辣码甄源原创首发"并附带原文链接。