默认情况下.NET和Java、PHP一样 会话产生的SessionID存储在HTTP报文 Cookie字段,如果不想用上述的Cookie存储方式也可以改成Cookie不带SessionID这样的会话,只需要在web.config配置<SessionState>节点属性cookieless属性为true,这样.NET将会话ID随着HTTP请求附加到URL地址上。如下图
会话SessionID值(S(ybgzoikr52kbbdy5lfoqnnsl))以明文的形式发送显然是不安全的。
实战攻击在打点时遇到如下图WebShell上传后的场景还是比较常见的,访问 /(S(mwdwx5uhl2yqliv2w45c5cla))/uploads/dynamicCompilerSpy.aspx 弹出授权登录对话框如下图
以前可能就放弃或者找其他的解决办法,现在可以用URL会话ID的方式绕过,常用的Bypass Payload如下
(S(mwdwx5uhl2yqliv2w45c5cla))/up/(S(mwdwx5uhl2yqliv2w45c5cla))loads/
输入两次会话ID,并且拆解了uploads目录,这对绕过WAF等安全防护也是有用的。再次请求后成功绕过Windows身份认证返回WebShell界面如下图
为了更好地应对基于.NET技术栈的风险识别和未知威胁,dotNet安全矩阵星球从创建以来一直聚焦于.NET领域的安全攻防技术,定位于高质量安全攻防星球社区,也得到了许多师傅们的支持和信任,通过星球深度连接入圈的师傅们,一起推动.NET安全高质量的向前发展。经过运营团队成员商议一致同意给到师傅们最大优惠力度,只需129元就可以加入我们。
星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等,后续还会倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。
dotNet安全矩阵知识星球 — 聚焦于微软.NET安全技术,关注基于.NET衍生出的各种红蓝攻防对抗技术、分享内容不限于 .NET代码审计、 最新的.NET漏洞分析、反序列化漏洞研究、有趣的.NET安全Trick、.NET开源软件分享、. NET生态等热点话题、还可以获得阿里、蚂蚁、字节等大厂内推的机会.