fny5jt9 发表于 2024-7-11 18:52:14

PHP 代码审计基本


    <h2 style="color: black; text-align: left; margin-bottom: 10px;"><span style="color: black;">第1</span>部分 审计流程</h2>
    <p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">用户请求的处理流程获取请求全局过滤模块文件C函数内容M函数内容V<span style="color: black;">表示</span>通读原文函数集文件配置文件安全过滤文件Index文件网站目录结构主目录模块目录插件目录上传目录模块目录数据目录配置目录配置文件公共函数文件安全过滤文件数据库结构入口文件<span style="color: black;">敏锐</span>关键字回溯参数优点:<span style="color: black;">有效</span>的挖掘漏洞判断<span style="color: black;">敏锐</span>触发点的位置以及上下文,追溯参数源头缺点:覆盖不到<span style="color: black;">规律</span>漏洞的挖掘<span style="color: black;">不可</span><span style="color: black;">认识</span>程序的基本框架功能点定向审计程序安装文件上传文件管理登录验证备份恢复找回<span style="color: black;">暗码</span>例子</p>
    <p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">Dami cms</p>账户功能登录会员资料找回<span style="color: black;">暗码</span>注册修改<span style="color: black;">暗码</span>我的投稿我的订单<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">第二部分 PHP核心配置</p><span style="color: black;">体积</span>写<span style="color: black;">敏锐</span>directive = value(指令=值)foo = bar ≠ FOO = bar运算符| 、&amp;、~、!空值的表达方式foo = ;foo = none;foo = “none”;安全模式safe_mode=off (PHP 5.4移除 )限制文档存取、环境变量的读取以及空值<span style="color: black;">外边</span>程序的运行限制环节变量的读取safe_mode_allowed_env_vas = string指定PGP程序<span style="color: black;">能够</span>改变的环境变量的前缀,当值为空的时候,<span style="color: black;">能够</span>改变任何的环境变量<span style="color: black;">外边</span>程序执行目录safe_mode_exec_dir = “”禁用危险函数disable_functionscom 组件com.allow_dcom=falsePHP设置在安全模式下(safe_mode),<span style="color: black;">准许</span>攻击者<span style="color: black;">运用</span>com()函数穿件系统组件来执行任意命令<span style="color: black;">运用</span>com函数<span style="color: black;">必须</span>在php.ini中配置extension=php_com_dotnet.dll,<span style="color: black;">倘若</span>PHP VERSION&lt;5.4.5,则不<span style="color: black;">必须</span>全局变量注册开关register_globals = offphp.ini的register_globals选项的默认值设为off,在4.2版本之前是默认开启的,当register_globals为on时,程序接受来自服务器的环境变量,<span style="color: black;">包含</span>表单提取的变量register_globals = Off,服务器获取数据时候采用**$_GET** 来获取数据register_globals = On ,服务器采用POST<span style="color: black;">或</span>GET来提交变量,都会<span style="color: black;">运用</span>全局变量来接受取值魔术引号自动过滤magic_quotes_gpc=On PHP4.5移除magic_quotes_gpc=Off 在php.ini中默认关闭,会对sql语句中的单引号、双引号、反斜杠和空字符加上反斜杠转义,它会影响HTTP请求的数据(GET POST Cookies),<span style="color: black;">同期</span><span style="color: black;">能够</span>在php代码中<span style="color: black;">运用</span>addslashes来转义,<span style="color: black;">经过</span>stripslashes来删除转义远程文件<span style="color: black;">是不是</span><span style="color: black;">准许</span><span style="color: black;">包括</span>远程文件allow_url_include = off设置为On的<span style="color: black;">状况</span>下,<span style="color: black;">能够</span>直接<span style="color: black;">包括</span>远程文件,若<span style="color: black;">包括</span>的变量为可控的情况下,<span style="color: black;">能够</span>直接<span style="color: black;">掌控</span>变量来执行PHP代码<span style="color: black;">是不是</span><span style="color: black;">准许</span>打开远程文件allow_url_open = on<span style="color: black;">准许</span>本地PHP文件<span style="color: black;">经过</span>URL重写的方式来打开和关闭权限,默认的封装协议<span style="color: black;">供给</span>ftp和http协议<span style="color: black;">拜访</span>文件目录权限HTTP头部版本信息expose_php = off防止了<span style="color: black;">经过</span>http头部<span style="color: black;">泄密</span>的php版本信息文件上传临时目录upload_tmp_dir=上传文件临时<span style="color: black;">保留</span>目录,<span style="color: black;">倘若</span>不设置,采用系统的临时目录用户<span style="color: black;">能够</span><span style="color: black;">拜访</span>目录open_basedir = E:\Local Test\WWW能够<span style="color: black;">掌控</span>PHP脚本只能<span style="color: black;">拜访</span>指定的目录。错误信息内部错误选项display_errors = on<span style="color: black;">显示</span><span style="color: black;">表示</span>php脚本的内部错误,错误回显错误报告级别error_reporting = E_ALL &amp; ~E_NOTICE将错误级别调到最高,<span style="color: black;">表示</span>所有的问题,方便排错<h2 style="color: black; text-align: left; margin-bottom: 10px;">第三部分 代码调试及Xdebug的配置<span style="color: black;">运用</span></h2>echo最简单的输出数据调试<span style="color: black;">办法</span>,<span style="color: black;">通常</span>用来输出变量值<span style="color: black;">或</span>不确定执行到哪个分支print_r var_dum




taiker 发表于 2024-8-30 12:34:55

交流如星光璀璨,点亮思想夜空。
页: [1]
查看完整版本: PHP 代码审计基本