山东企业微信

山东企业微信应用安全隔离机制

时间:2021-04-10 16:42:11

山东企业微信

企业微信没有为应用之间提供隔离机制。当用户在企业微信内和企业应用进行交互的时候,企业应用后台API是不知道当前请求是从哪个应用客户端产生的。而对于不同的应用,企业微信都是打开webview进行服务,所以应用就有机会使用其他应用的cookie。如下图所示,应用B有可能利用应用A的cookie来访问Server A.其可能的过程如下:

1)用户访问企业应用A并通过认证,在企业微信webview中会生成对应的cookie A,其中包含有用户的认证标识;

2)用户访问企业应用B,假设企业应用B是恶意程序并知道Server A的相关URL,则企业应用B有机会重定向前端去访问server A;

3)根据浏览器机制,该访问会自动带上cookie A。由于cookie A中存有用户的合法认证信息,server A会认为这是一个合法访问从而执行对应的操作。而实际上该操作是用户并不知情的一个恶意操作。

如果企业微信提供标识或者机制使得企业应用后台能够验证当前请求是否来自于正确的应用客户端,将会使应用之间隔离性更好,更加安全。否则应用就需要添加格外的机制去做相应的防范,如添加CSRF token。ABC WeChat也是通过在后台server验证CSRF token实现了对上述跨站攻击的防御。