题目是真的。这几天刚接触关于CVE的审计和提交。只能说:牛逼的是真牛逼,水的是真水。
我接下来教你,怎么在10分钟里找到一个CVE的中危漏洞并且提交。然后你就可以去咸鱼接单了,一个一铂快
打开https://code-projects.org/ 随机找一个水项目
打开网站,点击语言,选择PHP。我们直接在首页随便找一个项目吧。
https://code-projects.org/farmacia-in-php-css-javascript-and-mysql-free-download/
先去vuldb数据库里找一下有没有人审过了。直接搜名字就好,像我这个就搜farmacia in php
发现已经被审烂了。。。。记住,一定一定找最新的项目审,最好是这两天刚发布的。找好之后千万不要忘记去查一下有没有人审过了!!!!
这里为了演示挖CVE是真的很容易,特意找一个老项目审。
点开,按Download Project下载代码
配置XMAPP环境
https://www.apachefriends.org/zh_cn/download.html
可以找一些网上的教程配一下环境,没多大要求,最好避免把apache的http和https端口配到8080和443
下载安装。接下来回到刚刚下载代码的地方,找到How to run
浅浅配一下环境,我们只需要注意第6和第7行(基本上每一个项目都是一样的,也有可能会是另一个板子,具体处理方法在后文)
6th Step: Create a database naming “farmica” and then click on the import tab 7th Step: Click on browse file and select “farmica.sql” file
点开xmapp-control.exe。启动Apache和MySQL。去phpadmin面板(点MySQL旁边的admin)记得是http://localhost:{你的apache端口}/phpadmin
点击新建数据库
根据提示,建一个名为farmica的。
接下来,点击导入,导入farmica.sql文件
好了,环境配完了,接下来把整个项目复制到XMAPP目录下的/htdocs里,你应该在本地的web服务上能看到项目正常启动。
接下来,将htdocs文件夹整个拖入VSCODE,开始审计(开始计时)
补充:如果没有说明要建的数据库是什么没名字的话(就是另一个how to run的板子),建一个跟.sql名字一样的就行
审计代码
这几步里最简单的一步(bushi)
首先,看看链接MYSQL的函数用的是connect_mysql还是connect_mysqli,分别对应了PHP5和PHP7,不要把版本搞错了。懒得配版本的可以就只挑一个版本的审计
如果你想要中危的话,xss是最有性价比的漏洞了。反射型现在可能不收,最好交一个存储型的。
先别急着审计,去web目录下把能输入的地方全试一遍<script>alert('xss')</script>
非常好,可以看到我们亲爱的项目已经出漏洞了!在所有能写的地方输入<script>alert('xss')</script>
刷新进入/adicionar-produto.php看到弹窗。
OK,接下来直接去github上写漏洞报告。浅浅看一下adicionar-produto.php,把存在注入的参数找到(花不了几分钟)。
水一下就好,没必要认真写。
给大家一个示例,我把这个漏洞写成报告:https://github.com/LamentXU123/cve/blob/main/xss.md
看个笑话就好。
注意:这个漏洞已经有人交过了!(如果这是一个全新的项目就已经结束了)我们还得接着看
后面又随便看了看。。。很难想象这是2024年的代码。。。
如此直白的SQL注入。。。有点不适应了。看了看没人交过。水了洞:https://github.com/LamentXU123/cve/blob/main/CVE-l.md
Vuldb提交漏洞
直接去Vuldb交,拿CVE编号快。
注册账号,去https://vuldb.com/?id.add提交漏洞
Vendor写Code-projects,Product写项目名称(比如我这个就写farmacia-in-php),Version没有就写1.0,Class按你的漏洞类型写(XSS就写Cross Site Scripting,SQL注入写SQL injection),Description随便写写(把Github上漏洞报告里的复制过来就行,注意一些特殊字符会被过滤掉就好)。
最后,最重要的是:Advisory贴上在github上的漏洞报告。一定记得把Request a CVE for this new vulnerability.
勾上,不然白搞了
几天之后编号就下来了,甚至是五位数的,难绷
https://www.cve.org/CVERecord?id=CVE-2024-12007
总结
CVE这种东西如果说是为了求职的话水几个真的不难,有些很老的项目又没几个人维护,简直就是CVE刷怪点。一个项目能爆好几个CVE。。。
以上两个漏洞从下载代码到提交报告每个都不超过十分钟。
哦对,还有你的漏洞被merge是正常的事情。像这种水漏洞很有可能与别人的相似被merge。。。没事,审CVE之前做好检查就行,一定一定做好检查!!!