前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >广告联盟设计踩坑

广告联盟设计踩坑

作者头像
心平气和
发布2020-09-11 11:30:04
9450
发布2020-09-11 11:30:04
举报

一、背景及经过

现在市面上有一些广告联盟,运作方式是他们帮你引导用户,用户下单时返佣金给他们,这也是一些网站常用的推销方式。

最近一朋友公司也用这种方式推广,第一个月跑的好好的,第二个月发现数据猛增,差不多60%的订单都是广告联盟推荐过来的,当时就觉得有问题,然后通过一系列的分析发现,系统本身的设计有漏洞,这里抛砖引玉一下。

系统的设计流程如下:

假设朋友公司的网站是ab.com,则访问流程如下;

1、用户访问广告联盟的广告链接;

2、广告联盟将本身的标识将自己标识加在ab.com之后,类似 https://ab.com?adId=123;

3、ab.com将广告联盟标识即123写入cookie中,作用域为ab.com;

4、用户在ab.com上下单;

5、保存订单时,系统将123的广告联盟标识保存到订单中,以标识这个订单来自广告联盟的推荐。

其中2这一步有个中转页,即用户从广告联盟跳转过来的都到这个页面,这个页面只做一件事情,即确认是否来自广告联盟,如果是则将这个标识写入到cookie中。

问题就出现在这一步,经过我们分析日志,发现订单异常的那个月大量的来自广告联盟的链接的Referer都来自一个访问量比较大的社区,并且是以图片的形式访问!!

假设中转页的地址是 https://abc.om/ad/redirect,则广告联盟通过以下方式伪造图片:

代码语言:javascript
复制
<img src="https://abc.om/ad/redirect?adId=123"

然后联盟在社区发一个热门的帖子,帖子中插入上述图片,这样所有访问这个页面的用户,都会往ab.com写入cookie,这样只要这些用户再访问朋友的网站,则系统都认为是来自广告联盟的。

二、解决方案

问题的原因知道了,那怎么解决呢,既然后端写cookie不可靠,就由前端来写Cookie,即用户在访问 ab.com下的任何一个页面的时候,前端有个公共的js会检测url中是否有带上广告联盟标识,如果有,则将标识写入Cookie中,并且设置Cookie为httponly。

写在最后:

1、这次主要还是在数据上发现了问题,所以监控非常重要。

2、与第三方交互写敏感Cookie尽量由前端写,后端验证;

3、涉及到钱的场景最好是有安全测试;

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员升级之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
手游安全测试
手游安全测试(Security Radar,SR)为企业提供私密的安全测试服务,通过主动挖掘游戏业务安全漏洞(如钻石盗刷、服务器宕机、无敌秒杀等40多种漏洞),提前暴露游戏潜在安全风险,提供解决方案及时修复,最大程度降低事后外挂危害与外挂打击成本。该服务为腾讯游戏开放的手游安全漏洞挖掘技术,杜绝游戏外挂损失。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档