微信小程序API防攻击策略

微信小程序API防攻击策略,第1张

微信小程序作为当前企业的主流应用之一。相比于APP类应用,有着轻量、快速、便利等诸多优势。不需要用户安装,微信打开即用特点。整个架构示意图如下:

微信小程序应用是在微信公众平台下发布使用,调用企业API服务均需要通过外网访问。由此带来很多API服务安全问题。黄牛党可借此API服务违规调用破坏企业业务生态,获取小程序相关业务资料,给企业带来经济损失。如何防止恶意攻击,构建稳健企业应用。成为了每一个开发设计小程序者的思考放点

黄牛黑客为了能够顺利获取资源信息,防止被阻拦在攻击过程中会有以下特点:

对访问流量请求进行防护,涵盖常见的防护策略: Bot防护 , CC安全防护 等,除此还可以制定自己的防护策略。

为防止小程序源码被爬虫获取,小程序发布时需要对源码做混淆处理。这样获取到源码也无法正常解读。

Robots.txt - 禁止爬虫

robots.txt用于禁止网络爬虫访问网站指定目录。robots.txt的格式采用面向行的语法:空行、注释行(以#打头)、规则行。规则行的格式为:Field: value。常见的规则行:User-Agent、Disallow、Allow行。

User-Agent行

User-Agent: robot-name

User-Agent: *

Disallow和Allow行

Disallow: /path

Disallow:           # 空字符串,起通配符效果,全禁止

Allow: /path

Allow:              # 空字符串,起通配符效果,全允许

搜索引擎的User-Agent对应名称

搜索引擎

User-Agent值

Google googlebot 

百度 baiduspider 

雅虎 slurp 

MSN msnbot 

Alexa is_archiver

我在Linux上抓包观察到的一些搜索引擎访问记录:

# tcpdump -n -nn -A -l -s1024 'tcp port 80'|grep User-Agent

User-Agent: Mozilla/5.0 (compatible Googlebot/2.1 +http://www.google.com/bot.html)

User-Agent: Googlebot-Image/1.0

User-Agent: Feedfetcher-Google (+http://www.google.com/feedfetcher.html 5 subscribers feed-id=4619555564728728616)

User-Agent: Mozilla/5.0(compatible Sosospider/2.0 +http://help.soso.com/webspider.htm)

User-Agent: Mozilla/5.0 (compatible YoudaoBot/1.0 http://www.youdao.com/help/webmaster/spider/ )

User-Agent: Mozilla/5.0 (compatible JikeSpider +http://shoulu.jike.com/spider.html)

JikeSpider是即刻搜索(人民搜索)。

robots.txt的补充

如果你没有对网站根目录的写入权限(无法建立robots.txt文件),或你想要某个指定的网页不被搜索引擎收录,可以使用元标签阻止爬虫访问:

<meta name="robots" content="noindex">              <!-- 阻止所有爬虫 -->

<meta name="googlerobot" content="noindex">         <!-- 阻止Google收录 -->

robots元标记的默认值为"index,follow",它的取值可以是(来自Google站长帮助):

noindex防止网页被编入索引。nofollow防止googlebot从此页面中跟踪链接。noarchive防止Google显示网页的快照链接。noimageindex不被Google图片搜索索引。

现实中的robots.txt

淘宝屏蔽百度

淘宝屏蔽了百度抓取(2008年9月),http://www.taobao.com/robots.txt的内容:

User-agent: Baiduspider

Disallow: /

User-agent: baiduspider

Disallow: /

百度与360的搜索引擎之争

2012年8月,360推出搜索引擎,并与百度发生正面冲突。百度工程师跑出来说360违反robots协议,偷窃百度内容。以百度知道为例,http://zhidao.baidu.com/robots.txt的内容大致是这样:

User-agent: Baiduspider

Disallow: /w?

Allow: /

User-agent: Googlebot

User-agent: MSNBot

User-agent: Baiduspider-image

User-agent: YoudaoBot

User-agent: Sogou web spider

User-agent: Sogou inst spider

User-agent: Sogou spider2

User-agent: Sogou blog

User-agent: Sogou News Spider

User-agent: Sogou Orion spider

User-agent: JikeSpider

User-agent: Sosospider

Allow: /

User-agent: *

Disallow: /

也就是说对360爬虫而言,应该走最后一条规则,也就是禁止抓取百度知道所有内容。但从360搜索看,有百度知道的内容。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8046560.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存