您的位置:首页 > 电脑网络 > 黑客攻防

 

入侵chinalinux站点技术指导


WWW.YUHUAN.COM  作者:- 来自:- 点击:25 时间:2008-3-12

大家都知道,中国有个最大的操作系统软件生产厂家,那就是 chinalinux。很多人都想试图进入其主站点 http://www.chinalinux.com

www_bitscn_com

因为那将是对自己的一个挑战。终於有一天成功的进入了其主站,在此写出我的过程,以及对常见web服务的安全模型的理解,对此的一些总结 bitsCN_com

等,希望大家能够从中得到自己的理解。

DL.bitsCN.com网管软件下载


首先,那当然得介绍介绍这chinalinux站点的一些情况吧。http://www.chinalinux.com是使用自己开发的一个由linux升级得来的中文操作系

中国_网管联盟

统,而web服务也是采用自己的产品ccs。这ccs安装、使用非常方便,也很容易配置管理,所以很多管理员都喜欢使用这个产品。

中国_网管联盟


  为了要能进入这样的站点,那当然就得熟悉ccs这个web服务系统了。根据这个系统的一些基本服务特性,以及一些权限配置,简单总结後

bitsCN_com

有三点。

中国网管论坛


一、ccs系统提供外界可以访问系统一部分目录文件的服务
二、ccs提供虚拟目录配置,每个虚拟目录可以对应一定的权限
三、ccs系统文件类型配置,可以配置不同的文件类型,提供直接在服务端运行和返回客户端运行两种方式 中国网管联盟

  通过上面的了解,我总结出了ccs的一个安全模型,那就是ccs是一个外挂式的有权限限制的web系统。怎么来理解这“外挂”呢?因为大家

bitsCN.Com


熟悉操作系统的都知道,操作系统本身对一些对象有权限控制,而这ccs系统的权限控制不是依靠操作系统本身的这些功能,而是依靠自己的一 www.bitsCN.com

些检测。最重要的一点,操作系统对对象权限的分配都附在对象本身身上,而ccs的是把所有对象的权限分配记在ccs系统上面。  

bbs.bitsCN.com


  这点有什么区别呢,操作系统处理的时候每个真实对象有一个档案,而每个对象可能有些别名,这样访问这些别名的时候我们不用关心它 中国_网管联盟

到底是别名还是真名,只要最终对应到那个唯一的档案就能正确的得到权限分配。打个形象点的比喻,月底发工资,操作系统把每个人建立了

中国网管联盟

一个唯一的档案,这些档案里面记录有这个人的工资,而这个人可能叫小张也叫张三,那么发工资的时候不用管他叫小张还是张三,最终是找 www_bitscn_com

到了他的工资表也就正确的发放了他的工资。而对於ccs系统来说,因为它没有这样一张工资表,它就是根据人名来确定工资,所以它就必须考 bitsCN.Com

虑每个人所有的名字才能正确的发放工资。所以根据这个基本的特点,总结出了安全编写ccs系统应该注意的四点:

BBS.bitsCN.com网管论坛


1、 ccs系统提供的服务应该做chroot限制
2、 ccs系统应该能识别一个真实目录对应的所有目录名
3、 ccs系统应该能识别一个真实文件对应的所有文件名
4、 ccs系统的调用接口应该完全按照接口意思实现

bitscn.com

  这几点,每点都可以写出一大篇文章了,因为这篇文章不是写这些,所以也就只写这点提纲式的东西吧。不光是CCS系统需要注意上面4点 bitsCN.nET中国网管博客

,其它的WEB服务器差不多同样需要考虑这样4点。 www_bitscn_com

  根据这些认识以及对一些原来公布漏洞的理解,很快就发现了大量的漏洞,在此总结出来原因:编写CCS系统的人员没有建立一个安全模型

www.bitsCN.com


,对安全没有深刻的认识,所以在系统实现上就没有系统的、全面的对权限做检测,只是编写人员想到一条做一条,因为没有明确提出这些安

中国.网管联盟

全上的要求,这些检测也往往是很容易逃避的,所以造成这么多的漏洞。

中国网管论坛


  说了这么多,还没有正式提到漏洞,那就马上来了。根据上面的第1条,显然CCS系统应该检测用户请求中的“/../”,这点不知道现在还 DL.bitsCN.com网管软件下载

有多少WEB有这样低级的严重的不可饶恕的错误。CCS系统低版本就有这样的漏洞,但现在显然没有了,它会先检测这样的请求,做出正确的处 bitsCN_com

理。但是因为没有这样明确的安全模型,所以错误又出来了。为了对多语言以及一些传输设备的支持,CCS系统支持一种unicode的传输编码格 bitsCN_com

式,而经过这样的解码後,请求的字符已经发生变化,显然根据上面安全模型的提出的“外挂式”特徵,这权限检测不能依靠解码前的检测,

BBS.bitsCN.com网管论坛

需要再次检测,而CCS根本就没意思到这些,所以我们可以轻易突破所有这些限制了。 中国网管论坛

  於是试了其主站http://www.chinalinux.com果然有此漏洞,不过没法利用干什么事,因为其主站虚拟目录对应的一个可执行/csapi目录是 bitscn.com

作了chroot限制,也就是通过这个虚拟目录,往上级目录返回最终也到不了系统的根“/”,当然也就不能执行系统/bin/目录里面的东西了,

bitsCN.Com

也不能得到/etc/目录里面的密码文件,而那些缺省安装没有做chroot限制的可执行虚拟目录却被删除。好不容易找到一个漏洞却不能利用。

bitsCN.Com


  不过後来偶然一天访问到其一个分站点http://support.chinalinux.com,於是偷偷的试了一下其缺省安装的可执行虚拟目录/chinaadc,

