使用PHP构建基于GitHub仓库的CVE漏洞POC查找工具

创建基于PHP的应用,通过CVE-ID从GitHub查找POC/漏洞利用程序

2021年4月9日,我创建了一个名为git-cve的基于命令行的Python3应用程序,它可以为指定的CVE-ID搜索漏洞利用程序/概念验证代码。但我对此并不满意,因为它不够稳定。我考虑创建一个类似但基于Web图形界面的工具。我看到了来自vulners的一篇帖子,他们发布了一个新的机器人,用于查找CVE-ID的POC/漏洞利用程序。

来源:Vulners Facebook 页面

所以我想,让我们也创建一个类似的东西,但仅使用PHP且无需任何成本。在创建我的Git-CVEPython脚本时,我发现了一个GitHub仓库,它自动收集CVE ID的POC/漏洞利用程序,有趣的是,这些收集到的信息都以JSON格式存储。这对我来说是一个加分项。

GitHub 仓库
GitHub - nomi-sec/PoC-in-GitHub

因此,我考虑将这个仓库用作我应用程序的API,因为它是开源的并且经常更新。那么,让我们开始编写代码。

通过点击“raw”,我们可以查看此页面的原始格式,URL看起来像这样:
https://raw.githubusercontent.com/nomi-sec/PoC-in-GitHub/master/2021/CVE-2021-21975.json

如果我更改/2021/CVE-2021-21975的值,它将显示指定CVE编号的结果。我们将保持其他内容不变,只将这两个值替换为用户输入,.json保持不变。我们不需要从用户那里获取两个输入,因为CVE-ID包含了其发布的年份。

所以,首先让我们使用PHP获取用户输入。我们可以通过HTML表单或使用参数来实现。在本例中,我将使用GET方法和URL参数来获取用户输入。

让我们创建一个名为cve_id的变量,并将用户输入存储在其中。它将通过名为id的URL参数获取用户输入,并将其存储到cve_id变量中。

示例
https://url.tld/cve.php?id=CVE-2020-1234

获取用户输入后,我们的第一步是清理用户输入,因为我们不希望其恶意负载在我们的网页中执行。我们不打算创建另一个变量来存储清理后的输入,而是直接使用htmlentities()从其源头清理用户输入。

现在,我们的首要任务是从这个CVE ID中分割出年份,因为我们需要年份来获取CVE-ID的POC/漏洞利用信息。PHP有一个名为explode的函数,它可以帮助使用特殊字符分隔文本。我们的CVE ID包含一个分隔cve-year-id的特殊字符。我们将使用(-)explode函数来分割年份。分割后,我们将得到3个值:0、1、2。0是CVE,1是YEAR,2是ID。现在让我们分割它。

在上面的代码中,首先我创建了一个名为spl的变量来存储所有分割后的数组,然后,我将数组编号1存储到名为year的变量中。现在我们的任务是调用那个GitHub仓库,以获取关于用户CVE ID的POC的所有信息。

请求URL将以JSON格式响应我们,现在我们必须处理JSON以提取关于CVE-ID的确切信息。PHP内置了一个名为json_decode的函数来解码JSON并提取信息,我们将使用这个json_decode来解码响应。首先让我们看看JSON包含什么。

它包含id、仓库名称、html_url、创建日期等。我们不需要所有这些。我们只提取这个POC的URL和作者名称。如果需要,您可以扩展它,但出于文章目的,我只提取作者的用户名和POC链接。首先,让我们使用PHP函数file_get_contentsjson_decode从URL获取JSON并提取其内容。让我们开始吧。

我们的框架现在已经准备好了,让我们将这些数据提取到我们的客户端页面。

输出将类似于下图。

源代码:
我的项目:https://git-cve.system00-sec.com/

