CTF中web方向的一大重点是php代码审计,这需要我们对php代码的特性很熟悉,并了解基本的php语法。因此,我们需要有一个能够练习和熟悉php的环境。而且,在构造序列化等时候我们也需要一个能够运行php的服务器。比起在线编写,我们不如直接在本地搭建一个能够解释运行php的服务器。
绝大部分人电脑都是用的Windows,我们就利用Windows自带的IIS功能来搭建一个php环境
第一步:开启相应的Windows功能
首先打开控制面板,搜索“启用或关闭Windows功能”找到这个界面;
把Internet Information Services下边的第二个第三个勾上,启用IIS服务;
接着搜索IIS找到IIS管理器:
这时候看看右边的操作栏,如果没有启动就启动一下,接着进入网站;
IIS默认自带一个网站Defaul Web Site,绑定的端口是80。同样检查右边的操作栏将其启动,我们访问127.0.0.1:80或localhost:80,成功的话会出现这样一个界面:
第二步:添加php服务
IIS中自带的服务只有asp和vb等,没有php服务,因此我们需要手动添加;
这里的添加过程参考了该博客,过程比较麻烦,一步一步来是没有问题的,先在处理程序映射中添加php,再处理php.ini,最终成功在IIS中添加了php服务。
第三步:构建个人网站服务
在网站界面右侧添加网站,出现该界面;
名称什么的随便填,物理路径新建一个文件夹(之后的php代码就可以这个目录下编写调试),端口保证不冲突随便填,其他的默认就行;
接下来在该目录添加文件index.php,输入phpinfo:
1 |
|
访问设置的端口(我的是1437),出现该页面说明没问题:
接下来就可以在该目录编写练习php了。
我们可以在该目录下随便添加php文件并通过该端口访问。觉得麻烦可以直接在终端界面使用curl直接访问。例如我们创建test.php,内容如下:
1 |
|
接着在终端键入:
1 | curl http://127.0.0.1:1437/test.php |
便可以直接在终端得到结果,十分方便。