Ecshop2.x代码执行漏洞动态调试分析

作者:媒体转发 时间:2018-09-11 21:03

字号

号称国内最大的开源网店系统,可以直接远程写入webshell。

本文会通过动态分析来解析漏洞每个细节,关于漏洞原理可以看漏洞原理,讲的很详细,本文重点介绍动态分析审计的技巧和如何调试漏洞,关于漏洞本身也是一个很值得学习的漏洞,能构造出这个攻击链是需要对每个细节都有深刻的认识才能实现的。

二、动态调试环境搭建

自行下载安装phpstudy和phpstorm

首先确定php版本

然后修改配置文件

image.png

image.png

修改php.ini中如下

[XDebug]

xdebug.profiler_append = 0

xdebug.profiler_enable = 1

xdebug.profiler_enable_trigger = 0

xdebug.profiler_output_dir ="C:\phpStudy\tmp\xdebug"

xdebug.trace_output_dir ="C:\phpStudy\tmp\xdebug"

xdebug.profiler_output_name = "cache.out.%t-%s"

xdebug.remote_enable = 1

xdebug.remote_handler = "dbgp"

xdebug.remote_host = "127.0.0.1"

zend_extension="C:\phpStudy\php53\ext\xdebug.dll"

xdebug.remote_port=9000

xdebug.idekey= PHPSTROM

设置php版本,一定要对应上

image.png

image.png

下面图片是默认的不用动

image.png

image.png

下面的修改key和端口如下

image.png

image.png

image.png

在这里配置根目录调试环境

image.png

image.png

在这里配置根目录调试环境

image.png

image.png

image.png

这里就留一个Chrome浏览器

image.png

image.png

Chrome浏览器要安装插件JetBrains IDE Support 下载安装好了不用修改配置,这样就基本可以了。 

三、漏洞动态调试分析

下面进行动态分析,动态分析的好处就是漏洞分析起来更加清晰。

image.png

image.png

下断点这里我们断到了漏洞起始点方便分析每一个细节,然后点击debug,

然后浏览器会打开

image.png

image.png

然后点击登录,会触发断点,可以看到停到了断点处

image.png

image.png

下面介绍使用的一些快捷键:

f7会跟进函数 ,

f8 步出也就是一行一行走,不进入函数,有些循环或者不想看的函数直接f8,

进入函数后想跳出去就用shift+f8

Ctrl+art加 点击想要看的函数就会进入

Alt +f7 会搜索谁调用了这个函数或者变量

笔者常用的就这些,掌握这些技能后就可以调试

这里HTTP_REFFER可控到赋值到$back_act

责任编辑:CQITer新闻报料:400-888-8888   本站原创,未经授权不得转载
继续阅读
热新闻
推荐
关于我们联系我们免责声明隐私政策 友情链接