小程序被DDOS或者CC攻击了,该怎么办?

由于手机APP或者类APP 产品是无状态请求,如果攻击者通过抓包或者反编译掌握了APP接口地址或者接口格式,就可以进行DDos或者CC攻击。对于这类攻击,最大的难题在于如何识别真实的用户。为了解决类似问题,速度网络高防IP产品推出APP_TOKEN功能,可以实现针对APP或者小程序100%拦截DDOS和CC攻

击,0误杀。

实现原理

  1. APP 每次启动后,第一条请求 务必是向高防IP的校验地址发送一条请求,并 同步等待 返回结果,如果校验通过,则会将客户端IP放入白名单,并将请求回源,APP正常启动后,不用再次请求。
  2. 如果校验不通过,则返回403状态.表明该IP为恶意IP,不再回源。
  3. 如用户端更换IP,则需要重新发送验签请求。

接入准备

  1. APP产品: 需要在APP产品的每次启动过程中增加一个请求,请求地址为:
    域名/app_token.ys?sign=AAA(AAA为具体的sign)
  2. 开启高防IP的APP_Token功能。

APP_Token功能操作流程

  1. 在”网站防护” 下某个域名的 “设置”,选择开启 通讯加密 功能
    小程序被DDOS或者CC攻击了,该怎么办?插图
    小程序被DDOS或者CC攻击了,该怎么办?插图1
  2. 开启后,会在 “高防IP”->详细 中生成APP_TOKEN
    小程序被DDOS或者CC攻击了,该怎么办?插图2
  3. APP 发送请求,如果校验成功则返回true,失败返回403

APP_TOKEN的例外链接设置

  1. APP_TOKEN 开启后,当有客户端请求时,必须先进行验签,通过后才能继续发送其他请求,否则就会被拦截。当用户端更换IP时,也需要进行再次验签。
  2. 但是对于某些链接url,如不希望受到上述规则的影响,则可以设置了APP_TOKEN的例外链接。在例外连接中的URI,不会受到APP_TOKEN规则影响。
  3. 强烈建议,该功能需谨慎使用,如发现例外链接中的URI 被CC攻击,请尽快进行移除。
  4. 设置方式和uri格式要求。
    小程序被DDOS或者CC攻击了,该怎么办?插图3
  5. 是URI而非带参数的URL,参数默认会被忽略。

签名规则和请求地址

  1. 请求地址:域名/app_token.ys?sign=AAA(AAA为具体的sign)
  2. sign规则:md5(日期+APP_TOKEN).日期格式为Y-m-d(如2020-12-07).

以下是使用PHP编写的签名规则和请求地址的实战代码:

<?php  
// 定义APP_TOKEN  
define('APP_TOKEN', 'your_app_token');  
  
// 获取当前日期  
$date = date('Y-m-d');  
  
// 根据签名规则生成签名  
function generateSign($date, $appToken) {  
    $signData = $date . APP_TOKEN;  
    $sign = md5($signData);  
    return $sign;  
}  
  
// 生成请求地址  
function generateRequestUrl($sign) {  
    $requestUrl = "http://example.com/app_token.ys?sign=" . $sign;  
    return $requestUrl;  
}  
  
// 生成请求地址并输出  
$sign = generateSign($date, APP_TOKEN);  
$requestUrl = generateRequestUrl($sign);  
echo $requestUrl;  
?>

请确保将 ‘your_app_token’ 替换为您自己的APP_TOKEN,并将 ‘http://example.com/app_token.ys’ 替换为您实际的请求域名。这段代码将根据给定的日期和APP_TOKEN生成签名,然后将其用于构建请求地址并输出。

App小程序操作流程:

在 App.json 文件中设置 APP_Token。具体步骤如下:

  1. 打开小程序的项目目录。
  2. 找到并打开 App.json 文件。
  3. 在文件内找到 “page” 字段,配置小程序页面路径。
  4. 在 “window” 字段下添加 “app_token” 项目,并设置其值为你的 APP_Token。

完成以上步骤后,保存并关闭 App.json 文件。

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
在线客服
主机帮
我们将24小时内回复。
2024-12-12 13:14:50
您好,有任何疑问请与我们联系!
您的工单我们已经收到,我们将会尽快跟您联系!
[QQ客服]
176363189
当幸福来敲门
[小黄]
17307799197
[企业邮箱]
sudu@yunjiasu.cc
取消

选择聊天工具: