首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

libSSH 认证绕过漏洞(CVE-2018-10933)分析

; 995 session->flags |= SSH_SESSION_FLAG_AUTHENTICATED; 正常情况下,在SSH登录成功后,libSSH给session设置了认证成功的状态,SSH...服务端编写的人给自己定义的标志位设置为1: sdata->authenticated = 1; 利用该漏洞绕过验证,服务端的流程: ssh_packet_userauth_success: SSH_LOG...; session->flags |= SSH_SESSION_FLAG_AUTHENTICATED; 可以成功的把libSSH的session设置为认证成功的状态,但是却不会进入auth_password...,该变量再之前说了,该漏洞绕过的认证,只能把session设置为认证状态,却无法修改SSH服务端开发者定义的sdata.authenticated变量,所以该循环将不会跳出,直到n = 100的情况下,...如果想getshell,有两种修改方式: 1.删除sdata.authenticated变量 533 while (sdata.channel == NULL) { ...... 544 }

1.4K20

shiro源码篇 - 疑问解答与系列总结,你值得拥有

回答这个问题之前,我们先看看另外一个问题: 上篇博文中讲到了登录认证成功后会将subject的authenticated设置成true,表示当前subject已经被认证过了,但是只是当前subject;...为什么获取subject的authenticated,而不是直接获取session的认证状态,我还没弄清楚为什么,难道是为了组件的分工明确?...我们知道登录成功后,subject的authenticated会被赋值成true,但是登录成功后的其他请求,比如:http://localhost:8080/own/index,subject的authenticated...可以看到,在创建subject的时候,会将session中的认证状态赋值给subject的authenticated。     ...可以看到,请求进过SpringShiroFilter时,subject中authenticated被设置成false,然后生成ProxiedFilterChain ?

37350
领券