使用 Azure WAF 羞辱黑客的智商

点击上方蓝字关注“汪宇杰博客”

导语

还记得之前给大家介绍过的《使用 Azure Web 应用防火墙拦截黑客攻击》吗?今天我又带来了一个有趣的 Azure WAF 小技巧,可以让你爽一把。

好奇的黑客

今天 Azure Application Insights 上发现了一段集中时间的404错误,点进去一看,是有人正在请求我博客根目录下不存在的资源导致的。

观察 pattern 后发现这些请求在尝试下载我博客的网站目录。看起来都是这样的:

还有这样的:

以及更搞笑的拼音

甚至还有想要盗窃源代码的(大哥,我这是个开源的系统啊):

起初我以为是个自动扫描网站漏洞的机器人,但是根据 Azure Application Insights 提供的详细数据以及 WAF 日志发现,这些请求并不是几秒内发生的,而是相隔2-5秒请求,不像机器人,来源地是中国某港。

大哥,不是所有的大陆人都是用百度云把网站目录同步到服务器上解压部署的……

于是我决定逗他玩玩。

整人方案

目前网站对于这些找不到的文件只会返回404,太没意思了。想要玩转黑客,可以有这么几种做法:

蜜罐

蜜罐通常伪装成看似有利用价值的网络、资料、电脑系统,并故意设置了bug,用来吸引黑客攻击。由于蜜罐事实上并未对网络提供任何有价值的服务,所以任何对蜜罐的尝试都是可疑的。蜜罐中还可能装有监控软件,用以监控黑客入侵后的举动。

蜜罐在拖延黑客攻击真正目标上也有一定作用。不过黑客可能发现一个电脑系统是蜜罐,进而提前退出。

架设蜜罐的成本较高,我不想996,因此放弃此方案。

假数据

一个简易版蜜罐。例如对于 beifen.zip,返回一个真实的zip文件,文件内容看似网站代码,但其实无关。让黑客996于代码的海洋中无法自拔。

也可以在假zip中设置几个关卡,例如弱口令,当黑客996暴力破解后,发现里面是一万个 fuck.txt,气晕在厕所。

这个方案对于网站服务器或CDN的带宽资源有所消耗,黑客被气到后,可能批量请求 beifen.zip 榨干我的流量,因此放弃。

Exploit

如果你的技术高超,完全可以做个exploit,黑客一旦打开 beifen.zip 就会执行代码,从而变成你的肉鸡。这时候,给他执行个灭霸脚本,岂不爽歪歪?

https://github.com/hotvulcan/Thanos.sh

可惜我没有那样的本领,无奈放弃此方案。

重定向

有些服务器对于恶意请求,会重定向到 127.0.0.1 或者 localhost,从而将黑客的攻击还治其人之身。

但更有意思的是,我们可以重定向准备好的羞辱页面,甚至其他网站。这是成本最低的羞辱方案,说干就干!

能点鼠标的,绝不写代码

尽管我们可以通过修改网站代码来实现针对 *.zip, *.rar, *.7z 等资源进行重定向,但作为使用 Azure 的有钱人,能点鼠标实现的,我绝对不会自己996写代码。

Azure WAF 可以帮助我们1分钟就配置完重定向操作,不需要修改任何代码,不需要重新部署网站。这才是有钱人的风格。

进入 WAF 管理界面,进入 Settings 下的 Custom rules,然后点击 + Add custom rule

给它一个名称,例如 BlockZip。Status 选 Enabled,Rule type 选 Match。Priority 给一个未被其他 rule 使用的值即可。

Condition 是该规则的触发条件。我们需要匹配所有 *.7z, *.rar, *.tar.gz, *.zip 的请求,配置如下:

最后的动作中,我选择 Redirect traffic,将URL设为一个友好的百度百科页面。

保存规则,WAF 数分钟后就会生效。

效果

现在访问 https://edi.wang/beifen.zip 试试?

发现请求结果不再是 404,而是302重定向,并且header里给出了Azure WAF的日志参考ID。

而重定向后的页面就是:

黑客只能气晕在厕所。

哎,有钱人的云,就是可以为所欲为的。

汪宇杰博客

Azure | .NET | 微软 MVP

无广告,不卖课,做纯粹的技术公众号

喜欢本篇内容请点个在看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306357.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习之乳腺癌问题(SVM)

机器学习之乳腺癌问题SVM题目所需的代码及数据利用SVM建模SVM调参题目所需的代码及数据 链接:https://pan.baidu.com/s/1bS7Ku_PUfcimiVkmLz9Fzw 提取码:0929 利用SVM建模 import matplotlib.pyplot as plt import pandas as pd import numpy as npfro…

如何将日志记录到 Windows事件日志 中

每当出现一些未捕获异常时,操作系统都会将异常信息写入到 Windows 事件日志 中,可以通过 Windows 事件查看器 查看,如下图:这篇文章将会讨论如何使用编程的方式将日志记录到 Windows 事件日志 中。安装 EventLog 要想在 .NET Core…

【Java】springboot

文章目录 Spingboot1、起步依赖2、构建springboot工程jar包3、springboot配置文件4、多环境配置5、maven和boot多环境兼容问题6、配置文件分类7、springboot整合mybatis Spingboot springboot用来简化spring的初始搭建以及开发过程。 比方说,创建一个springmvc程序…

数据科学与python语言——Matplotlib数据可视化基础

Matplotlib数据可视化基础一.读取数据与数据处理阶段1.提取指定行中的数据2.得到>指定数值的数据3.得到指定值得数据4.整体的数据处理:二.画图函数1.plt.subplots()2.plt.subplots_adjust()3.设置x轴y轴的刻度和标签4.使用中文标题在作图时三.画折线图(plot)四.画…

