网络空间攻防技术原理
上QQ阅读APP看书,第一时间看更新

2.2.2 Web 环境搭建

1.本地Web服务

为了便于在本地分析和调试一些 Web 程序,可以在 Ubuntu 系统上搭建一套本地 Web服务,推荐使用“Apache服务器+PHP脚本语言+MySQL数据库”的组合。

通过执行命令“sudo apt install apache2”可以安装Apache服务器。安装完毕后,可以通过执行命令“ps -aux | grep apache”查看Apache服务是否自动开启,默认是自动开启的。也可以通过执行下面的命令来控制Apache服务的启动、停止或重启。

// 方法1:定位到程序目录来进行操作
sudo /etc/init.d/apache2 start
sudo /etc/init.d/apache2 stop
sudo /etc/init.d/apache2 restart
// 方法2:使用 service 命令来进行控制
sudo service apache2 start
sudo service apache2 stop
sudo service apache2 restart

在Ubuntu的浏览器中输入地址127.0.0.1可以访问Apache服务器。

如果想通过其他主机访问Ubuntu上的Apache服务器,可以先通过执行命令“ifconfig”来查看Ubuntu系统的IP地址,再通过浏览器进行访问。

Apache 服务器的配置文件都存放在路径“/etc/apache2/”下,网站的根目录则位于“/var/www/html/”,可以根据需要来进行相应的操作。

通过执行命令“sudo apt install php”可以安装 PHP 脚本语言。安装完毕后,可以在“/var/www/html”路径下新建一个index.php文件来验证PHP环境是否安装成功,具体操作如下。

# cd /var/www/html
# sudo vi index.php
<?php
    phpinfo();
?>
# sudo /etc/init.d/apache2 restart

通过浏览器访问地址ip/index.php,查看PHP环境安装是否成功。

MySQL 是 Web 环境中一种常见的关系数据库,可以通过执行命令“sudo apt install mysql-server”来安装。MySQL数据库也是默认自动开启的,同时与 Apache 服务器类似,它的启动、停止或重启也有两种方法。

刚安装完毕的MySQL数据库默认用户为root,在本地不需要密码就可以进入。

2.安装Nmap

Nmap是一款开源的网络探测及安全审查工具,常常用于快速扫描大型网络,包括主机探测与发现、开放的端口探测与发现、操作系统与应用服务指纹识别、WAF 识别及常见安全漏洞识别等。在Ubuntu系统下可以直接通过执行命令“sudo apt install nmap”来安装Nmap,安装完毕后,可以通过执行命令“nmap -h”来查看具体的使用方法。

3.安装sqlmap

sqlmap是一款开源的自动化SQL注入神器,支持多种主流的数据库。sqlmap基于Python实现,可以跨平台工作,只需要在GitHub克隆sqlmap项目后即可使用。

安装完毕后,可以通过执行命令“python sqlmap.py -h”来查看具体的使用方法。

4.安装AntSword

AntSword(中国蚁剑)是一款开源的跨平台网站管理工具,主要提供给具有合法授权的渗透测试人员使用,也可以将其提供给网站管理员来进行常规操作,通过它可以方便地实现webshell的生成、管理、编码等操作。

最新版本的AntSword可以通过官方提供的加载器来进行安装。下载用户所需要版本的加载器并以root权限打开,单击“初始化”按钮,选择一个空目录作为AntSword的工作目录,加载器会自动下载源代码并完成安装。再次打开加载器,即可看到AntSword的主界面。

关于AntSword的使用方法及更多信息,可以查阅AntSword项目主页。

至此,一个基本的Web学习环境就搭建起来了,读者可以在其中部署或调试Web应用程序,或练习使用相关工具软件。当然,参赛者在面对CTF竞赛中的Web相关赛题时,需要用到的工具还不止这些,本书将在讲解相关知识的时候再介绍更多工具的安装及使用。