FastAdmin 漏洞挖掘小技巧

Mr.Wu 857 18

FastAdmin 是一款基于 ThinkPHP 框架开发的主流 CMS

好几次遇到 FastAdmin 的网站,黑盒测试根本看不到几个页面,更别提寻找漏洞了,而通过下载源码发现了一个有趣的东西。

源码中有一个 api.html 的文件,这个文件记录了网站所有的 api 接口,如上图。

通过这个文件,我们可以快速简单的知道网站 GET or POST 方式与数据库交互的情况,如下图

这时候我们就可以检测下这些交互请求是否存在漏洞了,可以自己构造请求,也可以在线检测的时候 BURP 抓包

第二处

点开模块可以看到很多接口和参数,我们随便找一个测试

比如 api_v1/Common/getSysMsgDetail 我们改成 POST 方式丢 SQLMAP 里面跑跑看

成功注入

广告

打赏
发表评论 取消回复
表情 图片 链接 代码

  1. lntro
    lntro Lv 1

    必须得赞一个

  2. weij
    weij Lv 2

    请问我跟着你的方法去sqlmap,也不行,不知道如何下一步了,本地搭建学习的。

    • Mr.Wu
      Mr.Wu 站长

      @weij老哥,这个方法并不适用于官方最新版,只是在实际渗透过程中遇到这套 CMS 可以尝试下这 2 个方法而已。
      所以你本地搭建测试是不行的,如果官方站也能这样搞,那我早提交 通杀0day 了,
      我定义为技巧,而不是漏洞,就可想而知了,在实际渗透中,有些二开的 CMS 可以通过 这个技巧尝试寻找漏洞。
      并且你注意下,第二处技巧,是使用了一个接口导致的

      • weij
        weij Lv 2

        @Mr.Wu有遇到一个 就是第二步那个提交post包不知道是不是我的问题,我打开那个getSysMsgDetail然后代理burp抓包然后在sqlmap没有检测到(弱弱的表示不太会sql语句这方面,还在自学的小白一枚)

      • weij
        weij Lv 2

        @Mr.Wu可以请教您当时构造的语句吗?小白不会构造呢 谢谢 一直在实验

        • Mr.Wu
          Mr.Wu 站长

          @weij如果 getSysMsgDetail 存在的话,应该可以注入的
          你点击在线测试,BURP抓到的包是GET的,改成POST就行了

          • weij
            weij Lv 2

            @Mr.Wu我现在去试一下 不懂再请教您

          • weij
            weij Lv 2

            @Mr.Wu我在在线测试那里然后抓包是get请求 我改成了post请求再放在sqlmap中跑,还是没能跑出漏洞,可能是这个版本的原因吗?

            • Mr.Wu
              Mr.Wu 站长

              @weijsqlmap 截图,什么提示

              • weij
                weij Lv 2

                @Mr.Wu您有QQ吗我加您一下 这个评论发表不了图片一直加载

                • Mr.Wu
                  Mr.Wu 站长

                  @weij可以发图的,我测试没毛病,QQ不交流探讨技术

                • weij
                  weij Lv 2
                • Mr.Wu
                  Mr.Wu 站长

                  @weij

                  ?username=admin&id=22

                  删掉,复制到POST包最下面一行。。。基础知识。。[aru_2],然后sqlmap的参数这样写

                  --dbms=mysql --level 3 -v 3 -p username,id
                • weij
                  weij Lv 2

                  @Mr.Wu弱弱我学习了很多我又来了 [aru_61] 查看图片

                • Mr.Wu
                  Mr.Wu 站长

                  @weij[aru_6] 先去研究下POST包的结构吧,你包有问题

                • weij
                  weij Lv 2

                  @Mr.Wu好的

                • weij
                  weij Lv 2

                  @Mr.Wu 查看图片 真心要哭了点击下方的保存抓到的post包是这样的 然后我丢sqlmap相应改一下参数 还是不行

                • weij
                  weij Lv 2

                  @Mr.Wu在线测试抓到的GET我改成POST后sqlmap是这样提示的 然后在getSysMsgDetail这个地方也试过了 查看图片

分享
微信
微博
QQ