APACHE HTTP server提权技术
作者:晓华[岁月联盟信息安全团队] www.syue.com
<b>这一节我们将介绍利用</b><b>APACHE</b><b>软件来提升权限。</b><b>Apache HTTP Server</b>(简称<b>Apache</b>)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。Apache 的主要特征是:
. 可以运行上所有计算机平台;
. 支持最新的 HTTP 1.1 协议;
. 简单而强有力的基于文件的配置;
. 支持通用网关接口 CGI;
. 支持虚拟主机;
. 支持 HTTP 认证;
. 集成 Perl 脚本编程语言;
. 集成的代理服务器;
. 具有可定制的服务器日志;
. 支持服务器端包含命令(SSI)
. 支持安全 Socket 层(SSL)
. 用户会话过程的跟踪能力;
. 支持 FastCGI;
. 支持 Java Servlets
<b>优点如此多的</b><b>APACHE</b><b>服务器,自然是运用广泛。由于</b><b>APACHE</b><b>服务器在</b><b>WINDOWS</b><b>环境中是以系统权限运行的,这就造成了黑客可以利用其缺陷来执行任意系统命令。</b><b>PHP</b><b>程序提供的</b><b>EXEC() PASSTHRU() SYSTEM()</b><b>等函数均是执行函数,黑客只需要调用其中的函数就可以轻松地执行任意命系统令。理论部分我就介绍到这里,现在我们来实战演练提权操作。首先还是上传一个</b><b>CMD.EXE</b><b>到可执行目录,然后执行</b><b>net start </b><b>查看是否开放</b><b>APACHE</b><b>服务,以便确认服务器是否使用</b><b>APACHE</b><b>服务器。如图</b><b>1</b><b>:</b>
<b></b>

现在我们来查找APACHE服务器的安装目录,一般默认是安装在c:\Program Files\目录。这里我给大家介绍一个快速定位安装目录的技巧,避免在查找该目录的过程中浪费大量的时间,提高渗透的效率嘛。打开C:\Documents and Settings\All Users\「开始」菜单\程序 显示了所有安装程序,如图2:
然后打开APACHE目录,选择一个扩展名为lnk的文件下载到本地。右键属性查看该文件,显示了APACHE的安装路径。如图3:
然后依照路径打开D:\web\apache2\conf\ 目录,找到httpd.conf文件并打开。此文件是APACHE服务器的配置文件,保存着WEB程序的路径。如图4:
D:/web/apache2/htdocs就是WEB程序的根目录了,现在我们只需要上传一个带命令执行的PHP脚本木马到APACHE服务器的根目录。然后访问,如图5:
选择WEBSHELL中的Execute Command命令执行功能 输入WHOAMI查看当前用户登陆权限 如图6:
<b>显示是系统权限,现在我们可以执行任意系统命令,包括新增</b><b> </b><b>删除管理员账户和运行指定程序。现在我们来看下是否开放</b><b>3389</b><b>端口,执行</b><b>netstat -anp tcp | find ":3389" </b><b>如图</b><b>7</b><b>:</b>
<b> </b>
<b></b>
<b>3389</b><b>端口已经开放,我们只需要轻车熟路的添加一个系统账户并将该账户加入管理组,然后使用添加的账户远程登陆</b><b>3389</b><b>即可。关于如何添加管理员账户我已经在黑客必备基本技能一章中详细介绍过。</b><b>Apache</b><b>提权技术我就介绍到这里,希望大家好好掌握。</b><b></b>