seclytics/python-client

GitHub: seclytics/python-client

这是一个用于访问AugurSecurity威胁情报API的Python客户端,支持IP查询、威胁预测和布隆过滤器高效过滤。

Stars: 3 | Forks: 1

# Augur Python 客户端 用于通过 Augur 的布隆过滤器进行 IP 修补的 Python 模块。 ## Python 2.7 安装说明 ``` pip install enum pybloomfiltermmap pip install git+git://github.com/seclytics/python-client.git --upgrade ``` ## Python 3.7 - 3.12 安装说明 ``` pip install cython pip install pybloomfiltermmap3 pip install git+https://github.com/seclytics/python-client.git --upgrade ``` ## 使用方法 ``` from seclytics import Seclytics access_token = 'YOUR_ACCESS_TOKEN' client = Seclytics(access_token=access_token) # 获取 IP 信息 report = client.ip('89.32.40.238') # 检查是否预测 if report.predicted: print(report.predictions) # 获取被动 DNS report.passive_dns ``` ## 带代理的使用方法 通过 requests 会话设置代理。 ``` import requests from seclytics import Seclytics session = requests.Session() session.proxies = {'http': 'http://proxy', 'https': 'https://proxy'} access_token = 'YOUR_ACCESS_TOKEN' client = Seclytics(access_token=access_token, session=session) ``` ## 布隆过滤器使用说明 **需要访问我们的布隆过滤器** ### 下载布隆过滤器 ``` export SECLYTICS_ACCESS_TOKEN="YOUR_ACCESS_TOKEN" python -m seclytics.scripts.download_db --access_token $SECLYTICS_ACCESS_TOKEN --name predicted-ips.bloom,malicious-ips.bloom,ip-threat-intel.bloom --data-dir /tmp ``` ### 命令行过滤器示例 从标准输入读取数据,并仅在匹配指定标志时进行输出。 ``` $ echo '139.47.251.221' | python -m seclytics.scripts.ip_filter --suspicious --malicious --predicted > 139.47.251.221 ``` 恶意但未被预测的 IP(无输出) ``` $ echo '91.195.240.82' | python -m seclytics.scripts.ip_filter --predicted > ``` 恶意 IP ``` $ echo '91.195.240.82' | python -m seclytics.scripts.ip_filter --malicious > 91.195.240.82 ``` 检查我们是否拥有该 IP 的任何信息 ``` $ echo '51.255.139.200' | python -m seclytics.scripts.ip_filter --suspicious --malicious --predicted > 51.255.139.200 ``` 在 IP 列表中查找被预测的 IP。 ``` $ curl http://www.malwaredomainlist.com/hostslist/ip.txt 2> /dev/null | python -m seclytics.scripts.ip_filter --predicted ``` 在查询 API 获取更多信息前,使用布隆过滤器进行过滤。 ``` export SECLYTICS_ACCESS_TOKEN="YOUR_ACCESS_TOKEN" curl http://www.malwaredomainlist.com/hostslist/ip.txt 2> /dev/null | python -m seclytics.scripts.ip_filter --predicted | python -m seclytics.scripts.ip_enrich --access_token $SECLYTICS_ACCESS_TOKEN | jq .context.source_urls ``` ## 待办事项 * 添加文档 * 添加更多测试 * 为多个 IOC 查询添加方法 * 用对象封装被动 DNS 结果 * 用对象封装预测结果 * 创建 CLI 应用程序
标签:API集成, Bloom Filter, IP分析, IP威胁情报, Python客户端, Python模块, 代理支持, 可观测性, 告警, 威胁情报, 安全威胁检测, 开发者工具, 数据库下载, 网络威胁情报, 网络安全, 被动DNS, 访问令牌认证, 过滤脚本, 逆向工具, 隐私保护, 预测分析