网络安全反击战:入侵者的电脑被我攻陷

  • 来源: 互联网 作者: 小希   2008-03-18/08:26
  • 在用JSP制作的电子商务网站多如牛毛。但是对于JSP网站而言,安全性真的能够让人放心吗?面对层出不穷的黑客攻击和病毒袭击,JSP网站的服务器能够比其他网站的服务器器更加安全吗?前段时间,应朋友之邀,我对他们托管的三台服务器的主机进行了测试,发现了JSP网站存在的几个问题。

    入侵测试第一步:扫描

    扫描是入侵的第一步,它可以让你对即将入侵的目标有一个全面的了解。同时扫描还有可能发现扫描对象的漏洞,为入侵提供一个指导方向。

    朋友的两台服务器为Linux,一台为Windows系统,在路由器后面还有一台Cisco PIX 525对三台主机进行保护,只允许外部用户连接不同主机的部分端口,例如80,25,110。

    根据检测,Cisco PIX防火墙过滤规则设置比较严密,基本上没有多余端口允许外部用户访问。细致分析后,我发现,目标网络的主机通过地址转换来提供对外访问,内部使用192.168.*.*地址段。

    先不考虑那么多,找个扫描软件来看看主机的安全情况。我找来了X-Scan,在外部对这几台主机进行了端口扫描之后,生成了一份关于端口的报表,发现其中有一个Tomcat服务器,解释的自然就是JSP文件了。

    小知识:

    Tomcat Web服务器是一款开源的适合于各种平台的免费网络服务器。eBay.com与Dell 计算机等知名网站都采用或者曾经采用Tomcat的container容器执行Servlet 与JSP。

    看来,只能通过Web服务进行间接攻击。首先检查TCP 80端口的服务。我发现,新闻搜索的功能是由端口8080提供的,输入http:// 202.103.*.168:8080/之后,得到了一个系统管理登录页面,简单地测试了一下,输入“test/test”作为“用户名/口令”,似乎认证成功,但实际上并不能进入下一个页面。

    专家支招:对于扫描来说,它很容易暴露我们网站的弱势方面。应对扫描,我们可以架设一个蜜罐来误导扫描者,蜜罐可以让系统伪装成到处是漏洞,从而遮蔽真正存在的漏洞,也可以伪装成没有任何漏洞,让入侵者不知道从何入手。

    入侵测试第二步:漏洞尝试

    尝试JSP各种已知漏洞,这个是在扫描结果中无法获得任何有效信息指导入侵的情况下,被迫使用的方法。这种方法虽然效果不一定好,但是往往能够起到意想不到的效果,从而让入侵继续下去。

     

    我进行了JSP大小写的测试,因为JSP对大小写是敏感的,Tomcat只会将小写的jsp后缀的文件当作是正常的JSP文件来执行,如果大写了就会引起Tomcat将index.JSP当作是一个可以下载的文件让客户下载,若干测试后,我发现这个方法并不奏效,可能管理员已经在服务器软件的网站上下载了最新的补丁。

    我发现大部分的JSP应用程序在当前目录下都会有一个WEB-INF目录,这个目录通常存放的是JavaBeans编译后的class 文件,如果不给这个目录设置正常的权限,所有的class就会曝光。

    而采用JAD软件对下载的class文件反编译后,原始的Java文件甚至变量名都不会改变。如果网页制作者开始把数据库的用户名密码都写在了Java代码中,反编译后,说不定还能看到数据库的重要信息。那么,怎么得到这些文件呢?

    Tomcat版本的缺省“/admin”目录是很容易访问的。输入:http://202.103.*.168/admin/,管理员目录赫然在列。默认情况下,“User Name”应该是admin,“Password”应该是空,输入用户和密码后,并点击“Login”按钮,不能进入,陆续使用了几个比较常见的密码,也无济于事。

    默认情况下,Tomcat打开了目录浏览功能,而一般的管理员又很容易忽视这个问题。也就是说,当要求的资源直接映射到服务器上的一个目录时,由于在目录中缺少缺省的index.jsp等文件,Tomcat将不返回找不到资源的404错误,而是返回HTML格式的目录列表。

    想到了这点后,我打开刚才用X-Scan扫描后生成的报表文件,找到“安全漏洞及解决方案”栏目,看到了几个可能会有CGI漏洞的目录。在地址栏输入其中之一,返回结果如图1所示。

     

    一些很典型的JSP文件和JS文件都列出来了。大喜之下,随便选择一个文件,点击右键,然后,选择“用FlashGet下载全部链接”选项,于是,这个目录下的所有文件都被我下载到了本地。

     

    其中最有价值的是一个名字为dbconn.js的文件,看来程序设计者是为了方便省事,把一些数据库连接的密码和连接地址都写在里面了(这是很多开发者可能会忽略的问题)。不过,我现在最关心的还是Tomcat的管理员密码。

    简单破解后,发现Tomcat系统中的admin用户使用了非常简单的口令:web123456。利用这个漏洞,有了这个密码,下面的工作就相对简单了。

    专家支招:对于网站中的漏洞,我们要即时打上各种补丁,然后对几个已知的安全弱势方面进行加强,比如我们可以将“/admin”目录进行修改,让入侵者不容易找到管理路径。然后关闭Tomcat的目录浏览功能,让入侵者的漏洞尝试彻底失败。

    入侵测试第三步:注入攻击

    很多网站对于注入防范做得都很不到位,注入攻击可以让网站暴露出自己的数据库信息以至于暴露数据库表中的管理员账号和密码。

     

    重新登录Tomcat的管理界面,点击“Context (Admin)”这个链接,列出了WEB目录下的一些文件和目录的名称,现在就可以对Tomcat的Context进行管理,例如查看、增加、删除Context。

    回到Tomcat的管理界,我发现了一个上传文件的组件,并且网站还有一个论坛。于是,我编写了一个input.jsp文件,并将它当作一般的Web 应用程序,通过上传的组件上传到对方的WEB目录里。打开input.jsp这个页面(图2)。

    网页对查询窗体不会做任何输入验证,但是对用户名称的窗体则会。将数据填入窗体,来测试一下网页的漏洞,例子如下:

    (1)将<script language="javascript">alert(document.cookie)</script>填入搜索字段,以便用XSS 来显示进程的cookie。

    (2)将<iframe src=/uploads/allimg/080318/0827212.jpg" alt="" />

    我晕!@_@

    又是鸽子!我有点火了.刚才MM还说请电脑店的人上门装次系统多么不容易,麻烦人家不说,自己也麻烦.刚送走它,现在又飞回来了!真麻烦!(我也不记得她中过多少次木马了,系统有事的时候才通知我,没事的时候是不是一直在被人家监视?怒火燃烧中..........)

    老样子,远程协助。

    真辛苦,远程控制画面一点也不顺畅,唉.

    话说回来,挂鸽子那小子也不能放过他.况且MM电脑上还装有摄像头呢!(人长得漂亮,不装太浪费了)可不能便宜了那小子.大家说是不是?

    好!let's go!

    首先查看他的IP,在MM的电脑上用超级兔子查看:

    晕,还8000端口呢?你就不能改一下?

    在我机器开动X-scan3.3,扫描.

    漏洞不少啊,呵呵,管理员密码被我破了.先参观下他的电脑有啥漏洞吧!

    一:远程计算机管理

    呵呵,看见没,端口映射工具,鸽子内网上线用.

    二:远程注册表

    好,建立空连接看看,net use \\IP\ipc$ "密码" /user:"用户名"

    成功!
    拷贝命令看看能不能执行,copy 文件 \\IP\admin$

     

    ----失败!估计是没开共享.

    用net view \\IP 查看共享,果然没开,当然,映射默认共享:net use z: \\IP\c$ "密码" /user:"用户名"就不能用了.

    想想别的办法,有人用opentelnet.exe开telnet的办法,在此不用,也用不了,在这里我来个更直接的.

    DameWare,一款强大的远程控制软件,接下来就知道他有多牛B了.

    先连接他,(呵呵,管理员密码我已经有了)

    由于是首次连接,会提示安装服务端,呵呵,当然,得设置一下,免得被发现,这里略过.

    晕,安装了用不了,会不会是防火墙做怪?

    转转,看有什么新发现.

    看看他系统是什么样的

    .........赛扬2.4?比我的差,内存没我一半大,显卡比我好点.

    .呵呵,命令行模式,硬盘里装了什么一目了然

    不管三七二十一,我先把他的防火墙停止了,省得又出什么麻烦

    再看看共享,刚才不是没开吗?我们给他开完去!

     

    哈哈,整台电脑落到我手里了!在这里可以直接进入共享驱动器!

    映射个驱动器看看.

    OK!没问题!

    弄个马上去,其人之道还治其人之身,把我做过免杀处理的鸽子飞上去。

    呵呵~~~战斗结束~~~得到肉鸡一台~~~并把好消息告诉MM,得到回复如下:

    MM:"哇,太好了!你好厉害!

    太酷了!"

    我:"!@#$%^&*"

    晕,不一会又接到MM消息:"游戏冒险岛里打不了汉字,明天帮解决下."

    我倒~~!

    入侵刚刚结束,我就开始忙着写这篇文章,一是总结下,二是和黑基的朋友一起分享,斑竹记得给点红包啊~~~呵呵~~~

    不过这次入侵,我发现好多问题.只拣重点的说下:

    自己的电脑漏洞一大堆,尤其是特别低级的漏洞(不信?自己拿X-scan扫一下自己的电脑)一个低级的漏洞足够把你电脑送进地狱了.连电脑最基本的保护都做不好还做什么黑客?免得后院起火,我觉得这的确是一件很讽刺也是一件可笑的事情.即使是挂马,你也要把免杀做好吧?上线端口得改一下吧?(当然,真正的菜鸟除外)

    我觉得学黑客技术就是为了点实用,起码可以保护自己.保护跟入侵是两码事,不要整天想着入侵别人 。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多