Secure development lifecycle (SSDLC): what it is and how to put it in place
What the secure development lifecycle is, what happens in each phase, what SAST, DAST and SCA add, and where to start if you have nothing in place today.
A domain controller is the server that decides who you are and what you are allowed to do on a Windows network. That one sentence explains both what it is for and why it is the first thing anyone who gets into your network goes looking for: whoever controls the domain controller controls everything that trusts it, which is usually everything.
A domain controller (DC) is a Windows server that holds the directory for a domain and answers two questions all day long: who are you, and what am I letting you do. That directory is not just people’s accounts: it also holds the machines, the groups, the printers, the services and the configuration rules applied to all of them.
A domain is the set of resources that share that directory and trust it. And the trust is literal: when you join a laptop to the domain, that laptop accepts that the domain controller gets to say who can log in and with what permissions. The convenience of administering a thousand machines from one place and the risk of that one place falling over are exactly the same property seen two ways.
The technology underneath is Active Directory, in its domain services form. On a network with several domain controllers they all replicate the same database, so if one goes down the rest keep answering.
Three things, and it is worth keeping them apart because each one is attacked differently.
This is the part an earlier version of this guide was missing, written back when the answer looked obvious. Today there are three scenarios and choosing the wrong one is expensive.
And here is the warning, because it is the design mistake we see most. Entra ID is not a domain controller in the cloud. It is not the same thing and it does not do the same job, and the synchronisation that joins them is a bridge in both directions. The server that synchronises identities is, in practice, as critical as a domain controller, and it is almost never treated as one: it gets installed once, forgotten, and left running with enormous permissions over both sides. In a hybrid environment, compromising the on-premises directory usually ends up reaching the cloud one, and compromising certain cloud roles usually ends up reaching the on-premises one.
The other debt almost every hybrid carries is legacy authentication: old protocols still switched on, which cannot take a second factor and which turn any leaked password into a direct way in. Turning it off is the cheapest measure with the largest effect in this whole area, and it is the first thing we look at on a Microsoft 365 hardening engagement.
When we get inside an internal network with the client’s permission, the script is nearly always the same: we are not going for the data, we are going for the directory, because the directory gives you the data and everything else. These are the routes that work most often, named plainly and without a recipe.
None of these six routes is a vulnerability with a patch. They are all configuration, inheritance and accumulated permissions. That is why a scanner does not find them, and why they still work in 2026 the same way they did ten years ago.
The cheap way to fool yourself is to look at the list of domain administrators, see that there are four of them, and relax. What matters is not who is an administrator, but who can get to be one by chaining permissions that look harmless one by one. You do not see that by reading: you see it by walking it.
If you administer a domain, there are three things you can look at this week without hiring anyone, and they close off a fair part of the above. First, the service accounts: which ones have passwords from years ago, and which ones have more permissions than their task needs. Second, legacy authentication: which old protocols are still switched on and who actually uses them. Third, your certificate authority, if you have one: who can request certificates, and in whose name.
And a fourth one that is not technical: check whether you would know how to answer the question "what do we do if the domain controller stops being ours?". It is not a rhetorical question. It is a plan that has to be written down beforehand, because on the day you need it there is no directory left to lean on while you write it.
Last reviewed 3 August 2026. Originally published 19 November 2023.
If any of this looks like a problem you are carrying, half an hour on a call scoping it with a senior pentester is worth more than reading another article.
Talk to a senior pentesterPick a time that suits you. You tell us what you need and where you are, and we explain how we work and how we can help.