浅析 Kerberos 认证过程以及黄金票据和白银票据

0X00 前言

玩 Windows 域渗透的时候经常会听到的就是黄金票据和白银票据的利用了(虽然比较老的技术,但是始终是强力的武器)。这两个概念是在 kerberos 的认证过程中出现的,咱们先不谈利用,就是从理解整个流程上看也是比较困难的,因为kerberos 的认证过程确实是比较复杂的,不仅记不住,而且可能看了又看最后还没找到整个过程中哪个是黄金票据哪个又是白银票据,我个人也是这样,于是才有了这篇文章。

0X01 Windows 的认证协议

Windows 的认证协议主要有两种,一种是 NTLM 另一种是 Kerberos

1.NTLM

NTLM 的认证机制是一种基于挑战、应答的Windows 早期的认证机制,因为其安全性不高,于是从 Windows 2000 开始已经默认不再使用,而是使用了 Kerberos 其作为域的默认认证协议,因为和本文关系不大,所以这里就不详细介绍了。

2.Kerberos

相对于ntlm而言,kerberos的认证方式就要复杂的多,因为它提供了一个集中式的认证方式,在整个认证过程中总共要涉及到三方:客户端、服务端和KDC(Kerberos起源于希腊神话,是一支守护着冥界长着3个头颅的神犬,在keberos Authentication中,Kerberos的3个头颅代表中认证过程中涉及的3方),在Windows域环境中,KDC的角色常常由DC(Domain Controller)来担任,Kerberos是一种基于票据的认证方式,票据(Ticket)是用来安全的在认证服务器和用户请求的服务之间传递用户的身份,同时也会传递一些附加信息,用来保证使用Ticket的用户必须是Ticket中指定的用户,Ticket一旦生成,在生存时间内可以被Client多次使用来申请同一个Server的服务(票据窃取问题)

下图是 Kerberos 的认证过程示意图:

此处输入图片的描述

Read More

C&C控制服务的设计和侦测方法综述(Drops from wooyun)

这篇文章总结了一些我在安全工作里见到过的千奇百怪的C&C控制服务器的设计方法以及对应的侦测方法,在每个C&C控制服务先介绍黑帽部分即针对不同目的的C&C服务器设计方法,再介绍白帽部分即相关侦测办法,大家来感受一下西方的那一套。这里的白帽部分有一部分侦测方法需要一些数据和统计知识,我也顺便从原理上简单讨论了一下用数据进行安全分析的方法,从数学和数据原理上思考为什么这么做,可以当作数据科学在安全领域的一些例子学习一下。

0x00 什么是C&C服务器

C&C服务器(又称CNC服务器)也就是 Command & Control Server,一般是指挥控制僵尸网络botnet的主控服务器,用来和僵尸网络的每个感染了恶意软件(malware)的宿主机进行通讯并指挥它们的攻击行为。每个malware的实例通过和它的C&C服务器通讯获得指令进行攻击活动,包括获取DDoS攻击开始的时间和目标,上传从宿主机偷窃的到的信息,定时给感染机文件加密勒索等。

Read More

如何使用 DOM XSS 来绕过 CSP 的 nonces 机制(半机翻有删增)

0X00 前言

CSP nonces 在对抗 DOM XSS 方面似乎并没有所谓的奇效。你可以通过几种方法绕过它们。我不知道如何修复,也许不应该修复。

谢谢你的阅读。这篇博文讲述了CSP nonces 的绕过方法,从一些背景开始,接着介绍在几种情况下如何绕过CSP nonces,并以一些评论结束。和往常一样,这篇博文是我对这个主题的个人看法,我很想听听你的看法。

0X01 我与CSP的关系,”错综复杂”

我以前喜欢Content-Security-Policy。大约在2009年,我曾经非常兴奋。我的兴奋程度很高,我甚至花了很多时间在我的ACS项目中用JavaScript实现CSP(据我所知,这是第一个正在运行的CSP实现/原型)。它支持哈希和白名单,我真的相信它会很棒!

但有一天,我的一位来自elhacker.net(WHK)的朋友指出,使用JSONP可以简单地规避ACS(以及扩展的CSP)。 他指出,如果你将包含JSONP端点的主机名列入白名单,那么安全机制就会被破坏,确实有很多这样的情况,以至于我没有看到解决这个问题的简单方法,我的心碎了

快进到2015年,Mario Heiderich做了一个很酷的XSS挑战,名为“Sh*t,it’s CSP!”,其中的挑战是以最短的有效载荷逃离一个看似安全的CSP。不出所料,JSONP出现了(但也是Angular和Flash)。

Read More

无脚本攻击 - 在不触碰窗台的情况下偷取馅饼(半机翻有删增)

摘要

由于其高实际影响,跨站点脚本(XSS)攻击引起了安全社区成员的广泛关注。同样,提出了过多或多或少有效的防御技术,解决了XSS漏洞的原因和影响。因此,攻击者通常无法在多个现实场景中注入甚至执行任意脚本代码。

在本文中,我们研究了在XSS之后仍然存在的攻击面,并且通过阻止攻击者执行JavaScript代码来减少类似的脚本攻击。我们解决了攻击者是否真的需要JavaScript或类似功能来执行针对信息窃取的攻击的问题。令人惊讶的结果是,攻击者还可以滥用层叠样式表(CSS)与其他Web技术(如纯HTML,非活动SVG图像或字体文件)一起使用。通过几个案例研究,我们引入了所谓的无脚本攻击,并证明攻击者可能不需要执行代码从受到良来好保护的网站中提取敏感信息。更确切地说,我们表明攻击者可以使用看似良性的功能来构建侧通道攻击,以测量和泄露给定网站上显示的几乎任意数据。