2021年,Azure云遇到. NET5,注定开启高光时刻,微软的心,真大!

云开发诞生的市场背景云开发是一个已经存在了很多年的概念,但在过去未能真正成为主流。然而,由于云和软件即服务的宏观趋势的结合,以及技术的进步,如容器技术 Docker 和 Kubernetes,云开发现在有机会最终成为基于云的应…

.net5+nacos+ocelot 配置中心和服务发现实现

相关文章:手动造轮子——为Ocelot集成Nacos注册中心出处:https://www.cnblogs.com/buruainiaaaa/p/14121176.html作者:唐 最近一段时间 因公司业务需要,需要使用.net5做一套微服务的接口,使用nacos 做注册中心和配置中…

数据科学与python语言——Pandas统计分析基础(时间转换+聚合)

Pandas统计分析基础(时间转换聚合)实验要求一实验二要求全部代码实验要求一 #M表的时间戳类型转为datetime data_Mete[TIMESTAMP]pd.to_datetime(data_Mete[TIMESTAMP],format%Y%m%d%H%M%S)data_VI[Date]pd.to_datetime(data_VI[Date],format%Y/%m/%d) p…

容器的那点事

当我们的后端服务器不够用的时候,我们可以通过容器技术,可以快速的把这些服务器全部虚拟出来, 当然这个虚拟跟虚拟机是不一样的,比虚拟机的方式快多了,早期阿里的淘宝平台如果整个坏掉了,重新搭建部署起来需…

lqb——修改数组

思路 **常规思路用哈希表的思想,设置bool数组标识是否被占用过,但是发生矛盾时将会造成查找需要遍历整个数组,比如,1,2,3……100000已连续占用,此时再插入1,将会一直遍历这100000个数,极端情况下,插入100000个1,将是n平方的复杂度。 如何快速查找到插入位置,这就引…

bp神经网络训练_数据分析模型6——神经网络基础(人工智能的底层模型)

未经许可请勿转载更多数据分析内容参看这里今天我们来学习人工智能的底层模型——神经网络(NEURAL NETWORKS),现在比较热门的一个模型是深度学习,深度学习的基础也是神经网络,要学好深度学习,神经网络不了解…

四种最令人讨厌的编程语言:Java、Javascript、C++和Perl

喜欢就关注我们吧!TIOBE 12 月榜单已于日前公布,在最新的排行榜中,C 语言仍高居榜首,其次分别是 Java、Python 和 C。在编程语言这一领域中,许多编程语言都会随着时间的推移而经历人气的激增,以及历史迭代之…

微软用的工具,统一财务三大表及高级分析通用模板

虽然罗叔并非财务专业,但大概了解一些财务常识。例如财务报表的三大报表以及一些常见分析等。本月《BI真经》视频课程即将就绪,后续罗叔将和大家开展更多的业务研究。我们知道,PowerBI 在绘制某些报告时候很难,初学者根本无法实现…

文件 单片机_如何查看你写的单片机程序有多大?

单片机我们都用过,我们知道单片机的FLASH有4K的,有8K的,单片机程序我们也写过,但是我们写好的程序有多大,你知道吗?程序写好并编译后生成hex文件,这个hex文件就是要下载到单片机里的文件&#x…

css less 不要作用到子对象_使用Less实现网站主题切换

v-easy-components change theme很多初学前端的开发同学一定有一种想法,就是如何更改网站的主题。前年(2018),我也陷入了思考,如何切换网站主题呢?当时不知道less,只想到一种办法,就…

展望2021,Java、Go、.NET,谁主沉浮?

伴随着年底.NET社区活动,近日跟几位微软MVP大佬聊天请益,收获颇丰。程序员都有个话题避不开,就是各编程语言的优劣,大佬们的见识既有意思也有深度,这里为大家整理一下,其中Java、Golang和.NET是讨论焦点。J…

labuladong 的算法小抄_关于算法笔试的几个套路,一点就透

以下文章来源于labuladong ,作者labuladong我知道各位是被标题吸引进来的,那就不废话,先说几个算法笔试的硬核套路,再说说语言选择和做题复习的策略。避实就虚大家也知道,大部分笔试题目都需要你自己来处理输入数据&am…

TVP两周年:携手同行,让未来可见

TVP两周年2018年12月15日,在北京的腾讯云社区开发者大会上,作为腾讯云构建开发者生态的重要战略,TVP计划正式发布。2020年12月15日,不知不觉,腾讯云TVP已经走过了两度春秋。从0到1的探索,1到10的成长&#…

加密封装 怎么把_不要再封装各种Util工具类了,这个神级框架值得拥有!

Hutool 谐音 “糊涂”,寓意追求 “万事都作糊涂观,无所谓失,无所谓得” 的境界。Hutool 是一个 Java 工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以 “…

Oh my God, Swagger API文档竟然可以这样写?

最好的总会在不经意间出现。“作为后端程序员,免不了与前端同事对接API, 一个书写良好的API设计文档可有效提高与前端对接的效率。为避免联调时来回撕逼,今天我们聊一聊正确编写Swaager API文档的姿势。基础Swagger用法在ConfigureServices配…

vue 前端设置允许跨域_web 前端的一些小问题

关于vue使用axios post发送json数据跨域请求403的解决方法:1. 问题vue开发的时候,使用axios跨域发送请求,同时post发送的数据格式是json格式,发送出去的时候发现控制台报错403,返回的信息提示是跨域的问题,…