vs2017不能调试成功_Windows 编译并调试php源码

本文详细介绍了如何在Windows上使用Visual Studio 2017和PHP SDK来编译PHP7.2源码,包括安装步骤、环境配置、依赖包下载、编译过程及使用VS进行调试。通过源码调试,可以在解决CTF问题时发现更多隐藏技巧。
摘要由CSDN通过智能技术生成

官方说明地址:

internals:windows:stepbystepbuild_sdk_2

以php7.2为例

1.首先下载安装VS2017,安装C++扩展

43add8440c8722b4c03a762b9d60a658.png

2.下载php源代码

https://windows.php.net/download/

8873e27c3a41176747807145c736a6f8.png

3.clone php dev sdk

git clone https://github.com/Microsoft/php-sdk-binary-tools

4.环境配置

cc86b05dbeede7a136b51d8abe3c52d8.png

执行命令 phpsdk_buildtree phpdev 创建目录结构

将php源码放入下图目录中

ec04d154623232d0768e1ceb0af62fc1.png

下载依赖包 windows.php.net - /downloads/php-sdk/deps/vc15/x64/

4da93189cd3e1dcf840ad8f4fc540813.png

解压放入deps目录中

409ffe1df8189069fba6f9ee4cf28af1.png

如果你网络环境比较好的话,也可以使用phpsdk_deps -u 来在线安装

5.编译php

在phpsdk-vc15-x64.bat 中启动cmd

2d291dd93ee48adb3c7acb3a884c0863.png

cd 进入phpdev中的php源码目录

执行

buildconf

再执行

configure --help

继续执行

configure --enable-debug --enable-phpdbg

编译

nmake

编译的php文件在源码目录下

c55e0bfdedea2e855e99e7e9dbb9f64d.png

在目录下创建php文件

ece26c7d020101e2c6faff94d7f5a970.png

php源文件下断点

f8853c026aef0971b09a230a454e0649.png

使用编译出来的php.exe 运行 poc.php

ed9bd83d444760ec7e1fc1f9cfaa2ab1.png

vs-调试-附加到进程,附加到php.exe

b6446f9d170a0a0a789bfae5f05d805e.png

附加成功以后,在php的cmd里面按回车,继续执行程序。

成功断下!调试这个的主要目的是,有时候做ctf题目的时候,配合php源码调试可以获得到,很多隐藏的小技巧

760d31d4e2d6566bf3d246b914ae234b.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值