我们在本文结束时讨论了针对此类攻击的潜在缓解技术。此外,我们还实施了一个浏览器补丁,使网站能够做出关于在分离视图或弹出窗口中加载的重要决定。这种方法证明对于防止我们在此讨论的某些类型的攻击很有用。

Read More

论白名单的不安全性与内容安全策略的未来(半机翻有删增)

摘要

内容安全策略是一种Web平台机制,旨在缓解现代Web应用程序中的顶级安全漏洞跨站点脚本(XSS)。在本文中,我们仔细研究了采用CSP的实际好处,并在实际部署中识别出重要的aws,导致所有不同策略的94.72%被绕过。

我们的互联网范围内的分析基于来自超过10亿个主机名的大约1000亿页的搜索引擎语料库;结果涵盖了1,680,867个主机上的CSP部署,以及26,011个独特的CSP策略(迄今为止最全面的研究)。我们介绍了CSP规范的安全相关方面,并对其威胁模型进行了深入分析,重点关注XSS保护。

我们确定了三种常见的CSP绕过类并解释了它们如何破坏策略的安全性。

然后,我们转向对因特网上部署的策略进行定量分析,以了解其安全性。我们观察到15个域中最常用于加载脚本的白名单中有14个包含不安全的端点;因此,75.81%的不同策略使用允许攻击者绕过CSP的脚本白名单。总的来说,我们发现94.68%的试图限制脚本执行的策略是无效的,99.34%的CSP主机使用的策略对预防XSS没有好处

最后,我们提出了 “strict-dynamic” 关键字,这是对规范的补充,有助于创建基于加密nonces的策略,而不依赖于域白名单。我们讨论了在复杂应用程序中部署这种基于随机数的策略的经验,并为Web开发者提供了改进其策略的指导。

介绍

Read More

JSONP 劫持原理与挖掘方法

0X00 前言

最近打算看一些前端方面的东西,琢磨着从哪里开始看起,正好想到之前我还有一篇 由浅入深理解 jsonp 并拓展 这样的文章,主要介绍的是 jsonp 的概念,利用思路还没有讲,于是干脆就接着写这个话题吧。

0X01 什么是 JSONP 劫持

由于之前的那篇文章已经详细介绍过 jsonp 的工作原理,所以这里就不再详细介绍原理了,就简单的说一下:

JSONP 就是为了跨域获取资源而产生的一种非官方的技术手段(官方的有 CORS 和 postMessage),它利用的是 script 标签的 src 属性不受同源策略影响的特性,

Read More

爬虫爬取动态网页的三种方式简介

0x00 前言

最近在看类似的问题的时候找了一些资料,发现网上有一篇文章写得很详细(准确的说是分成三篇文章写的),特别是手工逆向的方式还是挺有趣的,我也照着他的方式尝试了一下,学到一点东西,下面是这三篇文章的部分内容(有删改,外加其它的一些理解),如果想看原文的话,我在本文最后会附上原文的链接,至于目前最流行的使用 chrome headless 写动态爬虫的方法,由于原作者写的也不是很仔细,所以我还要再找些资料仔细研究一下,后面再写一篇文章总结。

0X01 动态网页简介:

在我们编写爬虫时,可能会碰到以下两种问题:

Read More

《白帽子讲 web 扫描》 阅读记录(下)

0X04 应用指纹识别

1.概念

应用指纹,其实是Web 应用的一种身份标识,具有唯一性。在Web 应用的开发过程中,为了提高开发的效率和系统的稳定性,通常会用到一些成熟、稳定的第三方环境、程序、框架或服务等,而这些第三方内容的名称或标识就是这里所说的应用指纹。

2.应用指纹种类及识别

对于一个简单的Web 应用而言,它所涉及的应用指纹信息非常多,这里为了便于理解和记忆,我们根据网络数据的流向,并结合分层思想,将常见的应用指纹分成了5 类, 如下:

Read More

《白帽子讲 web 扫描》 阅读记录(上)

0X00 前言

目前市面上有关扫描器的书籍大概就是这本 《白帽子讲 web 扫描》了,虽然知道区区 200 多页的书籍内容的深度和广度不会很高,但是还是介绍了一些开发扫描器过程中的基本方法和关键的坑点,对于我这种初学者也算是一本不错的入门级教材了,本文是阅读这本书的读书记录,作为备忘。

0X01 如何理解扫描器

1.概念以及原理

Web 扫描器其实是一种自动化的安全弱点和风险检测工具:它的工作方式和原理主要是通过分析HTTP (s) 请求和响应来发现安全问题和风险

Read More

面向源代码的软件漏洞静态检测综述

0X00 前言

无意间在看到信息安全学报的一片最新的论文,和我最近看的有点关系,感觉还不错,就放到这里来

PS:师傅们如果喜欢这个 PDF 请尽量不要直接从我这里下载,因为走的是下行流量需要我每天付费(:3 」∠ ),我提供原始下载链接叭!
http://www.infocomm-journal.com/cjnis/CN/article/downloadArticleFile.do?attachType=PDF&id=168198

Read More