简介最近在逛码云的时候发现了permeat靶场系统。感觉界面和业务场景设计还不错。所以过来分享一下。同时,我也会分享一些自己的漏洞利用思路。虽然本文只是简单介绍了其中的三种漏洞类型,但我也想抛砖引玉,为网络安全新手提供一些挖掘思路。下载地址:GitHub地址:https://github.com/78778443/permeate国内地址:https://gitee。com/songboy/permeate一文主要介绍SQL注入挖掘、xss跨站挖掘、csrf漏洞。漏洞频繁出现。我心目中的Web安全漏洞分为三类:编码漏洞、业务逻辑漏洞、运行环境漏洞。之前有给别人做代码审计的习惯。从代码上分析问题。为什么要这样做,因为你认为如果代码跑不起来,很多漏洞单从代码层面是发现不了的。当代码可以运行时,不仅可以验证问题,还可以从系统的业务功能上进行验证。了解更多问题。例如,许多网站都提供站内搜索功能。搜索时,他们通常会返回用户在页面上搜索的关键字。这里很可能存在反射型XSS漏洞。另外,很多网站都有用户系统,在修改个人资料时存在越权的可能。比如修改个人数据时,检查是否提交了uid参数。如果是,修改uid值,看看是否修改了其他人的信息。这些实际上需要运行才能找出问题所在。笔者比较简单的是在windows系统中通过wampser搭建。这里简单介绍一下安装方法:使用git把代码拉下来配置一个单独的虚拟主机目录(不要放在二级目录下,好像有问题)新建一个数据库,导入sql文件,文件位置/doc/bbs_cate.sql在/config/dbconfig.php文件中修改数据库账号密码信息经过上面的安装步骤后,应该可以看到如下界面。有defaultplate和defaultpartition,说明连接数据库成功。现在我们开始挖掘其中的漏洞。在项目介绍中可以看到存在SQL注入、XSS和CSRF问题,但是并没有告知漏洞的位置,所以需要先分析每个漏洞对应的场景。先说SQL注入挖矿。1.SQL注入挖掘理解SQL注意事项进入过知识点的人应该都能想到,sql注入是由于攻击者可以控制sql语句中的参数造成的。然后我们先找到一个需要传递参数的地址。可以看到刚才首页有个默认版块,然后点击默认版块。点击之后,上面的URL地址变成了http://permeate.localhost/home/index.php?m=tiezi&a=index&bk=5可以看到URL中有三个参数,但是根据经验一般来说,第一个m和a这两个参数有点像routing,所以暂时用exclusion的方法把这两个排除掉,最后一个参数bk是一个数字,好像是板子的ID,所以我们可以重点关注一下,先记住测试前的页面是什么样子的?现在让我们快速手动测试它。如何测试?可以在bk=5后面加一个单引号,或者加一个%27得到URL地址如下http://permeate.localhost/home/index.php?m=tiezi&a=index&bk=5'这时候,查看页面运行情况,发现帖子列表中的帖子已经不存在了。这时候我们可以初步得出结论,这个地方可能存在SQL注入问题,但是还不确定,要确定这个地方是否存在注入问题,我们深入验证一下,可以使用参数value5'or'1'='1进行验证,得到URL地址如下http://permeate.localhost/home/index.php?m=tiezi&a=index&bk=5'or'1'='1后访问,发现页面又变了。这时候我们就可以确定这个地方存在SQL注入问题,如下我们可以通过sqlmap查看数据库中存在哪些数据库信息。sqlmap命令如下:sqlmap-u"http://permeate.localhost/home/index.php?m=tiezi&a=index&bk=5"--dbsthroughsqlmap从反馈结果可以看出,确实有这个地方的注入问题。接下来我们来寻找XSS漏洞漏洞2.XSS跨站导致XSS的主要原因我们知道页面会输出参数,所以在寻找XSS漏洞的时候,我们先看看站点的功能;在首页和帖子列表页面的图片中,我们可以大致看到有搜索功能、发帖、回复帖子等功能。这些地方会使用接收到的参数作为内容展示显示出来,这样我们就可以一一测试了。让我们从最简单的搜索页面开始。导航栏中有一个搜索框。我先在搜索框里输入test,url地址如下http://permeate.localhost/home/search.php?keywords=test从url地址可以看出搜索关键词会通过keywords,传过去后会显示在页面内容中,如下图,现在分析显示的是html元素,在关键字testNode的父级,可以看到是一个div,script标签写在div中会被执行,所以可以直接使用下面的payloadhttp://permeate.localhost/home/search.php?keywords=test来测试,访问这个链接通过浏览器,可以看到弹出了123确认框,但是xss不限于script标签可以执行,还可以配合img标签的onerror属性执行,可以构造如下payloadhttp://permeate.localhost/home/search.php?keywords=test
