代码审计(1)

admin 2024年12月10日17:58:05评论9 views字数 992阅读3分18秒阅读模式

代码安全测试介绍

代码安全测试是从安全的角度对代码进行的安全测试评估,结合丰富的安全知识,编程经验,测试技术,利用静态分析和人工审核的方法寻找代码在架构和编码上的安全缺陷,在代码形成软件产品前将业务软件的安全风险降到最低。

代码安全测试方法

代码审核采用人工审核和静态分析工具辅助的方式进行。

     人工审核:既能解决内部问题也能解决外部问题,这也是目前最有效的解决方法,并且在理论上手工代码审核是非常有效的,但人工审核的效率不高,所以我们会采用自动化分析工具辅助人工的方式来提高审核效率。

   静态分析工具:通过一组全面规则,测试机制和方针在软件开发过程,测试中发现软件的安全缺陷

静态分析工具

Seay PHP代码审计工具2.1公测版

此工具只能审计PHP的,把代码文件直接放进工具扫描,比如你想扫SLQ注入,直接搜索注入关键字,综合扫描也可以扫出来敏感的函数,扫出来的结果会用红色的颜色标出来,当然此工具需要搭配你自己手工去验证漏洞存不存在

代码审计(1)

代码审计通用的思路

1,通读全文代码,从功能函数代码开始阅读,列如include文件夹下的common_fun.php,或者有类似关键字的文件。

2,看配置文件,带有config关键字的文件,找到mysql.class.php文件的connect()函数,查看在数据库连接时是否出现漏洞。

3,继续跟读首页文件index.php,了解程序运作时调用了哪些函数和文件,以index.php文件作为标线,一层一层去扩展阅读所包含的文件,了解其功能,之后进入其功能文件夹的首页,进行扩展阅读

漏洞产生的原因

1,变量控制不严(一切输入都是有害)。

2,变量到达有利用价值的函数(一切进入函数的变量是有害的),漏洞利用效果取决于最终函数的功能

漏洞挖掘关键字

sql注入关键字:selct,insert,update,$_GET $_POST,$_REQUEST

上传漏洞关键字:$_FILES,move_uploaded_file

执行漏洞关键字:shell_exec,exec,passthru system,popen

包含漏洞关键字:include,include_once,require,require_once

变量覆盖关键字:$$

跨站漏洞关键字:echo,print,print_r,var_dump,var_exprot

原文始发于微信公众号(TOP网络安全):代码审计(1)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月10日17:58:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   代码审计(1)https://cn-sec.com/archives/2491315.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息