Undoubtedly. 

Indubitably.  :o)


At the most basic, a normal user/group SID or domain computer SID in the
domain is made up of first part and a last part. It looks like

s-x-x-x-x-x-x-x-x-x-y

The x's are various portions of the first part, the y is the last part. The
s is there so you know it is a SID.

The x's by definition can be variable in number but usually aren't because
no one seemed to hop the bus to extend the use of SIDs outside of what MS
did themselves so that concept sort of died out and now we just put up with
it. Those x's make up different things like version and various
subauthorities, MSDN documents this stuff to within an inch of its life so
best to go there for those details if you are feeling like you want them. 

The last part is what is called a RID or relative identifier which uniquely
identifies a security principal in a local scope. The local scope in
question is the first part. That could be a domain SID or a machine SID. 

What you find in the objectSID attributes on users/groups/computers in AD
are SIDs made up of the domain SID and a RID describing that object uniquely
in that domain. When you look at a local user/group on a machine, you are
looking at a SID made of a local machine SID and a RID describing that
object uniquely on that machine. The machine SID and the domain computer
object SID are in no way, shape, nor form related. Period.

As Rick indicated there are objects with well known RIDs. These objects will
always have the same RID value on each and every machine (and domain). So
for instance if you go to any machine (or domain) and get the administrator
ID SID and strip off the -500, that gives you the machine SID. This fact is
where the RedButton tool came from that seemed to amaze everyone back in NT4
days because it could tell you what your admin ID was near instantly even if
you named it something insane like "NotTheAdminID". 

There are also special SIDs called Well Known SIDs and apply to BUILTIN
groups and Well Known Security Principals. These SIDs are EXACTLY the same
on each and every machine. For instance, the SID for the local group
Administrators is always S-1-5-32-544. The SID for Guests is always
S-1-5-32-546. The SID for Everyone (or World if you prefer) is always
S-1-1-0. The SID for Interactive is always S-1-5-4. These SIDs never have
scope outside of the local SAM realm (I made that term up... Maybe...). On a
Domain, this is all DCs. On a non-DC machine it is that machine. Think about
this the next time you apply a permission to AD for the Administrators
group.... In action, which administrators group does it apply to in a
multidomain environment? Why whichever administrators group applies to the
domain controller you are working on that secured object on of course. How
many people can point out bad ACLs MS has out there right now based on this?
Think forest/application partitions that span domain boundaries.

Anyway, if you have multiple non-DC machines that all have the same machine
SID. You have found either an amazing piece of random luck or a cloned
machine. There is a nice piece of software from the very great site called
sysinternals that will fix SIDs for you called newsid. This tends to be
handy to have around though there are other things that will change SIDs as
well that are considered "better" by some Microsoftian's.

Now one thing that I have never sat down to try and fully understand and
just left alone is the WHY about why we can't have duplicate SIDs on
machines. I can't, off the top of my head, think of an issue with it in any
of the times I have off the top of my head thought about it. When you talk
between the two machines, SIDs are not passed for local IDs. When you talk
from machine 1 to machine 2 with a local machine 1 ID, you are authenticated
against machine 2 with an ID that resides on machine 2 that may happen to be
in sync with an ID on machine 1. Hence the machine 1 SID could be the same
or different or any groups the machine 1 ID is in could be anything yet it
won't impact the machine 2 access because it isn't machine 1 speaking for
the authentication/authorization on machine 2. Does anyone know the tech
details behind the issue here? Better yet a website that lays it all out?
The only thing I could think of would be something along the lines of any
place a SID might be used for encrypting information for network traffic.

   joe





-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Rick Kingslan
Sent: Thursday, July 21, 2005 4:16 PM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] How to identify SIDs in AD?

joe will undoubtedly reply, but here's a couple of things to consider.
You've looked at the AD SID for a computer object.  Did you look at one for
a user or a group?  What you SHOULD find is that the SID is going to share
some specific similarities.  For instance:

S-1-5-21-3779066958-2660189832-1200827 will be the same SID prefix for all
security principal objects in your domain.  Each domain will have its own
unique SID.  RIDs are appended to uniquely identify an object in the domain.

So, your computer had a Relative Identifier (RID) of 3391 (Remember the FSMO
role of RID Master?)

The Administrator BY DEFAULT will be:

S-1-5-21-3779066958-2660189832-1200827-500

Guest WILL BE:

