Ethical Hacking

Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package.
Computer Forensics Training at InfoSec Institute

Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors.




Network Security FullDisclosure
[Top] [All Lists]

Re: [Full-disclosure] Fun with event logs (semi-offtopic)

Subject: Re: [Full-disclosure] Fun with event logs (semi-offtopic)
Date: Thu, 21 Dec 2006 10:41:11 -0500


There  is  interesting  thing  with  event  logging on Windows. The only
security  aspect  of  it  is  event log record tampering and performance
degradation,  but  it may become sensitive is some 3rd party software is
used for automated event log analysis.

Log tampering is a big concern, since it is trivial to change the
meaning of logs without touching the .evt files themselves.

However, there are other security concerns, at least when it comes to
the event viewer.  It downloads DLLs from remote systems when viewing
remote logs, parses the message resources and uses them to determine the
meaning of remote logs.  Anyone played with fuzzing the PE file format?


The   problem   is   a  kind  of  "Format  string"  vulnerability  where
user-supplied  input  is  used  for  event log record. For ReportEvent()
function  %1,  %2,  etc  have  a  special  meaning and are replaced with
corresponding  string  from  lpStrings.  
It looks more like a variable replacement (like $0 $1 ... in bash shell) 
than a format string issue to me.
And it seems indeed to be a relevant information disclosure bug.

I have studied the FormatMessage() interface in my attempt to interpret
event logs[1], but I had no idea that the "%n" elements were replaced
recursively.  That could be significant, since format strings *can* be
included as a modifier for those elements.  See [2] for more details.

3APA3A, have you tried to see if elements like "%n!FORMAT!" used
recursively will invoke the wsprintf()-like behavior??

cheers,
tim


[1] http://projects.sentinelchicken.org/grokevt/

[2] http://msdn.microsoft.com/library/en-us/debug/base/formatmessage.asp

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/

<Prev in Thread] Current Thread [Next in Thread>