感谢您的阅读。我的主要动机是从旧事物中创造新事物并使它们开源,我并不想取笑他人或在经济上伤害他人,本文只是解释了我如何创建我的项目,仅此而已。
CSD0tFqvECLokhw9aBeRquC3oGLY3Hy/RSVByZf07xCye9yyF8xWYomSZASCxc0RUXVhyF8CC+N/LJEJJQDkE7Uxyy4CIErqFLDnJWdLQ2l5HPWwQtn/yYw2C9E0EWMovZsPQAblzWomQn5u0fo3kA==
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1128406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI Agent构建全攻略:从技术原理到工程实践,程序员必备指南,建议收藏!

最近,一大波“AI Agent”项目在朋友圈刷屏,仿佛谁不搞个Agent,就像Web3时期谁不发币,GenAI时期谁不用GPT——都显得“落后于时代”。 从Auto-GPT到Devin,再到MCP、 A2A协作、多角色Agent编排,AI Agent已然成…

【必藏干货】大模型Agent技能包:Agent Skills标准化框架详解,让AI开发像搭积木一样简单

Agent Skills是一套给大模型Agent提供的标准化技能包,通过标准化文件夹结构打包完成任务所需的所有工具、脚本和资源,实现技能的快速开发、共享和执行。它采用多层次渐进式上下文加载机制,从元数据到执行按需加载,避免资源浪费。基…

Z-Image-Turbo学术研究引用格式规范建议

Z-Image-Turbo学术研究引用格式规范建议 引言:为何需要标准化的学术引用格式 随着生成式AI技术在图像创作领域的广泛应用,Z-Image-Turbo 作为阿里通义实验室推出的高效图像生成模型,已被广泛应用于艺术设计、创意辅助和科研实验等多个领域。…

军事仿真:MGeo在战场环境建模中的特殊应用

军事仿真:MGeo在战场环境建模中的特殊应用 在军事仿真和兵棋推演系统中,准确理解战场环境中的位置描述至关重要。传统民用地址模型无法处理"高地东南侧灌木丛"这类军事术语,而MGeo大模型的出现为这一领域带来了突破性解决方案。本文…

【必收藏】AI落地训练营:详解大模型核心技巧——上下文工程

核心观点: 大多数 AI 智能体的失败,其根源不在于模型本身的能力不足,而在于“上下文工程”(Context Engineering)的缺失。 “上下文工程”这个概念近期在 AI 大模型领域迅速升温,它究竟是新瓶装旧酒&#x…

AI团队协作:Z-Image-Turbo多用户权限管理方案

AI团队协作:Z-Image-Turbo多用户权限管理方案 引言:从单人创作到团队协同的AI图像生成挑战 随着AIGC技术在内容生产、设计创意和数字营销等领域的广泛应用,AI图像生成工具已不再局限于个人创作者使用。越来越多的企业和团队开始将如Z-Image…

独立开发者创业:基于Z-Image-Turbo构建订阅制服务

独立开发者创业:基于Z-Image-Turbo构建订阅制服务 从开源模型到商业化产品:科哥的AI图像创业之路 在AIGC浪潮席卷全球的今天,独立开发者正迎来前所未有的创业机遇。阿里通义实验室发布的Z-Image-Turbo WebUI图像快速生成模型,凭…

保险行业应用:基于MGeo的灾害地址快速核损系统

保险行业应用:基于MGeo的灾害地址快速核损系统实战指南 当台风等自然灾害过后,保险公司常常面临数万份包含模糊地址的理赔申请(如"XX路大树旁")。定损员需要工具快速关联官方标准地址数据库,这时基于MGeo大模…

Z-Image-Turbo编程代码艺术字体生成

Z-Image-Turbo编程代码艺术字体生成:基于阿里通义Z-Image-Turbo的二次开发实践 项目背景与技术定位 在AI图像生成领域,快速响应、高质量输出和易用性是开发者与创作者共同追求的核心目标。阿里通义实验室推出的 Z-Image-Turbo 模型凭借其高效的推理速度…

