首页
学习
活动
专区
圈层
工具
发布

美团面试:接口被恶意狂刷,怎么办?

下面是原本面试现场: 面试官:接口被恶意狂刷,怎么办? 我:这个没搞过(每天CRUD,真的没搞过) 面试官:如果现在让你来设计,你会怎么设计?...为了不让大家也和我有同样的遭遇,今天,咱们就用一个非常简单的方式实现防刷: 一个注解搞定防刷 技术点 涉及到的技术点有如下几个: 自定义注解 拦截器 Redis的基本操作 Spring Boot项目...boolean login = accessLimit.needLogin(); String key = request.getRequestURI(); //防刷=...首先,我们创建一个简单的controller,然后,在方法上加上我们自定义的注解AccessLimit,就可以实现接口防刷了。...总结 关于接口防刷,如果在面试中被问到,至少还是能说个123了。也建议大家手动试试,自己搞出来了更带劲儿。 好了,今天就分享到此,如果对你有帮助,记得点赞、分享、在看。

1K20

接口被狂刷怎么处理

接口被狂刷怎么处理"紧急止损→多层防御→监控复盘"第一步:紧急止损(先保命!...、攻击方式、防护漏洞,输出复盘报告并优化防护策略总结接口防刷不是单点问题,而是系统性工程。...假设咱们刚上线一个领券活动,现在发现接口被狂刷,疑似有人用脚本疯狂抢券。你作为后端开发,会怎么从系统层面入手去分析和防御?‍候选人:首先我不会一上来就加代码,会先界定一下“狂刷”到底是哪种类型。...面试官:如果攻击者换IP或者用肉鸡,业务层还能怎么办?‍...这样即使脚本伪造RequestId,拿不到合法Token也没法刷。这个点经常在面试里被忽略,但线上特别重要。‍面试官:非常有深度。

18710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    接口被刷百万QPS,怎么防?

    有些小伙伴在工作中可能经历过接口被刷的噩梦,但百万QPS量级的攻击完全是另一个维度的战争。 今天这篇文章跟大家一起聊聊接口被刷百万QPS,如何防御,希望对你会有所帮助。 为什么百万QPS如此致命?...Drools风控规则示例: rule "高频访问敏感接口"     // 规则元数据     salience // 优先级     no-loop true// 防止规则循环触发          /.../ 条件部分     when         $req : Request(             path == "/api/coupon/acquire", // 敏感接口            ...限流阈值静态设置的灾难 场景:设置固定5000QPS阈值 问题:大促时正常流量超阈值被误杀 优化方案: // 动态阈值调整算法 public class DynamicThreshold {     /

    1.1K10

    短信接口被狂刷怎么处理

    短信接口被狂刷怎么处理"紧急止损→多层防护→业务优化→监控复盘"第一阶段:紧急止损(黄金30分钟)先把问题压下来,避免损失扩大,这是优先级最高的操作:立即降级:通过配置中心将短信接口切换为"测试模式",...业务侧优化(从根源解决)技术防护只能治标,业务逻辑优化才能治本:频次限制:同一手机号60秒内只能发1次,24小时内最多5次,1个月内最多20次场景隔离:注册、登录、找回密码等不同场景分别限流,避免一个场景被刷影响全局验证升级...A:结合设备指纹、手机号、行为特征进行多维度风控,而不仅仅依赖IPQ:Redis挂了怎么办?...白名单机制放行内部测试和老用户3.误判申诉通道快速恢复虚拟号/物联网卡批量注册攻击者使用低成本虚拟号码运营商号码校验1.对接三大运营商号码库2.过滤170/171/162等虚拟号段3.高风险号码要求实名认证短信接口被...,高风险用户用短信,低风险用户用验证码,降低短信成本真实面试模拟真实面试模拟面试官:来,咱们聊个很接地气的线上问题——短信接口被狂刷,你会怎么处理?

    24210

    网站被攻击怎么办

    网站被攻击,首先牵扯到的就是网站的开发语言,包括了代码语言,以及数据库语言,目前大多数网站都是使用的PHP,JAVA,.net语言开发,数据库使用的是mysql,oracle等数据库,那么网站被攻击了该怎么办...运营一个网站,总被攻击是时有发生的,尤其一些公司网站,以及个人建站,都是没有专职的安全技术人员维护,导致网站经常被攻击,经常被跳转到bo彩,cai票,du博网站上去,甚至有些网站都被挂马,网站首页标题也被篡改...那么我们SINE安全针对网站被攻击的问题,来跟大家讲讲该如何处理,解决这样的问题。...网站被攻击的症状如下: 1.目前2019年网站被攻击的症状最常见的是,打开网站会自动跳转到一个bo彩,cai票,du博网站上去,网站的首页文件经常被篡改,首页的标题以及描述都会被改成什么北京sai车,北京...网站被攻击怎么办? 该怎么处理?

    4.9K40

    应用被强杀了怎么办

    应用在后台运行时很容易被强杀,这很正常,但是回到前台时,很容易出现空指针的情况。怎么解决这样的问题,且看看Stay的见解。 我们先跳出来看看android的app运行原理。...app在后台被强杀,是在内存不足的情况下被强制释放了,也有一些恶心的rom会强制杀掉那些后台进程以释放缓存以提高所谓的用户体验。...当应用被强杀,整个App进程都是被杀掉了,所有变量全都被清空了。包括Application实例。更别提那些静态变量了。 2. 虽然变量被清空了,但Android给了一些补救措施。...activity栈没有被清空,也就是说A -> B -> C -> D这个栈还保存了,只是ABCD这几个activity实例没有了。所以回到App时,显示的还是D页面 3....另外当activity被强杀时,系统会调用onSaveInstance去让你保存一些变量,但我个人觉得面对海量的静态变量,这个根本不够用。 4.

    1.5K20

    SpringBoot API 接口防刷

    API 接口防刷 顾名思义,想让某个接口某个人在某段时间内只能请求N次。 在项目中比较常见的问题也有,那就是连点按钮导致请求多次,以前在web端有表单重复提交,可以通过token 来解决。...(包括注解类型) 或enum声明 * @Retention定义了该Annotation被保留的时间长短:某些Annotation仅出现在源代码中,而被编译器丢弃; * 而另一些却被编译在class文件中...;编译在class文件中的Annotation可能会被虚拟机忽略, * 而另一些在class被装载时将被读取(请注意并不影响class的执行,因为Annotation与class在使用上是被分离的)。...在class文件中有效(即class保留) *     3.RUNTIME:在运行时有效(即运行时保留) * * @Inherited * 元注解是一个标记注解,@Inherited阐述了某个被标注的类型是被继承的...Class 参数所表示的类或接口是否相同,或是否是其超类或超接口 * isAssignableFrom()方法是判断是否为某个类的父类 * instanceof关键字是判断是否某个类的子类

    2.6K20

    网站被CC攻击了怎么办

    就是模拟多个用户(多少线程就是多少用户)不停地进行访问那些需要大量数据操作(就是需要大量CPU时间)的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直至就网络拥塞,正常的访问被中止...并且在发出请求后,立刻断掉与代理的连接,避免代理返回的数据将本身的带宽堵死,而不能发动再次请求,这时 WEB 服务器会将响应这些请求的进程进行队列,数据库服务器也同样如此,这样一来,正常请求将会被排在很后被处理...若域名受到CC攻击,则被攻击的域名解析值可以达到127.0.0.1。众所周知,127.0.0.1是用于网络测试的本地环回IP地址。...当被攻击的域名被解析到这个IP时,攻击者就可以自我攻击了,不管有多少鸡群或者代理被关闭。五、部署高度防御CDN。

    3.4K10
    领券