首页 > 其他 > 详细

代码审计基础

时间:2020-02-11 20:25:19      阅读:63      评论:0      收藏:0      [点我收藏+]
  1. 环境准备:phpstudy来搭建web服务、sublime作为代码编辑器(notepad++和phpstorm等都可以)、fortity和rips:静态扫描工具、beyond compare文本比较工具、seay代码审计工具。
  2. 挖掘思路:
    1. 敏感函数回溯参数。高效,通过搜索敏感函数的关键字,快速挖掘想要的漏洞。但是难以发现逻辑漏洞。
    2. 通读全文代码。观察目录结构,根据文件名去看代码。例如upload、admin、sqlconnect等敏感文件。
    3. 根据功能审计。
      1. 文件上传功能。检查代码对上传功能点是否设置过滤,过滤是否严格。
      2. 文件管理功能。注意是否存在任意文件下载或者任意文件读取。
      3. 登陆认证功能。
      4. 找回密码功能。
    4. 根据函数判断。
      1. sql注入:addslashes函数  

        mysql_real_escape_string 

        intval等字符转换:int类型转换  

      2. xss
      3. 任意文件删除:rmdir-删除目录,unlink-删除文件
      4. 任意文件写入:copy:拷贝文件、file_put_contents、fputs、fwrite
      5. 任意文件操作
      6. 任意文件上传
      7. 命令注入:exec:执行一个外部程序、passthru:执行外部程序并显示原始输出、shell_exec:通过shell执行命令,并将输出通过字符串方式返回、system:执行外部程序,并显示输出、pcntl_exec:在当前进程空间执行指定程序、popen:通过popen()的参数执行一条命令,并对popen()打开的文件进行执行。
      8. 代码注入:eval、assert、call_user_func、call_user_func_array
      9. 变量覆盖:$$、parse_str、extract

代码审计基础

原文:https://www.cnblogs.com/ly584521/p/12296483.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!