PHP代码审计--------思路以及流程

文章讨论了如何找到并修复程序漏洞,特别是关注逻辑错误和脚本安全问题。提到了MVC架构在Web应用中的重要性,并列举了一些常见的PHP框架如ThinkPHP和Yii。文章强调了了解程序架构、功能模块以及通过全局过滤和模块文件来审计的重要性,同时指出了查找可控变量和敏感关键字在挖掘漏洞过程中的作用。此外,还涵盖了程序安装、文件上传等功能点的安全审计。

找到,并修复开发程序的漏洞   ,,  找到一些逻辑结构的错误的程序漏洞,

脚本安全问题,是  函数  和 变量 的问题

        变量--------可以直接或间接的接收用户不安全的输入

 

要先了解一下,MVC架构

      
        MVC是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式。MVC模式同时提供了对 HTML、CSS和JavaScript 的完全控制

常见的PHP框架

        ThinkPHP        易于上手学习成本低、框架的兼容性较强

        Yaf :  世界上最快的PHP框架????

        Kohana    文件系统和结构非常清晰

        Yii      由国人开发的重量级的框架,这个框架把代码的可重用性发挥到极致。

多看开发文档!!!!!

我们在拿到一个程序的时候,先看他是一个什么样的架构,再看他的功能模块

获取请求(POST、GET)---> 全局过滤 ---->  模块文件 ---->   C 函数内容   ---->   M函数内容 ---> V显示        

这就是CMV

通读原文

        不是从index一个一个看,是看一些代码的大体的结构

网站目录结构        

主目录        模块目录        插件目录        上传目录        配置目录        模板目录        数据目录

        函数集文件

                注意:文件命名的方式 、文件大小、创建时间、

                        其它文件统一调用的文件,在文件头部包含这个文件

        配置文件

                        config、 conf 等配置文件

       安全过滤文件

                safe  check 命名的           安全函数

       index 文件

                        通读原文,大概知道这个这个程序是干嘛的

优点:  了解程序框架,业务逻辑,挖掘楼哦对那个,对自身产品的审计

缺点:        耗费时间多,程序比较大,累

查找敏感关键字 回溯

优点    快速高效的挖出想要的漏洞 , 判断触发点的位置,以及上下文

缺点,覆盖不到逻辑漏洞的挖掘, 不能了解程序的基本框架

查找可控变量

上面 $_GET['search']  接收后  直接代入sql语句查询中去了 ,没有进行任何过滤

功能点审计

        程序安装     

        文件上传        

        文件管理

        登录验证

        备份恢复

        找回密码

                   

 

一切输入都是有害的

          可以控制的变量

一切进入函数的变量都是有害的

        变量到底又利用价值的函数(危险函数)

推荐用 源码之家等小的程序,去通读源码

接触框架      了解MVC

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值