中国网管联盟

就是在浏览器里面输入了http://support.chinalinux.com/chinaadc/,乖乖,返回的是“HTTP 错误 403 - 禁止访问”而不是此目录不存在的 BBS.bitsCN.com网管论坛

“HTTP 404 - 无法找到文件”错误。大家都知道这个目录是没有做chroot限制的,可以成功的返回到系统的根“/”,再进入系统目录“/bin/ www_bitscn_com

”,执行下面的shell程序“sh”了。当然也就用此sh查看了一些web目录结构。 中国_网管联盟

  http://support.chinalinux.com/chinaadc/..%c0%af../..%c0%af../bin/sh.elf?ls+/http bitsCN.nET中国网管博客

  就可以看到web目录所在东西了,很高兴的看到了此目录里面有一些脚本“.sh”文件。 中国.网管联盟

  对於这些脚本文件,CCS系统又有漏洞,那就是上面第4条的一个漏洞。在作接口的时候,接口实现程序一定得完全按照接口意思实现,这 bitsCN.Com

点CCS系统出了更是无数的漏洞。而因为CCS是相对操作系统後出来的了,它在调用操作系统调用的时候,当然就不能要求操作系统来满足它的

中国网管论坛


要求了,这些调用本身处於比CCS系统低的层次,也不应该去满足CCS的特殊要求,所以CCS必须明白一些操作系统调用有什么特殊的地方。这在 www.bitsCN.com

chinalinux系统实现加载程序的调用上,为了支持长文件名、文件名里面的空格等,可以在加载的文件名前後加上“””号,chinalinux加载 中国.网管联盟

程序就是用“””来匹配到底加载的是哪个文件。而又一点,如果检测到是加载“.sh”的脚本文件,就自动的调用shell程序“sh”去解释,

bitsCN.Com

而这调用也饶过了chroot使得不能访问“/”以及系统目录的限制。在调用“sh”的时候,操作系统会把这个脚本文件以及脚本文件的参数统一 中国.网管联盟

作为参数加载。大家都知道shell程序“sh”本身支持命令连接符、管道等,所以我们可以在参数里面加上命令连接符和我们要执行的命令。所

bitsCN.Com


以CCS在加载程序的时候就必须应该明白操作系统chinalinux加载程序的这些特性,从而实现相应的检测。

中国_网管联盟

  对於上面看到的web目录结构,以及里面的那些“.sh”脚本文件,我大胆的猜测其主站http://www.chinalinux.com可能也存在。虽然CCS BBS.bitsCN.com网管论坛

系统不准直接加载“.sh”的脚本文件,但是我们可以通过使用“””的办法使得实际加载的不是CCS系统需要的“.elf”格式文件。

DL.bitsCN.com网管软件下载

  http://www.chinalinux.com/csapi/..%c0%afhttp/china.sh”+.elf?”+&+ls+/bin

bbs.bitsCN.com

  成功的突破了chroot对根“/”的限制,查看到了系统目录,也可以完全控制主站了。当然这些不是目的,我们也不希望这样的站点有任何 bitsCN.Com

的被修改,後来其站点终於也打上了相应的补丁。 bitsCN.nET中国网管博客

  後来有人用unicode漏洞破了chinalinux一个废弃不用的分站点,改了一个页面并且大肆宣扬,这完全没有必要。我们需要的是通过这些方

www_bitscn_com


法得到我们考虑问题的思路、方法等,而不是去破坏。

bitsCN_com

最後再次总结:

www.bitsCN.com

一、编写WEB服务安全模型建立的必要性
二、站点安全配置往往因为一点小小的错误,使得全线崩溃

DL.bitsCN.com网管软件下载

希望我们的程序员在编写安全程序的时候,也要多考虑考虑我们怎么能够更好的编写安全的程序。  bitscn.com

写这个的时候隐含了很多信息.
chinalinux=microsoft
ccs=iis
chinaadc=msadc
csapi=isapi www_bitscn_com

.sh=.bat
.elf=.exe

DL.bitsCN.com网管软件下载

其实就是unicode漏洞拿下了 http://support.microsoft.com/msadc,因为此站点有/msadc可执行虚拟目录,而此目录和系统目录在同一个驱动器. 但主站http://www.chinalinux.com/isapi的可执行目录不在系统盘,unicode漏洞不能调用到系统目录的 cmd.exe.但通过http://support.mscrosoft.com/msadc获得了站点的目录结构及文件列表,找到里面的.bat文件了.再估计主站也有同样的.bat文件,又通过另一个漏洞,调用.bat文件,这样自动调用cmd.exe,就不存在cmd.exe路径问题,再通过另一个漏洞,执行了命令.

bitsCN_com

通过3个未公开漏洞,以及一个分站点获取信息,顺利拿下主站点.

 

 

责任编辑:dongxp 文章页数第[1]页 

【字体: 】【关闭


■ 相关连接

 
文章搜索
暂停使用
本级分类
|电子商务|
|菜鸟入门|
|专业指导|
|病毒档案|
|黑客攻防|
|硬件市场|
|游戏介绍|
阅读排行
·QQ骚扰攻击常见手法:QQ 炸弹...
·国外顶级黑客浏览器(在线自动查找...
·KV2005升级方法—代理直接官...
·河南省网通公司调整ADSL宽带认...
·入侵服务器
·超大容量 国外提供免费10GB网...
·菜鸟黑客入门--攻击及防范别人技...
·139端口的攻与防
·网络钓鱼 等网上诈骗盗窃活动的...
·看看黑客是否光顾过你的电脑
·MS06-005:媒体播放器可能...
·最近关于 灰鸽子2005 的问题