赛迪网 > IT技术 IT技术关注 > 文章
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

黑客案例——浏览器执行exe文件的探讨

发布时间:2007.03.09 04:51     来源:赛迪网安全社区    作者:hackmaster

一:真的能在浏览器中执行命令文件吗?

答案是肯定的。不过先别高兴,只能执行服务器端的,而且是必须经过授权的。否则服务器想黑你就太容易了,谁敢看我我就格式化谁。

二:他是如何实现的。是靠asp文件吗?

在服务器端执行文件是靠SSI来实现的,SSI时服务器端包含的意思(不是SSL),我们经常使用的#include就是服务器端包含的指令之一。不过,这次要介绍的就是——#exec。就是他可以实现服务器端执行指令。

不过,这次他不能用于.asp的文件。而只能用.stm、.shtm 和 .shtml这些扩展名。而能解释执行他们的就是Ssinc.dll。所以,你写好的代码必须保存成.stm等格式才能确保服务器能执行。

三:如何执行呢?

终于开始讨论实质性问题了。

它的语法是:

CommandType是参数,他有两个可选类型:

1.CGI 运行一个应用程序

如 CGI 脚本、ASP 或 ISAPI 应用程序。

CommandDes cription 参数是一个字符串。此字符串包含应用程序的虚拟路径,后跟一个问号以及传送给应用程序的任一参数,参数之间由加号分隔(+)。

他可是#exec命令最有用的参数,也是#exec命令存在的大部分理由。他可以处理已授权的CGI脚本,或Isapi应用程序。微软为了向下兼容一些早期的ISAPI应用程序,而创建了该项命令。我们知道,微软早期的WEB应用程序都是靠ISAPI解释的,而且也兼容CGI程序。你现在也可以在你的WEB根目录中找到CGI-BIN的目录。

我们可以用一下例子说明。

这种命令我们在一些UNIX主机上可以经常见到。现在,我们也可以在自己的.shtml中运用他了。当然,如果服务器允许的话。

还有一种类型的程序:

这种命令方式将启动一个进程外的程序来解释并动态输出信息到网页上。这种方式不常见。但你仍然可以在一些网站中见到。

2.CMD参数

他可是#exec命令中最可怕的参数,也是#exec命令禁止使用的大部分理由。他也是我们一些网友实现最终幻想的利器。可惜,要得到我们幻想的招数有些困难,也几乎是不可能的。

以下是微软关于CMD参数的说明,你一定要读明白再试!

CMD 运行 shell 命令。 CommandDes cription 参数是一个字符串,其中包含 shell命令程序的完整物理路径,后跟由空格分隔的任何命令行参数。如果没有指定全路经,Web 服务器将搜索系统路径。默认情况下,该指令是被禁用的,这是因为它会对 Web站点造成安全方面的危险;例如,用户可能使用 format 命令格式化您的硬盘。

我本人建议关闭,因为现在微软也不推荐用这个命令。不过,如果你是服务器的管理员,可以试一试。

你可以新建一个test.shtml的文件,然后在首行设置一个命令。

[an error occurred while processing this directive]
'NT中的一个帮助文件(没有危险)。

或试一试!

[an error occurred while processing thisdirective]
'window98下的显示内存的一个命令。(没有危险)
  

 

然后你在该虚拟目录中将其权限设为脚本,或可执行。

最后,你可以在浏览器中输入该地址http://localhost/xxx/test.shtml如果你看到浏览器中显示了他们的屏幕输入信息。那么,恭喜你。你试成功了。

四:最终幻想

如果我们想执行多的命令呢?那么闭上眼,往下看吧。

首先,你打开注册表编辑器(记住要先备份),然后找

  KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \W3SVC4  
  '也可能是w3svc  \Parameters

选择新建一个Dword值SSIEnableCmdDirective,它的两个值为0,1。下面是微软的说明。

服务器端的 #exec cmd 命令包括可执行外壳命令。安全意识强的站点希望通过将此值设置为 0 来关闭 #exec cmd命令,并以此作为外加的安全防范,尤其是在允许不受信任的使用者将文件放置到服务器时更是如此。默认状态下,注册表中不存在此值;要允许该命令执行外壳命令,必须先创建此值并将值设置为1。

还可以在添一个Dwordd值AllowSpecialCharsInShell它的两个值为0,1。下面是微软的说明。

范围:0,1 默认值:0 (禁用)

本值控制在运行批处理文件( .bat 和 .cmd 文件)时,是否允许在命令行使用[ | ( , ; % < > ] 等 Cmd.exe特殊字符。这些特殊字符可能引发严重的安全隐患。如果该项值设置为 1,心怀叵测的用户可以在服务器上随意执行命令。因此,强力推荐用户保留其默认设置0。默认情况下,这些特殊字符不能传递到脚本映射 CGI 程序。如果设置为 1,除了管道符号 | 和标准 I/O 重定向符(< 和>)之外(这两类字符在命令处理器中具有特殊含义),这些特殊字符都能够传递到脚本映射 CGI 程序。

下面我就不详述了。不过你要执行一些你希望的命令可不是这么简单(如:[an error occurred while processing thisdirective])你不会成功的,如果死机不要怨我。

(t003)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 黑客攻击之用物理攻击来实现网络入侵 (03-07) · 教你知道黑客侦察和隐藏IP地址的方法 (03-06)
· 黑客新攻击手法威胁甲骨文数据库缺陷 (03-05) · 澳大利亚黑客"恶搞"政客 警方已经介入调查 (03-05)
· 盗号黑客月入15万 如此猖獗玩家也有责任? (03-01) · 国际黑客具备组织性 网上疯狂抢钱危害巨大 (02-28)
· 修改注册表清除黑客程序保证计算机安全 (02-21) · 黑客们正醉心于研究的:拒绝服务攻击 (02-21)
· 菜鸟变黑客高手(超级经典完美整理版) (02-21) · “招安”网络黑客,网络安全为哪般? (02-16)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管