CN111858378A - 一种php代码审计系统 - Google Patents
一种php代码审计系统 Download PDFInfo
- Publication number
- CN111858378A CN111858378A CN202010751194.4A CN202010751194A CN111858378A CN 111858378 A CN111858378 A CN 111858378A CN 202010751194 A CN202010751194 A CN 202010751194A CN 111858378 A CN111858378 A CN 111858378A
- Authority
- CN
- China
- Prior art keywords
- auditing
- module
- code
- php
- audit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012550 audit Methods 0.000 claims abstract description 25
- 238000011161 development Methods 0.000 abstract description 15
- 238000000034 method Methods 0.000 abstract description 8
- 230000008569 process Effects 0.000 abstract description 7
- 238000010276 construction Methods 0.000 abstract description 3
- 230000008439 repair process Effects 0.000 abstract description 3
- 239000000243 solution Substances 0.000 description 6
- 238000002347 injection Methods 0.000 description 4
- 239000007924 injection Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3616—Software analysis for verifying properties of programs using software metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种PHP代码审计系统,包括用于对PHP代码进行审计的前端审计模块,用于预制审计规则的前端配置模块,用于输出审计结果的结果输出模块,与用于显示审计PHP代码问题的问题判断模块。在本发明实施过程中,能够高速高效的对php源代码进行安全审计,从审计结果去判断代码是否存在漏洞,本系统支持云服务搭建,且用户还可以在本系统的基础上进行二次开发,还能方便用户查看详细的代码问题所在点,并直接定位代码,并直接给出相关的修复建;审计完成之后,可查看详细的代码问题,代码问题出现在什么地方、代码流程、代码列表。
Description
技术领域
本发明属于PHP代码技术领域,具体为一种PHP代码审计系统。
背景技术
随着网络技术的迅猛发展,网络语言的地位也越来越重要。PHP作为程序编辑语言,支撑了现代的网络发展。PHP原始为Personal Home Page的缩写,其自20世纪90年代国内互联网开始发展到现在,互联网信息几乎覆盖了我们日常活动所有知识范畴,并逐渐成为我们生活、学习、工作中必不可少的一部分。据统计,从2003年开始,我国的网页规模基本保持了翻番的增长速度,并且呈上升趋势,PHP语言作为当今最热门的网站程序开发语言,它具有成本低、速度快、可移植性好、内置丰富的函数库等优点,因此被越来越多的企业应用于网站开发中。但随着互联网的不断地更新换代,PHP语言也出现了不少问题。
由于PHP目前作为常用的网页开发语言,其数量与种类是相当多,而每个网页被开发出来时,均会或多或少的出现代码错误的情况。当网页的开发语言出现错误的时候,一般是靠网页运行,在运行中发现错误,然后再进行修改。但这样的话,不但会影响用户的使用感受,而且也会影响网页的正常运行。而想要在代码开发时就对其进行检查,需要消耗大量的人力与物力,从而增加代码的开发成本。
发明内容
针对上述情况,为克服现有技术的缺陷,本发明提供一种PHP代码审计系统,有效的解决了在代码开发时,检查过程中,需要消耗大量的人力与物力,从而增加代码的开发成本的问题。
为实现上述目的,本发明提供如下技术方案:一种PHP代码审计系统,包括用于对PHP代码进行审计的前端审计模块,用于预制审计规则的前端配置模块,用于输出审计结果的结果输出模块,与用于显示审计PHP代码问题的问题判断模块。
优选的,所述审计系统的运行步骤按照以下几个步骤依次进行,步骤一,源代码的输入,步骤二,选择审计类型,步骤三,锁定开始审计,步骤四,审查扫描结果,步骤五,复查漏洞。
优选的,所述审计类型包括选择输出级别与选择输出类型。
优选的,所述锁定开始审计步骤包括调用规则库与调用配置文件。
优选的,所述前端审计模块由正则表达式模块与审计规则模块构成。
优选的,所述前端配置模块由审计配置模块与正则配置模块构成。
优选的,所述结果输出模块输出的结果包括PHP代码多类型问题输出与关键点问题输出。
优选的,所述问题判断模块包括显示模块与复现问题模块。
相对于现有技术,本发明的有益效果是:
本发明在实施的过程中,能够高速高效的对php源代码进行安全审计,从审计结果去判断代码是否存在漏洞,本系统支持云服务搭建,且用户还可以在本系统的基础上进行二次开发。
此外,方便用户查看详细的代码问题所在点,并直接定位代码,并直接给出相关的修复建;审计完成之后,可查看详细的代码问题,代码问题出现在什么地方、代码流程、代码列表等。
附图说明
图1为本发明的系统架构图;
图2为本发明的系统整体审计流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由图1-2给出,本发明公开了一种PHP代码审计系统,包括用于对PHP代码进行审计的前端审计模块,前端审计模块能够对PHP源代码进行运行审计,从而判断PHP源代码中是否出现错误。用于预制审计规则的前端配置模块,配置文件的使用,可以给PHP源代码一个判断标准,使得在前端审计模块对PHP源代码进行审计的时候,对源代码错误段进行标记。且前端配置模块还能在完成审计之后,为用户提供修改建议。且在前端配置模块在运行时,可以将正确的PHP源代码标记为绿色,将错误的PHP源代码标记为红色,这样的配置,可以方便用户对审计完成且有错误的PHP源代码进行查看。用于输出审计结果的结果输出模块,结果输出模块对审计模块标记的错误代码进行输出,从而方便用户对错误的源代码进行审查与修改,与用于显示审计PHP代码问题的问题判断模块。结果输出模块能够定位到每一个文件下,精确到代码行数,并给出相关代码修复方案和举例。上述实施例中任何技术特征、任何技术方案均是多种可选的技术特征或可选的技术方案中的一种或几种,为了描述简洁且充分体现本发明的核心技术原理,以下具体实施例中不会穷举本发明所有可替代的技术特征以及可替代的技术方案,但本领域技术人员应该知晓将本发明提供的任一技术手段进行替换,或将本发明提供的任意两个或多个技术手段或技术特征互相进行组合,均可以得到基于本发明构思适应性得出的新的类似技术方案。
本身开发语言是由php+html进行开发的,可支持审计源码的以下漏洞。sql注入漏洞文件包含漏洞文件读取漏洞,文件上传漏洞javascript跨站点脚本漏洞,系统本身的审计原理是利用php代码漏洞的正则表达式来对其进行源代码审计的。本方案适用于公司开发人员、web漏洞挖掘、开源php项目源码审计等,而且本方案可用于可用于政府单位、教育单位、开发公司等等,给开发人员节省了大量的时间,而且在本方案实施的过程中,能够减少PHP源代码的错误,提高了PHP源代码的安全与稳定性能。
本方案在实施的时候可对一整套的源码进行安全信息审计,通过审计发现漏洞,进行本地漏洞调式与复现,从而对代码达到更安全的状态。且在审计完成后,用户可根据前端审计模块的提示对错误的PHP源代码进行修改,简化了用户的操作负担。
本实施例的审计系统的运行步骤按照以下几个步骤依次进行,步骤一,源代码的输入,步骤二,选择审计类型,步骤三,锁定开始审计,步骤四,审查扫描结果,步骤五,复查漏洞。
本实施例的审计类型包括选择输出级别与选择输出类型,选择输出类型可以是输出错误代码文本,也可以是选中输出正确代码文本。
本实施例的锁定开始审计步骤包括调用规则库与调用配置文件,规则库是开发技术人员提前设定的,且根据不同类型的源代码,开发人员可以配置不同的规则库。配置文件也是技术开发人员提前设定的。
本实施例的前端审计模块由正则表达式模块与审计规则模块构成,正则表达式模块包括消息验证,命令执行,文件上传,文件包含,文件操作,sql注入ldap注入php函数注入跨站攻击等等。
本实施例的前端配置模块由审计配置模块与正则配置模块构成。
本实施例的结果输出模块输出的结果包括PHP代码多类型问题输出与关键点问题输出。多类型问题是开发人员根据PHP代码在开发过程中遇到的各种问题进行归纳,从而总结出来的可能会出现的问题,输出模块将开发人员归纳出来的问题进行输出,从而用户进行查看。关键点问题表示的是,PHP代码在开发过程会遇到的一些重要的问题。
本实施例的问题判断模块包括显示模块与复现问题模块,显示模块用来显示PHP代码出现的问题,以便用户能够对错误的代码进行查看。复现问题模块,能够对错误的代码进行记录,且在用户对此处代码进行检查的时候,复现问题模块能够对代码出现的问题进行复现。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (8)
1.一种PHP代码审计系统,其特征在于:包括
用于对PHP代码进行审计的前端审计模块,
用于预制审计规则的前端配置模块,
用于输出审计结果的结果输出模块,
与用于显示审计PHP代码问题的问题判断模块。
2.根据权利要求1所述的一种PHP代码审计系统,其特征在于:所述审计系统的运行步骤按照以下几个步骤依次进行,
步骤一,源代码的输入,
步骤二,选择审计类型,
步骤三,锁定开始审计,
步骤四,审查扫描结果,
步骤五,复查漏洞。
3.根据权利要求2所述的一种PHP代码审计系统,其特征在于:所述审计类型包括选择输出级别与选择输出类型。
4.根据权利要求2所述的一种PHP代码审计系统,其特征在于:所述锁定开始审计步骤包括调用规则库与调用配置文件。
5.根据权利要求1所述的一种PHP代码审计系统,其特征在于:所述前端审计模块由正则表达式模块与审计规则模块构成。
6.根据权利要求1所述的一种PHP代码审计系统,其特征在于:所述前端配置模块由审计配置模块与正则配置模块构成。
7.根据权利要求1所述的一种PHP代码审计系统,其特征在于:所述结果输出模块输出的结果包括PHP代码多类型问题输出与关键点问题输出。
8.根据权利要求1所述的一种PHP代码审计系统,其特征在于:所述问题判断模块包括显示模块与复现问题模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751194.4A CN111858378A (zh) | 2020-07-30 | 2020-07-30 | 一种php代码审计系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751194.4A CN111858378A (zh) | 2020-07-30 | 2020-07-30 | 一种php代码审计系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111858378A true CN111858378A (zh) | 2020-10-30 |
Family
ID=72945676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010751194.4A Pending CN111858378A (zh) | 2020-07-30 | 2020-07-30 | 一种php代码审计系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858378A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113141248A (zh) * | 2021-04-25 | 2021-07-20 | 重庆都会信息科技有限公司 | 基于同态加密的门限解密方法、系统及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105278929A (zh) * | 2014-06-16 | 2016-01-27 | 腾讯科技(深圳)有限公司 | 应用程序审计的数据处理方法、装置和系统 |
CN108399133A (zh) * | 2018-05-18 | 2018-08-14 | 曾鸿坤 | 一种可在线调试的静态代码分析系统及方法 |
CN110109678A (zh) * | 2019-05-08 | 2019-08-09 | 广东电网有限责任公司 | 一种代码审计规则库生成方法、装置、设备及介质 |
CN110968868A (zh) * | 2019-11-20 | 2020-04-07 | 北京国舜科技股份有限公司 | 应用安全审计方法、装置、电子设备及存储介质 |
CN111008376A (zh) * | 2019-12-09 | 2020-04-14 | 国网山东省电力公司电力科学研究院 | 一种基于代码动态分析的移动应用源代码安全审计系统 |
US20200175177A1 (en) * | 2016-06-21 | 2020-06-04 | Shadow-Soft, LLC | Auto-injection of security protocols |
-
2020
- 2020-07-30 CN CN202010751194.4A patent/CN111858378A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105278929A (zh) * | 2014-06-16 | 2016-01-27 | 腾讯科技(深圳)有限公司 | 应用程序审计的数据处理方法、装置和系统 |
US20200175177A1 (en) * | 2016-06-21 | 2020-06-04 | Shadow-Soft, LLC | Auto-injection of security protocols |
CN108399133A (zh) * | 2018-05-18 | 2018-08-14 | 曾鸿坤 | 一种可在线调试的静态代码分析系统及方法 |
CN110109678A (zh) * | 2019-05-08 | 2019-08-09 | 广东电网有限责任公司 | 一种代码审计规则库生成方法、装置、设备及介质 |
CN110968868A (zh) * | 2019-11-20 | 2020-04-07 | 北京国舜科技股份有限公司 | 应用安全审计方法、装置、电子设备及存储介质 |
CN111008376A (zh) * | 2019-12-09 | 2020-04-14 | 国网山东省电力公司电力科学研究院 | 一种基于代码动态分析的移动应用源代码安全审计系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113141248A (zh) * | 2021-04-25 | 2021-07-20 | 重庆都会信息科技有限公司 | 基于同态加密的门限解密方法、系统及可读存储介质 |
CN113141248B (zh) * | 2021-04-25 | 2023-06-16 | 重庆都会信息科技有限公司 | 基于同态加密的门限解密方法、系统及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108985073B (zh) | 一种高度自动化的智能合约形式化验证系统及方法 | |
CN102063324B (zh) | 一种实现自动化编程的方法及系统 | |
JP5791698B2 (ja) | アバップソースコードのコード検査遂行システム | |
CN103577324B (zh) | 移动应用中隐私信息泄露的静态检测方法 | |
US20190079753A1 (en) | Automating Generation of Library Suggestion Engine Models | |
CN102567201B (zh) | 跨模型的图形用户界面测试脚本自动修复方法 | |
Wu et al. | Mutation testing for ethereum smart contract | |
CN101882107A (zh) | 一种web应用自动化测试的方法及装置 | |
US10552122B2 (en) | Systems and methods for customizable regular expression generation | |
CN104994219B (zh) | 一种数据处理方法和系统 | |
Niemetz et al. | Model-Based API Testing for SMT Solvers. | |
CN107145784A (zh) | 一种漏洞扫描的方法、装置及计算机可读介质 | |
Ferenc et al. | Source meter sonar qube plug-in | |
CN111858378A (zh) | 一种php代码审计系统 | |
Amar et al. | Using finite-state models for log differencing | |
CN113886232A (zh) | 接口测试数据和测试脚本生成方法、终端设备及存储介质 | |
CN105630674A (zh) | 一种针对界面的测试方法和装置 | |
US20060041873A1 (en) | Computer system and method for verifying functional equivalence | |
CN105224455A (zh) | 一种自动生成字符串类型测试用例的方法 | |
CN103810365A (zh) | 一种基于水电仿真培训系统自动评分的方法 | |
Zanero et al. | Automatic detection of web application security flaws | |
Villalobos-Arias et al. | Evaluation of a model‐based testing platform for Java applications | |
CN115794639B (zh) | 基于流程的可视化测试及可视化仿真模拟测试系统和方法 | |
CN105468530A (zh) | 一种基于有限状态机的程序错误检测方法及系统 | |
Caballero et al. | A zoom-declarative debugger for sequential Erlang programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201030 |