Servers were handled different from workstations. Generally they were
handled based on the support group which as you know varied greatly across
the world. The Domain Controllers were under my purview and the way those
were handled was that our supervisor set the password to some obnoxiously
long and complex password and placed them in envelopes. The only time they
were opened was after I asked my supervisor if the passwords were actually
tested to verify they worked as expected, and then they were zipped up again
and placed in the hands of some manager. Outside of that the admin accounts
were checked on every DC for bad password attempts, successful logons, and
password change date to try and verify that someone hadn't messed with them.

I know I didn't hold the envelopes for any servers. The only admin IDs I
knew passwords for were my IDs. Honestly as a domain admin, I saw no reason
for me to know passwords or have any access to servers I didn't support. My
job was to manage the domain, not all of the servers in the enterprise. The
only time I touched any of those machines with my admin ID was when I was
dragged into an issue. Generally my troubleshooting of member servers or any
servers was with my normal userids or anonymous access. 

Computer accounts don't expire but I will take it as intended... If no one
can log into a machine with a domain ID, what do you do? I have no problem
using a save CD to pop the admin password. Truly and honestly, it is time
tested, it works. This customer though doesn't have to do that, they have a
CD that when loaded up on a specific machine, can, through some algorithm
work out that machine's current password. I never looked into the process to
work out how it was done, didn't need to. I always have a "hacker" CD with
me. :o)

   joe



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED]
Sent: Saturday, May 21, 2005 3:53 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty

Didn't they also have the practice of writing a server's local admin
password on a piece of paper, sealing it in an envelope and giving it to
someone?
Don't tell me it was you we were giving all those envelopes to ;)
 
 
>>>it is feasible to set machine passwords to random passwords and do 
>>>the
reset on the spot
again assuming it is only used for local physical access.

I disagree. Unless you have a magical CD or (god forbid) a hackware, how are
you going to get into the system to reset the password if you don't know the
original password AND the system is, say, no longer participating in the
domain?. Say user can't log into the domain because the computer's account
has expired, how do you get that computer back into a useful state on time?
 
 
Sincerely,

Dèjì Akómöláfé, MCSE+M MCSA+M MCP+I
Microsoft MVP - Directory Services
www.readymaids.com - we know IT
www.akomolafe.com
Do you now realize that Today is the Tomorrow you were worried about
Yesterday?  -anon

________________________________

From: [EMAIL PROTECTED] on behalf of joe
Sent: Fri 5/20/2005 10:07 PM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty



Hey Deji, the company we used to do work for together actually does set
seaprate passwords for every workstation, that is some 200,000 workstations;
it is done through a special service designed to do so on a regular basis.
Basically the local admin password is only used if it requires a physical
visit, there is a special CD (which changes) that the admin uses that will
recover the password for the machine (it doesn't reset the password or
anything like that). When it really comes down to it though, it is feasible
to set machine passwords to random passwords and do the reset on the spot
again assuming it is only used for local physical access.

  joe



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED]
Sent: Monday, May 16, 2005 3:35 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty

It's late here, so I'll make this a quick reply. I know you said that MS is
working on "such things", so I'm rooting for you. But, in the absence of any
other feasible mechanism at this time, we are left with coming up with our
own concotion.

Your statement:
>>>- You need to establish trust boundaries within your environment, and 
>>>not
overlap password usage across such boundaries (nor ability for a machine in
one realm to read the password in another realm). That is, if you have
MachineA and MachineB, and you don't assume that anyone that is admin over
MachineA should be admin over MachineB, you should not use the same password
on both of them.>>> completely misses one of the fundamental reasons people
use common admin passwords.

Let me briefly describe it. Take a fairly-sized enterprise with 25K desktops
and 10 helpdesk techs. On a normal day, about 10 helpdesk tickets will come
in, requiring personal attention by the helpdesk folks, and some of the
things the helpdesk folks do require admin rights on the systems. If the
admin passwords on each of these 25K desktops are different, then you have
25K different permutations of passwords that the helpdesk folks need to
remember (or store) in order for them to be able to effectively do their
daily tasks. I know that the folks at MS are bright people, but the normal
people I encounter every day don't have the capacity (brainwave) to be able
to correlate 25K passwords to 25K computers and pull the relevant one out
easily on demand. This is why the normal people I meet resort to setting the
passwords on all 25K machines to one common password known to the helpdesk
folks (and other relevant stake-holders).

We know (and accept the fact) that this practice is insecure against a
knowledgeable and determined attacker. But, like I said before, it is a
trade-off that we are willing to accept in the absence of something more
elegant from MS. MS is already playing significantly in the Enterprise
landscape, so I know that this need is not a surprise to MS at all. I bump
into MCS folks all over the place and ask them the same question I asked you
before - How does MS handle this requirement? - and the response is
invariably a very loud silence.


