这样的类 base64 字符串该如何解码?

2018-12-03 13:38:43 +08:00
 xavierskip
这是一个 ASP.NET 网站上的请求字段,但是按照标准 base64 解码不知道是什么意思?

"/wEPDwUKLTQxOTI5ODg5NWQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgMFDlNjcmlwdE1hbmFnZXIxBQhidG5Mb2dpbgUJYnRuQ2FuY2VsGqkA3CjmnLrHACl9kd9YZpKcjSI="

"/wEWBgK3rLTDAwLB5eCpDQKl1bK4CQLKw6LdBQKC3IeGDAKQ9M/rBfddaPKySA+jkCmMpYQMOSF3L+uP"
2051 次点击
所在节点    程序员
7 条回复
xxxy
2018-12-03 13:59:34 +08:00
一般是在前几位加入随机字符串的
hihipp
2018-12-03 14:29:49 +08:00
问个问题再解答,楼主是再看 “__VIEWSTATE ” 这个字段?
mytry
2018-12-03 14:33:36 +08:00
该如何解码?以前怎么解现在还是怎么解(去掉固定前后缀)。应该问的是解码后的二进制数据代表什么,用的什么结构体等。
xavierskip
2018-12-03 14:33:55 +08:00
@hihipp 是的

__VIEWSTATE
__EVENTVALIDATION
还有一些类似的。
lhx2008
2018-12-03 14:37:56 +08:00
类 base64,有可能是用对称加密的
no1xsyzy
2018-12-03 15:05:35 +08:00
hihipp
2018-12-03 15:53:16 +08:00
@xavierskip 案情回顾:微软于 2014 年 9 月发布安全补丁 KB2905247,从 ASP.NET 4.5.2 开始,运行时( runtime )级别强制执行 EnableViewStateMac = true。

这个参数意义是视图状态(__VIEWSTATE )数据进行加密、解密和验证。

对算法、密钥进行配置
https://docs.microsoft.com/zh-cn/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)

从这里看出,默认加解密算法是 AES,默认密钥是由服务器自动生成。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/513804

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX