代码审计实验一

 

1 PHPStudy安装过程

1.1  PHPStudy简介

phpStudy是一款简单实用的PHP调试环境的程序集成包,集成最新的Apache、PHP、MySQL、phpMyAdmin、ZendOptimizer,一次性安装,无须配置即可使用。总之学习PHP只需一个包。对学习PHP的新手来说,在Windows下环境配置是一件很困难的事,对老手来说也是一件烦琐的事,无论你是新手还是老手,该程序包都是一个不错的选择。

php环境集成包主要提供五大核心功能,包括:多环境切换,多版本切换,PHP多版本共存,一键配置FTP上传,支持多用户、多权限,它可以一键创建网站、FTP、数据库、SSL,实现安全管理,计划任务,文件管理,以及php5.2至php7.3的共存和切换,并为每个站点配置一个PHP版本。

1.2  PHPStudy安装

(1)解压缩phpStudy_64.zip,如图1.1所示。

1.1 解压缩phpStudy_64.zip

(2)双击phpstudy_x64_8.1.1.3.exe,开始安装,最终安装完成,如图1.2所示。

图1.2 安装完成

 

(3)安装完成后打开phpStudy_pro界面,如图1.3、1.4所示。

图1.3 phpStudy_pro界面1

 

图1.4 phpStudy_pro界面2

2 Pikachu靶场安装

2.1 Pikachu靶场简介

Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。这个平台使用PHP搭建,需要PHP环境和MYSQL数据库支持,我们可以使用PHPStudy集成环境。

2.2 Pikachu靶场安装

(1)创建网站,并打开根目录,如图2.1、2.2所示。

 

图2.1 创建网站

 

图2.2 打开根目录

  1. 将下载好的压缩包DVWA-master.rar解压到打开网站的根目录中并修改名称为DVWA,如图2.3所示。

 

图2.3 DVWA-master.rar解压缩

(3)打开phpstudy的面板将Apache跟MySQL启动,此处我使用的本地数据库,使用本地数据库需要改config.inc.php中数据库的名称,用户名,密码,如图2.4、2.5所示。

 

图2.4 启动

 

图2.5 配置本地数据库

(4)在浏览器中输入127.0.0.1/dvwa/即出现如下界面,如图2.6所示。

 

图2.6 进入靶场

  1. 配置环境完成后尝试连接数据库可得如下结果,如图2.7所示

 

图2.7 数据库连接成功

  1. 连接成功后,有部分危险函数不可使用,调整php.ini文件,将allow_url_include=Off改为allow_url_include=On,修改后,危险函数可以使用,如图2.8、2.9、2.10所示

图2.8 红色报错

 

图2.9 修改

图2.10 函数可用

  

3 RIPS安装

3.1 RIPS简介

在安全工作中,代码审计是很重要的一项技能。在面对大规模的代码时,使用自动化工具辅助人工漏洞挖掘,可以显著提高审计工作的效率。学会利用自动化代码审计工具,是每一个代码审计人员必备的能力。

RIPS是一个用PHP编写的源代码安全检测工具,它使用了静态分析技术,能够自动化地挖掘PHP源代码潜在的安全漏洞,测试人员可以直接容易的审阅分析结果,不用审阅整个程序代码。由于静态源代码分析的限制,一些漏洞预警是否真正存在,仍然需要测试人员定位到源代码进行进一步确认。

RIPS 能够检测 XSS, SQL 注入, 文件泄露, Header Injection 漏洞等等

3.2 RIPS安装

(1)将下载好的压缩包rips-中文汉化.rar解压到打开网站的根目录中并修改名称为rips,如图3.1所示。

 

图3.1 解压缩

  1. 浏览器输入127.0.0.1/rips/,即出现如下界面如图3.2所示。

 

图3.2 完成

3.3 RIPS扫描的过程和结果

(1)用RIPS对D:\phpstudy_pro\WWW\127.0.0.1\DVWA进行扫描,如下图3.3、3.4所示,为用该软件扫描的过程与结果。

图3.3 扫描完成

 

图3.4 文件漏洞

4 典型漏洞分析

4.1 文件包含漏洞分析

(1)运行RIPS,Path/file:是需要进行代码审计的文件的绝对路径,首先利用文件包含漏洞,选好之后,开始扫描,对文件包含的漏洞分析,然后用补丁修改,从而修补漏洞,在使用补丁之前需要将靶场设置成Low,如图4.1、4.2、4.3、4.4、4.5所示。

图4.1 设置为Low

 

图4.2 文件漏洞

 

图4.3 错误示例

 

图4.4 补丁修改

 

图4.5 漏洞修补完成

4.2 SQL注入漏洞分析

(1)通过对文件进行扫描,对SQL注入漏洞进行分析,并在靶场SQL Injection中输入id=1' OR '1=1,得到错误漏洞,然后再用补丁修补漏洞,如图4.6、4.7、4.8所示。

 

图4.6 SQL注入错误示例

 

图4.7 SQL补丁修改

 

图4.8 修改完成

4.3 命令执行漏洞分析

(1)通过对文件的扫描,对命令执行漏洞进行分析,如图4.9、4.10、4.11、4.12、4.13所示。

图4.9 错误示例1

 

图4.10 错误示例2

 

图4.11 源代码展示

图4.12 补丁修改

  

图4.13 修改完成结果

5 实验总结

通过本次实验,我掌握了PHPStudy、Pikachu、RIPS的安装过程以及RIPS扫描的过程和结果。

phpStudy是一款简单实用的PHP调试环境的程序集成包,集成最新的Apache、PHP、MySQL、phpMyAdmin、ZendOptimizer,一次性安装,无须配置即可使用。是非常方便、好用的PHP调试环境。

Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。这个平台使用PHP搭建,需要PHP环境和MYSQL数据库支持。

RIPS是一个用PHP编写的源代码安全检测工具,它使用了静态分析技术,能够自动化地挖掘PHP源代码潜在的安全漏洞,测试人员可以直接容易的审阅分析结果,不用审阅整个程序代码。由于静态源代码分析的限制,一些漏洞预警是否真正存在,仍然需要测试人员定位到源代码进行进一步确认。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值