Sincerely,

Dèjì Akómöláfé, MCSE+M MCSA+M MCP+I
Microsoft MVP - Directory Services
www.readymaids.com - we know IT
www.akomolafe.com
Do you now realize that Today is the Tomorrow you were worried about
Yesterday?  -anon

________________________________

From: [EMAIL PROTECTED] on behalf of Eric Fleischman
Sent: Sun 5/15/2005 9:03 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty



Just getting back to this thread and having a chance to write up some
thoughts. It's splintered some, I'll go from here, because it seems to be a
good place to fork this mail from.

A bunch of points worth commenting on:

> I would like MS to put out guidance on making services with self 
> setting passwords as well as any services they have that require 
> userids doing the same.

Yes, we know, and we're working on such things. We're also working on how to
better manage such passwords going forward.

> Additionally there are more forests
> and domains in that company than probably any where else.
> Many of them probably make sense like for the Windows groups working 
> on the AD product, but I expect many of them don't make any sense, it 
> is just people who want their own and want control over "their own"
> machines so make them and use them.

Joe, no such forest mayhem exists. All of our production forests exist for
the purposes of testing scenarios and gaining confidence in alpha/beta grade
bits before going full production with them. And there are fewer forests
here than I would actually expect, and then I think you think there are.
There are many untrusted forests, much like you might have "a forest"
running on your desktop in virtual machines. But they don't really count, I
was speaking more to production forests that are trusted by the core
production environment. The # is not huge in the production boat.

But that said, this all seems like a diversion from the original issue?

Getting back to the original issue, on secure resetting passwords of local
machines more generally....

This comment was made:
> I used to store the password in the batch file before I got my brains 
> bashed out on this list. So, I went back and store the password in a 
> DB, read it on the fly from a vbs and pass it onto bat.

This approach does not make it fundamentally better than sitting naked in a
.bat file, though it does remove the low hanging fruit, a little. The
question is, _under what security context_ does this VBS run (which answers
the question, what context do I need to compromise to get the password?) and
where is that password shared? If it runs as local system on a workstation,
that implies that local system can read the password -> if I become local
system I can read the password -> if I am admin on the machine I can read
the password.
This is just as concerning to me, depending upon the implementation. One
implementation detail that could make this interesting would be if your db
handed out a unique password to each workstation, and no workstation
security context could read the password for any other workstation
(record-level security could be used). Then you have limited my knowledge to
the scope of what I already own....I can only read a password I don't care
about, because I already own that box. If that's how you do it, you've
solved part of the problem.
Read below for more generic commentary on why this, especially bullet 2.
If you want to test my ability to do this, give me admin on one of your
boxes one day (and a kernel remote too, just in case I feel like being
fancy), and I can try and obtain your password. I'd bet you a lunch (to be
settled next time you're in the Seattle area) that I can get it.

Fundamentally, to me, there are a few issues that need to be overcome in any
solution I'd personally consider secure end to end:
- You need to securely send the password to the machine, else a network
sniff will reveal it
- You need to establish trust boundaries within your environment, and not
overlap password usage across such boundaries (nor ability for a machine in
one realm to read the password in another realm). That is, if you have
MachineA and MachineB, and you don't assume that anyone that is admin over
MachineA should be admin over MachineB, you should not use the same password
on both of them. Else compromise of one of them compromises both of them.
In reality, this probably is best implemented with every machine having a
unique local admin password.
Why is this concept of boundaries so impt? Because there's really no trusted
way of setting the password on a given machine and using it w/o exposing it
to someone that has compromised that box. So no matter how you store, how
you use, etc.....someone who owns that box will own that password. It might
not be true, but it could be, so you should assume it. That takes us to the
place where, unique passwords for trust realms are required.
- You need to securely store the passwords of the machines before, during,
and after they have been used.
- You need to have a mechanism by which you can "check out" passwords to
people that need them such that you know A) who has gotten the password to a
given machine B) when they got it C) when they are done with it and D) a
mechanism to reset that password so that the knowledge of the local admin
password in question is not forever-lasting after a single checkout.
- Of course, the obvious....passwords should be complex, long, etc.

This list is by no means complete, but it's enough to get the ball rolling,
and to put a project spec together that others can poke holes in.
Bullets 2 and 4 are, to me, what take us from a mediocre to a good solution.

My $0.026269 (Australian)
~Eric


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of joe
Sent: Thursday, May 05, 2005 7:29 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty

Completely in my opinion....

MS is not like most companies, especially most big companies. It seemed to
have been run in the past like a series of small companies with a lot of
loosely connected stuff. Sort of a federation versus a united whole. I have
watched this pretty closely for a long time as I was always curious about
the massive communication issues I had seen with and within MS.

