ocserv auth hacking

2015-05-31 13:51:45 +08:00
 horsley
不知道其他跟我一样使用ocserv(anyconnect)的同学有没有这样一个疑惑
在移动端anyconnect没办法保存密码,每次都需要手工输入
而且用户名密码还要分两次提示输入

研究了一下认证过程,目前写了一个小的hack:
第一:hack认证表单,让用户名密码在一次提示中输入,并能正常认证使用
第二:这是重点!anyconnect移动端是支持anyconnect这个scheme唤起并且传参,预填充用户名密码

那么,我么可以把这个唤起的URL放到其他地方,例如说一个可以保存密码的,带有鉴权的web页面上。而且这个东西也可以把鉴权引出来做些别的东西,例如一次性密码什么的。

由于mitm 所以存在内存拷贝次数加倍的问题。gist中只是展示了思路,后面再完善。

https://gist.github.com/horsley/e286276f83cae9b60d98
4652 次点击
所在节点    分享创造
6 条回复
Leafove
2015-05-31 13:57:58 +08:00
要不用输入密码直接换成证书验证就可以了
horsley
2015-05-31 14:30:34 +08:00
@Leafove 手机加客户端证书好像又要设置锁屏密码什么的,而且网上教程都是自签的做法,我用的是正规证书不知道怎么弄
rwzsycwan
2015-05-31 16:05:12 +08:00
@horsley 自己签一个证书用来验证
server-cert 与server-key 填正规证书,底下还有一个ca-cert 填自己签的ca,
Yien
2015-05-31 18:11:06 +08:00
@rwzsycwan 好像用了證書就不能用radius了是嗎?
rwzsycwan
2015-05-31 18:56:16 +08:00
@Yien 额 没研究过radius
bao3
2015-06-03 17:33:08 +08:00
这个hack就不要浪费时间了,直接换成CertAuth方式,不需要radius。另外,android需要强制锁屏密码的问题,其实是你倒入证书的姿势不对或者apk不对。客户端倒入p12证书,android系统不会要求你设置PIN或者密码的。

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

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

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

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

© 2021 V2EX