I have had an annoying authentication problem which I have been tracking down for 2 days now.
Although I have now resolved the issue, I really don't understand what was happening, so I'm hoping someone might be able to shed some light on it.
The web servers are all Windows Server 2003 running an in-house developed web application which is a combination of ASP.NET and ASP classic code.
The problem manifest itself as about 30+ login failure audits (Event ID's 529,539 & 680) in the security log every hour. The delivery of the web app seemed to be unaffected but I felt I had to investigate and find the source of this issue. Here is an example of one of the failure audit events logged:
Logon Failure:
Reason: Unknown user name or bad password
User Name: sa_axbo2_iis
Domain: XXXX
Logon Type: 8
Logon Process: Advapi
Authentication Package: Negotiate
Workstation Name: XXXX
Caller User Name: NETWORK SERVICE
Caller Domain: NT AUTHORITY
Caller Logon ID: (0x0,0x3E4)
Caller Process ID: 2956
Transited Services: -
Source Network Address: -
Source Port: -
After tracing back the PID's from a number of logs I found that they weren't confined to a single vdir or app pool but occurred across several.
The puzzling thing is that all the app pools use the Network Service identity and all the vdirs have integrated windows authentication enabled and anonymous access disabled.
I searched google long and hard for solutions but very little seemed to fit with what I was seeing.
Eventually I ran cscript adsutil.vbs find /anonymoususerpass to reveal which folders had any anonymous user attributes and checked these folders using metabase explorer. Some of these folders had anonymoususername attributes which matched the one logged in the failure audits.
It would appear that despite anonymous access disabled, these credentials stored in the metabase were being used by some processes. I know it sounds far fetched, but when I deleted these credentials from the metabase, the failure audits stopped immediately.
Again, this doesn't seem to have had any effect on the delivery of the web app.
So, I guess my question is why are these anonymous user credentials being used when they are quite clearly disabled in IIS Manager? Can anyone help me out here? I hate to solve a problem (even a minor, low impact one) and not understand what was going on.
Thanks for reading this.
Joel Haylock