AI如何帮你理解SOFTMAX函数曲线?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Python程序,使用matplotlib绘制SOFTMAX函数曲线。要求:1. 支持输入不同的温度参数T值;2. 可视化3类别的概率分布变化;3. 添…

性能瓶颈突破:Z-Image-Turbo多卡并行训练可行性分析

性能瓶颈突破:Z-Image-Turbo多卡并行训练可行性分析 引言:从单卡推理到多卡训练的工程挑战 阿里通义实验室推出的 Z-Image-Turbo 是一款基于扩散模型(Diffusion Model)的高性能图像生成系统,其 WebUI 版本由开发者“科…

AI绘画延迟高?Z-Image-Turbo GPU算力适配优化实战

AI绘画延迟高?Z-Image-Turbo GPU算力适配优化实战 引言:AI图像生成的性能瓶颈与现实挑战 随着AIGC技术的普及,AI绘画已从实验室走向内容创作、广告设计、游戏资产生成等实际场景。阿里通义推出的 Z-Image-Turbo WebUI 作为一款基于Diffusion架…

开源项目可持续性:Z-Image-Turbo维护频率与路线图

开源项目可持续性:Z-Image-Turbo维护频率与路线图 项目背景与社区生态现状 在AI图像生成领域,模型的可用性与可维护性往往决定了其能否从“技术演示”走向“生产级工具”。阿里通义实验室发布的 Z-Image-Turbo 模型凭借其高效的单步推理能力&#xff0…

【收藏必看】大模型核心概念全解析:从小白到程序员的入门进阶指南

这篇文章会用最通俗的语言,帮你理解这些看似复杂的概念,可以让你更好地使用大模型。 1. Token(词元) 当你在浏览各大模型的官网或准备调用其 API 时,都会看到“价格”这一部分。大多数厂商的 API 定价是按 token 数量计…

Z-Image-Turbo科幻世界构建:太空站、外星地表生成

Z-Image-Turbo科幻世界构建:太空站、外星地表生成 引言:AI图像生成在科幻视觉创作中的新范式 随着生成式AI技术的飞速发展,科幻题材的视觉内容创作正迎来一场静默革命。传统依赖3D建模与专业美术团队的高成本流程,正在被如阿里通…

迟滞比较器在工业控制中的5个经典应用案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 设计一个用于工业温度控制的迟滞比较器系统,要求:1. 温度检测范围0-100C 2. 使用NTC热敏电阻 3. 迟滞宽度可调 4. 继电器输出 5. 带LED状态指示。请提供完整…

Z-Image-Turbo输出目录配置:自定义保存路径方法

Z-Image-Turbo输出目录配置:自定义保存路径方法 引言:为何需要自定义输出路径? 在使用阿里通义Z-Image-Turbo WebUI进行AI图像生成时,系统默认将所有生成的图片保存至项目根目录下的 ./outputs/ 文件夹中。对于个人开发者或轻量…

极客日报推荐:Z-Image-Turbo入选本周最值得关注开源项目

极客日报推荐:Z-Image-Turbo入选本周最值得关注开源项目 阿里通义Z-Image-Turbo WebUI图像快速生成模型 二次开发构建by科哥 “极简交互 极速生成”——这是 Z-Image-Turbo 在 AI 图像生成领域脱颖而出的核心标签。作为阿里通义实验室推出的高效文生图模型&#x…

JetBrains试用期重置终极指南:告别30天限制的完整解决方案

JetBrains试用期重置终极指南:告别30天限制的完整解决方案 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter 你是否正在使用JetBrains IDE进行开发,却面临试用期即将到期的困扰?i…

Z-Image-Turbo低多边形Low Poly风格表现

Z-Image-Turbo低多边形Low Poly风格表现 阿里通义Z-Image-Turbo WebUI图像快速生成模型 二次开发构建by科哥 运行截图 本文将深入解析如何利用阿里通义Z-Image-Turbo WebUI实现高质量的Low Poly(低多边形)艺术风格图像生成。通过参数调优、提示词工程与…