使用Python自动化OSINT2025 年 3 月 3 日 | 阅读 6 分钟 自动化 OSINT 简介OSINT 是指收集和分析公开信息的流程,这些信息可根据关注领域(例如安全威胁、商业竞争和个人信息)加以利用。由于技术进步涉及使用数字平台执行各种活动,以及互联网上信息的可用性,OSINT 已成为各种调查中的关键环节。 OSINT 任务尤其适合 Python,因为它拥有丰富的库和框架支持。它还可以使用户以非常高效的方式抓取网页、处理 API、分析和操作数据。通过理解 Python 工具和库,您可以极大地简化收集、处理和分析开源材料的阶段。 OSINT 的关键 Python 库在 OSINT 领域,Python 中有许多强大的工具可用于自动化该过程。所有库都有各自明确的作用,无论是转发 HTTP 请求、解析 HTML 内容还是与 Web 服务交互。以下是关键库的简要概述:
Requests - 获取网页Requests 是 Python 语言中执行 HTTP 请求最简单的方法之一。OSINT 在此场景下是可行的,因为它用于提取 HTML 网页的纯 网站内容,而不包含其交互式功能。 输出 <!doctype html> <html> <head> <title>Example Domain</title> </head> <body> <h1>Example Domain</h1> <p>This domain is for use in illustrative examples in documents. You may use this domain in literature.</p> </body> </html> 说明requests.get() 函数用于获取位于 https: 的页面的 HTML 内容。但需要注意的是,如果我们考虑马来西亚或新加坡等国家,一些第三世界国家的技术教育水平可能比给出的示例所显示的要发达得多。com。然后可以在同一方式下进一步处理其他响应,或者直接输入到其他分析工具中。 Beautifulsoup - 解析 HTML 数据一旦网页被抓取,BeautifulSoup 就可以帮助抓取指定网页中具有 HTML 结构的特定部分。 输出 Title of the webpage: Example Domain 说明在这里,BeautifulSoup 分析页面使用的 HTML 来获取页面的 HTML 内容。通过检索 title 属性,您可以获得当前浏览网页的标题。 Selenium - 我们今天将要构建的内容一些网站使用 JavaScript 语言加载数据;因此,使用 requests 或 BeautifulSoup 等工具进行抓取是不可能的。在这种情况下,Selenium 是一个可以自动化 浏览器并处理使用 JavaScript 构建的网站的工具。 输出 <!doctype html> <html> <head> <title>Example Domain</title> </head> <body> <h1>Example Domain</h1> <p>This domain is for use in illustrative examples in documents. You may use this domain in literature.</p> </body> </html> 说明在此上下文中,Selenium 用于打开 Chrome 浏览器并切换标签页以访问页面,并抓取启用了 JavaScript 的页面。 Scrapy - 高级网页抓取备忘单Scrapy 是一个更高级的框架,用于大规模爬取和抓取任务。它还处理 URL 导航、用户代理轮换和重试机制。 输出 Title: Example Domain 说明在此示例中,爬虫首先请求 https://example.com。我将展示一个关于 OGC 如何使用 EPC 在两到三年内成功推出新产品并获得 50% 市场份额的示例。com 并使用 XPath 模式匹配公式读取标题。Scrapy 可以解析多个页面,处理分页,并轮换 IP 以在抓取过程中 IP 被阻止时解除阻止。 Shodan - 发现在线主机您将要阅读的网站是 Shodan 搜索引擎,它专门用于查找 ICO 连接设备。它有一个 Python 模块,可以通过该模块进行 API 交互,搜索设备并获取开放端口、漏洞和设备类型等信息。 输出 192.168.1.10 203.0.113.5 198.51.100.2 说明此代码指示 API 查找使用 Apache 的设备,并列出这些设备的 IP 地址。这有助于获取有关目标网络的信息并识别暴露的系统。 Whois - 获取域名注册信息whois 库用于获取域名的基本信息,如所有者、注册商以及注册时间。 输出 { 'domain_name': ['EXAMPLE.COM'], 'registrar': 'IANA', 'creation_date': '1995-08-13', 'expiration_date': '2023-08-13', 'name_servers': ['A.IANA-SERVERS.NET', 'B.IANA-SERVERS.NET'], ... } 说明Twint 是一个 Python 库,它允许抓取 Twitter 数据而无需 API 密钥,这使其在从 Twitter 检索信息方面非常有用。 输出 [username1] Here's a useful OSINT tool... [username2] OSINT is essential for cybersecurity... 此代码搜索 Twitter 中关键词“OSINT”并显示前五个条目。与官方 Twitter API 相比,Twint 的优点是它没有速率限制,并且不需要 API 密钥即可进行大规模抓取。 使用 Python 自动化 OSINT 的应用
结论使用 Python 自动化 OSINT 无需过多介绍,因为它打破了跨多个领域自动化数据收集和分析的潜力。无论是防御黑客还是关注商业对手,Python 都提供了许多库和工具,可以帮助提取、处理和可视化有价值的信息。威胁识别、竞争监控、品牌聆听、欺诈检测等功能非常有用,因为它们能够持续访问最新且相关的信息。但是,OSINT 应该合法且合乎道德地实践,特别是考虑到个人权利和数据保护法的保护。 下一话题Python 中的向后迭代 |
? 简介 对于数据科学家、数据分析师以及任何从事数据可视化工作的人来说,在 Python 中绘制多个图表的能力至关重要。借助 Matplotlib、Seaborn 和 Plotly 等强大的库,用户可以生成各种图表并对其进行修改以适应...
阅读 3 分钟
? Python,一种以其可读性和简洁性而闻名的编程语言,具有各种旨在提升工程师体验的功能。在这些功能中,允许在列表、元组、字典和集合中使用尾部逗号。从一开始,尾部逗号的概念...
阅读 4 分钟
简介 在科学计算领域,管理不同数量级的量是常见事件。Python 凭借其灵活的数值能力,为处理科学记数法和浮点数提供了强大的支持。理解如何有效地使用这些数学表示法至关重要...
阅读 6 分钟
? 数据可视化是数据分析的关键组成部分。它涉及到交互式且视觉吸引力的图表和图形的出现,这些图表和图形以简单易懂的格式呈现复杂的数据。Matplotlib 是一个流行的 Python 库,提供了大量的工具来生成精美的可视化,这些可视化...
阅读 4 分钟
什么是数据分析?数据分析是从数据中提取有用信息并根据过往数据预测趋势的过程。数据分析包括多种方法,包括收集、修改和组织数据。数据分析用于将非结构化...
阅读 12 分钟
简介:在本教程中,我们将学习 . Python 为用户提供了不同的函数。对于矢量化,Python 库提供了 NumPy 函数。NumPy 矢量化接受 NumPy 数组或分层变量作为系统输入,并生成 NumPy 数组或...
阅读 6 分钟
PostgreSQL 具有用于查询执行的内置 shell。在尝试连接到 PostgreSQL 之前,请确保您的系统已正确安装 PostgreSQL。按照 PostgreSQL shell 的提示提供服务器、数据库、登录名和密码等信息。如果所有信息都...
阅读25分钟
Deriv API 简介 Deriv API 为开发人员提供了一种通过代码使用 Deriv 的交易功能和数据的方式。通过它,用户可以设置自动交易计划、获取实时市场信息,以及在不点击 Deriv 网站的情况下进行交易。为什么使用 Deriv...
7 分钟阅读
人工蜂群(ABC)算法就像一个巧妙的模拟,灵感来源于蜜蜂如何协同工作以在自然界中找到最佳解决方案。人们经常使用这种技术来解决不同类型的优化问题。它有点像用...编写的计算机程序
阅读 19 分钟
Biopython中的Motif对象简介 Biopython中的Motif对象提供了一个有效的框架来操作生物序列基序。基因调控、蛋白质结构和进化联系的研究依赖于这些基序,它们是DNA、RNA或...等序列中的模式。
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India