S-1-5-21-3779066958-2660189832-1200827-501

The Domain Admins group WILL BE:

S-1-5-21-3779066958-2660189832-1200827-512

After the default groups ( the Builtin groups have SIDs that are
pre-programmed for Special Purposes), users, etc. are all created, the RID
Master will start handing out RIDs from 1000 on.

So, knowing that each and every workstation joined to a domain must have a
unique object SID - what would the next assumption then be if I have 7
workstations that have the same workstation SID (each of them are an
independtly operating NT system with security principals of their own)
trying to join a functional AD system?

You're not at square one - you have all of the information in front of you -
you just need to put the pieces together.  ;-)

Take a swing....  I'll drop more bread crumbs if needed.

Rick



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Hanumara, Rao
Sent: Thursday, July 21, 2005 2:38 PM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] How to identify SIDs in AD?

Joe,
  Undoubtedly your program is of great value for folks like me.
Actually, I tried the program few days ago, but could not set correct
parameters.  This shed more light of what I wanted to know. AD assigns a
Unique SID when a workstation or user joins domain. This has no impact of
what workstation SID is. I used your program and captured Computer and User
objects. Then I used psGetSID from psTools on a workstation.
What I found was that the last segment was randomly assigned by AD.
Workstation SID has only 7 segments and AD SID attribute has 8 segments.
AD -        Sid:S-1-5-21-3779066958-2660189832-1200827-3391
Workstation SID:S-1-5-21-2214242676-972441917-2900879380
 
This revelation puts me back to my Square 1 question.  What makes the
difference if several workstations have same SID generated by Ghost
(Symantec) image in authenticating during login process? 
While framing my original question, I thought that AD will store Workstation
SID somewhere in database and use that information to authenticate.
Thanks,
Rao/..

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of joe
Sent: Thursday, July 21, 2005 10:49 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] How to identify SIDs in AD?

SIDS of Active Directory objects are stored in the objectSID attribute.
If you have done some form of migrations or move of users or groups from one
domain to another, the sIDHistory attribute will also be populated.

The last sentence you have of something that matches workstation SID with
the workstations objectSID in AD would have to be a script to do that. There
is no attribute in AD that maintains the workstation SID, AD doesn't care
about that SID, it only cares about the objectSID assigned to the computer
object for the workstation which is different.

To tackle that problem, you would have to write a script that enumerated all
of the AD Computer objects and their objectSIDs, then have the script reach
out to each of those computers individually and query for its SID (just ask
for the administrator SID on each of the machines and chop off the RID at
the end) and then produce your mapping.

To easily display SIDs from AD, you could use my adfind utility, to dump all
computer objects in a forest and their SIDs you would do something like

adfind -gc -b "" -f objectcategory=computer objectSID

If you pipe that output to a file, you could then use the adcsv (in the
adfind zip file) script to take that output and put it into a CSV format for
easier consumption by something else.

    joe




-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Hanumara, Rao
Sent: Thursday, July 21, 2005 9:58 AM
To: ActiveDir@mail.activedir.org
Subject: [ActiveDir] How to identify SIDs in AD?

Hello,
   I am new to the list and also new to AD.  We are running few problems
with Ghost Images deployment.  Is there any utility that can show SID on the
Domain Controller.  We have AD and DNS implemented on our DC.  MS
Administrative tools just shows me members of AD, DNS Forward and Reverse
lists.  What I want to see is SIDs of AD Computers/Users.  Where they are
stored and how to see them?  I really want a report that matches Workstation
SID with AD SID in computers.
Thanks in Advance,
Rao/.. 


 
List info   : http://www.activedir.org/List.aspx
List FAQ    : http://www.activedir.org/ListFAQ.aspx
List archive:
http://www.mail-archive.com/activedir%40mail.activedir.org/

List info   : http://www.activedir.org/List.aspx
List FAQ    : http://www.activedir.org/ListFAQ.aspx
List archive:
http://www.mail-archive.com/activedir%40mail.activedir.org/
List info   : http://www.activedir.org/List.aspx
List FAQ    : http://www.activedir.org/ListFAQ.aspx
List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/

List info   : http://www.activedir.org/List.aspx
List FAQ    : http://www.activedir.org/ListFAQ.aspx
List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/

List info   : http://www.activedir.org/List.aspx
List FAQ    : http://www.activedir.org/ListFAQ.aspx
List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/

Reply via email to