One extremely funny case was the fact that I used to ask the same question
to like 2 or more groups all servicing the same widget company I worked for.
These people were all part of MS but were obviously in very different parts
of MS and were very disconnected internally, they did more bridging when in
our meetings at our locations than when in theirs in my opinion. It took
them a couple of years to come to the realization that I was asking the
different groups the same questions and weighing the answers against each
other and at times, letting them battle each other with their answers with
them never knowing they were battling other MS folks. And it wasn't like
these were small questions either, I don't often ask small simple questions,
these were mostly deep difficult questions and the radically different
opinions that came back showed the cracks.



Anyway, we ran into several issues with Exchange as I have often hinted at
and they were issues that they should have been hitting internally, until I
found out they had such a disjoint internal configuration. Later I found out
they had started collapsing the structures and pulling things back to more
central locations and started hitting a lot of the same issues we had been
pointing out for some time that we had been told were due to our design not
due to any lacking in Exchange...

It is just a guess, but I expect most everyone if not everyone has full
admin of their workstations and servers. Additionally there are more forests
and domains in that company than probably any where else. Many of them
probably make sense like for the Windows groups working on the AD product,
but I expect many of them don't make any sense, it is just people who want
their own and want control over "their own" machines so make them and use
them. I think the power and reach of ITG/OTG/GOAT or whatever it is called
now is growing in the desktop space but I am not sure how much power they
have over the admin ID. They almost certainly have enough deployment
mechanisms through AV software and SMS on the corporate standard workstation
load that they have multiple paths into boxes through localsystem so knowing
the admin ID at any given moment probably isn't all that important. Well it
isn't that important anyway as we all know, if you want into a box, you get
it in front of you and insert a cd and you are on.



If MS is going to work on issues with IDs at all, I would ask that the focus
be put on Service IDs and how services work in general or mechanisms to help
easily change passwords of service IDs. So many companies run around with
non-expiring service IDs not realizing how insanely insecure that is. Heck,
MS themselves was hacked because of unchanged service IDs several years back
and I recall hearing how billg had put out a message that they were going to
stop using non-expiring accounts. I expect that dropped by the wayside
because we haven't seen many new ways of handling services (though I do say
thanks for localservice and networkservice).

Think about all of this logically.... You force password changes so that a
password can not be the same thing for long enough to hack it through
various brute force methods or because it has been the same too long and you
don't know who all has the password now. So then you take IDs that are more
likely targets for hacking than normal IDs due to usually having more
power/rights and being known by multiple people so there is always question
as to who did what and then you make them non-expiring and let them stay
unchanged for a year or more. What brain dead security people are making
those decisions? They just made a mockery of all their other decision making
processes for setting a password change policy in the first place. If
anything, service IDs should be changed more frequently than normal user
IDs.

The number one argument I hear about having non-expiring IDs is that the
password needs to be changed in a controlled fashion, it can't just be
allowed to expire... My response to that is always... Fine, change it in a
controlled fashion, you know exactly when it is going to expire, make sure
you change it before then. This gets fought and it goes to policy/security
people who say, ok, we will grant a non-expiring password but you have to
change it every X days!!!

How many people grant non-expiring IDs to application owners who say they
will change their password at least every X days? Raise your hand. How many
actually go back and audit those same IDs and shut them down if the password
is older than that X days? Raise your hands. I expect the first number of
hands far exceeds the second number. Who wants to take responsibility for
knocking down a running application? This is the kind of thing I get fired
for because I will take that responsibility, I think it is more important
that they be secure because I know the minute they are compromised they are
going to chew me out asking who did it and how. I have seriously had
managers ask me who logged onto a specific ID. My response... Well whomever
has the password of course! No, specifically who logged on and did this. My
response... I don't know, the mechanism I have for tracking the WHO is
completely compromised by how you use the system with that ID. For a small
fee, we can install a web cam on every machine in the world that people can
log into and we can work out a mechanism around that if you would like to
track it the next time your application gets hacked.....

Anyway... :o)

I would like MS to put out guidance on making services with self setting
passwords as well as any services they have that require userids doing the
same. If people write services they can do that now but many don't because
they think... Well crap I have to store the plain text password somewhere...
If the ID is a domain ID, don't do it that way, give the service ID the
ability to SET its own password. Then it can randomly generate a password
once a day, once a week, once a month and set it. Now the issue, from what I
understand, is that the service has to be restarted... I would like to see a
mechanism that makes this so it isn't required. I expect it is possible,
users do it now when they change their password interactively. While it is a
troubleshooting good idea to log off and log on, it isn't always required.
It should never be required. Changing local machine IDs is much harder if
the ID isn't an admin itself on the machine in question. Those currently
would have to remember the old password. But the question is... If you have
a local ID for a service... Why does it have to have a password at all? Why
can't it be a service only password that you get to specifically set the
rights for (i.e. not use localservice which applies to all services running
as localservice). I would like to see a similar domain ID as well so people
don't have to be stuck with networkservice or a regular ID that needs
changing. That one is a little tougher to overcome though.


  joe



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED]
Sent: Thursday, May 05, 2005 9:30 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty

