PHP代码审计


测试环境:
phpStudy,phpStorm,subline

一 . 审计方法

  • 定位敏感关键字,回溯参数传递过程
    可以使用Seay源代码审计工具和RIPS工具,将要审计的路径输入后,可实现自动化扫描,结果返回一些可能存在漏洞。

  • 定位敏感功能点,通读功能点代码
    黑盒测试+白盒测试

  • 全文代码通读审计
    入口点:index.php
    通过xdebug跟踪调试

二 . 代码审计——BlueCMS1.6

打开phpStudy5.2,新建数据库bluecms,安装bluecms
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
这样就装好了,打开数据库看一下
在这里插入图片描述
打开bluecms,注册账户
在这里插入图片描述
打开Seay工具,新建项目,找到www.c.com路径,点击确定
在这里插入图片描述
在功能栏点”自动审计“->“开始”,审计出很多漏洞。

(1)SQL注入漏洞

ad_js.php里可以右键看到源代码,发现id没有进行任何过滤
在这里插入图片描述
在bluecms上传广告,在存在SQL注入漏洞链接下验证sql注入漏洞
sqlmap工具也可验证该漏洞,拿到数据库、表、列,拿到管理员账号密码

(2)common.fun.php的SQL注入漏洞

打开phpstorm,定位到www.c.com,找到commom.fun.php,审计源代码
在这里插入图片描述
ctrl+shift+f打开窗口,可以搜索变量的调用位置,查找getip调用,发现getip没有经过任何过滤
在这里插入图片描述
打开bluecms后台,添加一个新闻,内容随便填
在这里插入图片描述
回到前台,普通用户登录,设置代理,打开Bursuite,评论上面这条新闻,开始抓包,将欺骗ip:8.8.8.8放入数据包头部
在这里插入图片描述
点击Go,发现ip已经从127.0.0.1变成我们设置的欺骗ip
在这里插入图片描述

(3)文件包含漏洞

在这里插入图片描述

发现pay变量没有进行过滤,存在文件包含
在这里插入图片描述
创建一个1.php,内容为
在这里插入图片描述
用burpsuite抓包,将pay后加上下图所示,发现php显示出来
在这里插入图片描述
这就可以将一些php木马写入

(4)一般注册会出现xss漏洞

看源代码发现对邮箱没有过滤
在这里插入图片描述

(5)修改个人资料时也会出现xss漏洞

用BurpSuit抓包,看资料修改如何实现,审计分析后发现email和msn都可以xss
在这里插入图片描述
在有漏洞的地方加入,运行发现会弹出提示框,提示1.
在这里插入图片描述

三 . 代码审计实战

1. 熊海CMS代码审计

新建数据库
在这里插入图片描述
在www.c.com/install下输入信息进行安装
在这里插入图片描述
在这里插入图片描述
Seay里新建项目,定位到www.c.com路径,开始审计
在这里插入图片描述

(1)文件包含漏洞

在这里插入图片描述
在r变量后加入很多点
在这里插入图片描述

(2)cookies欺骗越权漏洞

在这里插入图片描述
发现只要把r的值换成index,并创建一个cookie,改一下时间,便可绕过后台登录。

(3)login.php绕过登录

如果没办法绕过后台登陆,可以使用报错注入,将下面两句注入语句分别放入登录的用户账号栏,进行登录,页面会提示密码不正确,出现报错
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
将两个md5拼接在一起,形成30位的密码,解密后得到管理员密码
在这里插入图片描述

2. PbootCMS代码审计(MVC架构)

安装PbootCMS
新建pbootcms数据库,在数据库中运行下图路径下的.sql文件,就可以将数据导入数据库
在这里插入图片描述
修改database.php的配置
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值