【VB技巧】VB URL编码与解码

admin 2021年4月3日19:10:42评论345 views字数 1379阅读4分35秒阅读模式

VB URL编码与解码

网上搜到的基本都有问题,编码不正常。这个是自己修改过的完全正常。

Public Function UrlEncoding(StrX As String) As String 'URL编码
On Error GoTo over
Dim i, StrReturn As String, Thischr, Innercode
    StrReturn = ""
    For i = 1 To Len(StrX)
        Thischr = Mid(StrX, i, 1)
        If Abs(Asc(Thischr))
            If Thischr = " " Then
                StrReturn = StrReturn & "+"
            ElseIf InStr("!""#$%&'()*+,/:;?@[]^`{|}~%", Thischr) > 0 Then
                StrReturn = StrReturn & "%" & Hex(Asc(Thischr))
            Else
                StrReturn = StrReturn & Thischr
            End If
        Else
            Innercode = Asc(Thischr)
            If Innercode
            StrReturn = StrReturn & "%" & Hex((Innercode And &HFF00) &HFF) & "%" & Hex(Innercode And &HFF)
        End If
    Next
UrlEncoding = StrReturn
Exit Function
over:
UrlEncoding = ""
End Function
---------------------------------------------------------------------
Public Function URLDecode(ByRef strURL As String) As String 'URL解码
Dim I As Long

If InStr(strURL, "%") = 0 Then URLDecode = strURL: Exit Function

For I = 1 To Len(strURL)
If Mid(strURL, I, 1) = "%" Then
If Val("&H" & Mid(strURL, I + 1, 2)) > 127 Then
URLDecode = URLDecode & Chr(Val("&H" & Mid(strURL, I + 1, 2) & Mid(strURL, I + 4, 2)))
I = I + 5
Else
URLDecode = URLDecode & Chr(Val("&H" & Mid(strURL, I + 1, 2)))
I = I + 2
End If
Else
URLDecode = URLDecode & Mid(strURL, I, 1)
End If
Next
End Function

文章来源于lcx.cc:【VB技巧】VB URL编码与解码

相关推荐: Bypass xss过滤的测试方法

0x00 背景 本文来自于《Modern Web Application Firewalls Fingerprinting and Bypassing XSS Filters》其中的bypass xss过滤的部分,前面有根据WAF特征确定是哪个WAF的测试方法…

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年4月3日19:10:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【VB技巧】VB URL编码与解码https://cn-sec.com/archives/320098.html

发表评论

匿名网友 填写信息