• 熊海CMS_1.0 代码审计


    0x01 使用seay源代码审计系统进行审计

     扫描到了很多个可疑漏洞,不过工具都有一定的误报,下面我们就逐个进行验证

    0x02 /index.php文件包含漏洞 

     查看源代码,我们发现程序通过GET方法接收文件名,并且只做了一个addslashes(返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线()与 NUL(NULL 字符)。),然后直接放在了include函数里面了,相当于引用 files/xxxxx.php 文件,这里如果我们通过其他方法在根目录上传一个脚本就可以直接包含:

     /admin/index.php中的文件包含也是类似

     0x03 /admin/files/login.php SQL注入漏洞

    查看login.php的源代码

     直接通过POST方式接收user、password,并且没有做任何过滤。然后先查询用户名,如果用户名存在,就将将POST得到的密码进行md5,然后和数据库中对应的密码进行比较。这样的话,虽然我们可以通过万能密码admin' or '1'='1对用户名绕过,但是密码没有方法绕过,万能密码的方法就不可行了。 不过由于没有做任何过滤,我们还是可以执行SQL语句的

    比如:

    admin' or sleep(10) #

    这样我们就可以进行布尔盲注

    经过测试,发现也存在报错注入

    admin' or updatexml(1,concat(0x7e,(select @@version),0x7e),1); #

    0x04 /admin/files/editcolumn.php、editlink.php、editsoft.php...... SQL注入漏洞

    都是类似的漏洞。POST方式接收了参数之后,没有进行然后过滤,然后直接执行了UPDATE/DELETE/INSERT语句,我们可以直接进行报错注入

    payload:

    ' or updatexml(1,concat(0x7e,(select @@version),0x7e),1) or '

     0x05 /inc/checklogin.php 越权漏洞

    inc目录下的都是配置文件,很重要,要每一个文件都仔细查看。

    checklogin.php

     接收cookie中user的内容,如果user字段为空,则跳到登录页面

    这样的话,我们打开一个后台页面,抓包,设置cookie中的user字段为admin会怎么样呢?

     发现我们直接进入了后台,并且只要保证每次cookie中user参数都有值就可以访问后台的所有内容,因此存在垂直越权漏洞。

    0x06 CSRF漏洞

    这里的内容管理中有一个删除文章的功能,没有做csrf token、验证码等防护。

    点击后抓包得到url

    http://192.168.219.132/admin/?r=wzlist&delete=15

     退出管理员账号,根据之前的越权漏洞分析,这里应该会转跳到login的界面,试一下,果然如此。

    然后重新登陆管理员后点击该url,真的删除了该文章

     

    0x07 /files/contact.php 存储型XSS漏洞

     前台留言板没有进行XSS过滤,后台管理界面也没有进行过滤,因此产生了存储型XSS,而且有针对性的攻击管理员,属于比较危险的一类XSS了

  • 相关阅读:
    mysql router读写分离
    Hbase单节点Standalone & Pseudo Distribute
    WAS web.xml修改不生效
    Hadoop单节点集群
    网易云音乐 linux版
    OpenLDAP GUI管理工具
    Memcached源码安装配置
    CentOS7 /var/log/messages Starting Session x of user root
    linux下安装jdk(转载)
    ubuntu安装rpm格式文件方法(转载)
  • 原文地址:https://www.cnblogs.com/vege/p/13453283.html
Copyright © 2020-2023  润新知