I used to store the password in the batch file before I got my brains bashed
out on this list. So, I went back and store the password in a DB, read it on
the fly from a vbs and pass it onto bat.

What's taking you guys so long to give us a more elegant solution for this
"must-have"? Until you do, all we have is crud and we balance the security
of the implementation against the URGENT need for this feature. If you are
savvy enough to fire up a sniffer to get the info or know where to go to get
it raw, you are more than a casual threat as far as I'm concerned. In that
situation, I'll let HR deal with you as soon as I find out (IF I find out).

How does MS IT do it?


Sincerely,

Dèjì Akómöláfé, MCSE+M MCSA+M MCP+I
Microsoft MVP - Directory Services
www.readymaids.com - we know IT
www.akomolafe.com
Do you now realize that Today is the Tomorrow you were worried about
Yesterday?  -anon

________________________________

From: [EMAIL PROTECTED] on behalf of Eric Fleischman
Sent: Wed 5/4/2005 12:09 PM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty



If I could ask what might be the obvious, from a security perspective....



If you have a policy out there resetting the local admin password, how are
you storing the new password in the script? Hopefully you have something
very clever in place, else I can get the local admin password out of your
policy in so many ways:

*       If you didn't consider this at all, I bet the policy is ACLd with AU
having read, so I can just read it out with notepad.
*       If you were clever enough to acl the policy so that only the machine
accounts can read it, I could own a machine (perhaps I already do....perhaps
I am in the local admins group on one of the boxes, because it is _my
machine_) and just open the policy while impersonating the machine. Or get
the machine to do it for me (since I own it, I can make it do my bidding).
*       <etc>



And if you haven't taking precautions, you should assume local admin on any
machine with this password is local admin on them all. For it only takes one
bad apple to spoil the whole bushel.



~Eric





________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Brenda Casey
Sent: Wednesday, May 04, 2005 11:11 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty



Thanks Darren-

I ran the gpotool as you suggested.  As part of the output I am told:

Error:  ServerName1 - Servername2 sysvol mismatch



AND



DC: Server2

Friendly name: server2

Created: 10/7/2004

Changed: 5-4-2005 5:34 pm

DS Version 0<users> 37<machine>

Sysvol: 0<user> 37<machine>

Flags: 0

User extensions: not found

Machine extensions: .....

Functionality version: 2



All fo the functionality versions are 2.





Thanks,

Brenda



________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Darren Mar-Elia
Sent: Wednesday, May 04, 2005 9:44 AM
To: ActiveDir@mail.activedir.org
Subject: RE: [ActiveDir] GPO not applied - thinks it is empty

Brenda-

This usually means that the client is looking at the GPO's version number
and it is showing up as 0 for computer revisions (in other words, it doesn't
think any computer policy has been set in that GPO). Run gpotool.exe (from
Win2K reskit or part of XP and 2003) against your DCs and see if any of them
show a revision number of 0 for the computer side of the GPO containing your
script. This could still mean that you have some issues with sysvol
replication. Essentially, there is a file called gpt.ini that is stored with
the GPO in sysvol on each DC. This file contains a version number that lists
how many changes were made to the computer and user sides of a GPO. That
version should be the same as the version of that GPO held on the
versionNumber attribute of the GPC object in AD. If there are discrepancies,
then gpotool will tell you.



Darren



________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Brenda Casey
Sent: Wednesday, May 04, 2005 7:21 AM
To: ActiveDir@mail.activedir.org
Subject: [ActiveDir] GPO not applied - thinks it is empty

I am no longer having replication issues on any servers, however, now when I
run gpresult I am told that my gpo was not applied because it is empty.  I
can manually open the GPO and see my startup script is there.



Thanks,

Brenda





________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Brenda Casey
Sent: Tuesday, May 03, 2005 3:04 PM
To: ActiveDir@mail.activedir.org
Subject: [ActiveDir] administrator password change in Startup script in GPO

I have created a startup script to change my administrator password on
specific machines as part of my group policy.  These computers are part of a
group, I have applied the policy to this group, and set the security
permissions appropriately.  When I run gpupdate on the pc, I get no error in
the Event log, but when I restart the machine, the administrator account
password has not been changed.

I have run replmon.exe and have found that 1 dc (out of 30) is not
replicating, as it is out of hard drive space on c:.  Could 1 out of 30 dc's
be causing the problem, or is there something else I am missing?  How long
should it take, before the policy takes effect?



Thanks,

Brenda

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/


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