Private HAL/Kernel Symbols in WDK... "oops" or new policy?

It seems that the WDK now includes the complete private PDBs for the
kernel and the hal in the /debug directory. Instead of merely including
the stripped symbols (only containing some “public” types/enumerations),
these symbols include every single private type used in the kernel/hal
(all ~90 NtQuerySystemInformation classes and their structures, for
example), as well as the prototype for every external and internal
structure, line number information, even variable names. Maybe it’s a
time for a “Native API Reference” reprint/update? :wink:

In any case, is this an accidental leak or a new policy? I know that the
new ASSERT macro causes an “annotation” to be added in the PDB, instead
of the actual string being in the binary (thus decreasing the size of
checked builds), so it’s possible that annotations can only be seen in
the private PDBs… In any case, I just used the PDBs today on a crash
dump I made, and the information was a *lot* more helpful, so I hope it
stays this way. Nevertheless, I’m not sure if exposing the guts of the
kernel/HAL is what Microsoft intended… altough it’s fun to use the
native API sometimes and play in undocumented land (for self-education
or sysinternals-like utilities), this might lower the bar for a lot of
rootkits and malware out there in terms of research required.

Best regards,
Alex Ionescu

Who knows, It happend before. But of course it is a gold mine in right
hands,
since you can debug so much easier and learn a lot about internal OS
structure.

Dan

----- Original Message -----
From: “Alex Ionescu [397670]”
Newsgroups: ntdev
To: “Windows System Software Devs Interest List”
Sent: Sunday, March 05, 2006 2:17 PM
Subject: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new policy?

> It seems that the WDK now includes the complete private PDBs for the
> kernel and the hal in the /debug directory. Instead of merely including
> the stripped symbols (only containing some “public” types/enumerations),
> these symbols include every single private type used in the kernel/hal
> (all ~90 NtQuerySystemInformation classes and their structures, for
> example), as well as the prototype for every external and internal
> structure, line number information, even variable names. Maybe it’s a time
> for a “Native API Reference” reprint/update? :wink:
>
> In any case, is this an accidental leak or a new policy? I know that the
> new ASSERT macro causes an “annotation” to be added in the PDB, instead of
> the actual string being in the binary (thus decreasing the size of checked
> builds), so it’s possible that annotations can only be seen in the private
> PDBs… In any case, I just used the PDBs today on a crash dump I made,
> and the information was a lot more helpful, so I hope it stays this way.
> Nevertheless, I’m not sure if exposing the guts of the kernel/HAL is what
> Microsoft intended… altough it’s fun to use the native API sometimes and
> play in undocumented land (for self-education or sysinternals-like
> utilities), this might lower the bar for a lot of rootkits and malware out
> there in terms of research required.
>
> Best regards,
> Alex Ionescu
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer

ALEX:

What version of the WDK are you using? I’ve examined the PDB’s (both
HAL and KERNEL, all processors) using DIA2DUMP for the 5112 WDK (from
MSDN), and they seem to contain no type information. Here are the dates
and sizes for the AMD64 versions:

HAL.DLL: 2005-07-20; 328, 192 bytes
HAL.PDB: 2005-07-20; 322, 560 bytes
NTOSKRNL.EXE: 2005-07-20; 6, 778, 880 bytes
NTOSKNRL.PDB: 2005-07-20; 3, 255, 296 bytes

I would greatly like to look at this information, so any help would be
appreciated. Any version of the WDK that contains this information
would do what I need.

Thanks very much,

MM

>> xxxxx@videotron.ca 2006-03-05 07:17 >>>
It seems that the WDK now includes the complete private PDBs for the
kernel and the hal in the /debug directory. Instead of merely including

the stripped symbols (only containing some “public”
types/enumerations),
these symbols include every single private type used in the kernel/hal

(all ~90 NtQuerySystemInformation classes and their structures, for
example), as well as the prototype for every external and internal
structure, line number information, even variable names. Maybe it’s a
time for a “Native API Reference” reprint/update? :wink:

In any case, is this an accidental leak or a new policy? I know that
the
new ASSERT macro causes an “annotation” to be added in the PDB, instead

of the actual string being in the binary (thus decreasing the size of
checked builds), so it’s possible that annotations can only be seen in

the private PDBs… In any case, I just used the PDBs today on a crash

dump I made, and the information was a *lot* more helpful, so I hope it

stays this way. Nevertheless, I’m not sure if exposing the guts of the

kernel/HAL is what Microsoft intended… altough it’s fun to use the
native API sometimes and play in undocumented land (for self-education

or sysinternals-like utilities), this might lower the bar for a lot of

rootkits and malware out there in terms of research required.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

As beta releases are sort of NDA’d I think the OP can’t really respond.
Perhaps he means a later beta.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Martin O’Brien
Sent: Monday, March 06, 2006 3:21 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

ALEX:

What version of the WDK are you using? I’ve examined the PDB’s (both
HAL and KERNEL, all processors) using DIA2DUMP for the 5112 WDK (from
MSDN), and they seem to contain no type information. Here are the dates
and sizes for the AMD64 versions:

HAL.DLL: 2005-07-20; 328, 192 bytes
HAL.PDB: 2005-07-20; 322, 560 bytes
NTOSKRNL.EXE: 2005-07-20; 6, 778, 880 bytes
NTOSKNRL.PDB: 2005-07-20; 3, 255, 296 bytes

I would greatly like to look at this information, so any help would be
appreciated. Any version of the WDK that contains this information
would do what I need.

Thanks very much,

MM

>> xxxxx@videotron.ca 2006-03-05 07:17 >>>
It seems that the WDK now includes the complete private PDBs for the
kernel and the hal in the /debug directory. Instead of merely including

the stripped symbols (only containing some “public”
types/enumerations),
these symbols include every single private type used in the kernel/hal

(all ~90 NtQuerySystemInformation classes and their structures, for
example), as well as the prototype for every external and internal
structure, line number information, even variable names. Maybe it’s a
time for a “Native API Reference” reprint/update? :wink:

In any case, is this an accidental leak or a new policy? I know that
the
new ASSERT macro causes an “annotation” to be added in the PDB, instead

of the actual string being in the binary (thus decreasing the size of
checked builds), so it’s possible that annotations can only be seen in

the private PDBs… In any case, I just used the PDBs today on a crash

dump I made, and the information was a *lot* more helpful, so I hope it

stays this way. Nevertheless, I’m not sure if exposing the guts of the

kernel/HAL is what Microsoft intended… altough it’s fun to use the
native API sometimes and play in undocumented land (for self-education

or sysinternals-like utilities), this might lower the bar for a lot of

rootkits and malware out there in terms of research required.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Thanks. I hadn’t considered that.

MM

>> xxxxx@stratus.com 2006-03-06 15:30 >>>
As beta releases are sort of NDA’d I think the OP can’t really
respond.
Perhaps he means a later beta.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Martin O’Brien
Sent: Monday, March 06, 2006 3:21 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or
new
policy?

ALEX:

What version of the WDK are you using? I’ve examined the PDB’s (both
HAL and KERNEL, all processors) using DIA2DUMP for the 5112 WDK (from
MSDN), and they seem to contain no type information. Here are the
dates
and sizes for the AMD64 versions:

HAL.DLL: 2005-07-20; 328, 192 bytes
HAL.PDB: 2005-07-20; 322, 560 bytes
NTOSKRNL.EXE: 2005-07-20; 6, 778, 880 bytes
NTOSKNRL.PDB: 2005-07-20; 3, 255, 296 bytes

I would greatly like to look at this information, so any help would be
appreciated. Any version of the WDK that contains this information
would do what I need.

Thanks very much,

MM

>> xxxxx@videotron.ca 2006-03-05 07:17 >>>
It seems that the WDK now includes the complete private PDBs for the
kernel and the hal in the /debug directory. Instead of merely
including

the stripped symbols (only containing some “public”
types/enumerations),
these symbols include every single private type used in the kernel/hal

(all ~90 NtQuerySystemInformation classes and their structures, for
example), as well as the prototype for every external and internal
structure, line number information, even variable names. Maybe it’s a
time for a “Native API Reference” reprint/update? :wink:

In any case, is this an accidental leak or a new policy? I know that
the
new ASSERT macro causes an “annotation” to be added in the PDB,
instead

of the actual string being in the binary (thus decreasing the size of
checked builds), so it’s possible that annotations can only be seen in

the private PDBs… In any case, I just used the PDBs today on a crash

dump I made, and the information was a *lot* more helpful, so I hope
it

stays this way. Nevertheless, I’m not sure if exposing the guts of the

kernel/HAL is what Microsoft intended… altough it’s fun to use the
native API sometimes and play in undocumented land (for self-education

or sysinternals-like utilities), this might lower the bar for a lot of

rootkits and malware out there in terms of research required.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Yes, thanks a lot but he didn’t say this can be found inside a beta, did he
? Anyway if that’s the case then what you probably mean is that according
to you he shouldn’t have told us about it in the first place rather than
just not mention the build number, but that’s too late now. Is it true you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message news:xxxxx@ntdev…
As beta releases are sort of NDA’d I think the OP can’t really respond.
Perhaps he means a later beta.

Oh look here http://msdn.microsoft.com/subscriptions/ there is a recent
public MSDN Beta much later than 5112.

All WDK releases are beta as it is part of the VISTA beta.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Daniel Terhell
Sent: Monday, March 06, 2006 4:21 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Yes, thanks a lot but he didn’t say this can be found inside a beta, did
he
? Anyway if that’s the case then what you probably mean is that
according
to you he shouldn’t have told us about it in the first place rather than

just not mention the build number, but that’s too late now. Is it true
you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message
news:xxxxx@ntdev…
As beta releases are sort of NDA’d I think the OP can’t really respond.
Perhaps he means a later beta.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Thanks, but the MSDN stuff is not under NDA is it ?

/Daniel

“Roddy, Mark” wrote in message news:xxxxx@ntdev…
Oh look here http://msdn.microsoft.com/subscriptions/ there is a recent
public MSDN Beta much later than 5112.

All WDK releases are beta as it is part of the VISTA beta.

Hmm - call me an idiot but I just cant find WDK there from either December
or February :frowning:

“Roddy, Mark” wrote in message news:xxxxx@ntdev…
Oh look here http://msdn.microsoft.com/subscriptions/ there is a recent
public MSDN Beta much later than 5112.

All WDK releases are beta as it is part of the VISTA beta.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Daniel Terhell
Sent: Monday, March 06, 2006 4:21 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Yes, thanks a lot but he didn’t say this can be found inside a beta, did
he
? Anyway if that’s the case then what you probably mean is that
according
to you he shouldn’t have told us about it in the first place rather than

just not mention the build number, but that’s too late now. Is it true
you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message
news:xxxxx@ntdev…
As beta releases are sort of NDA’d I think the OP can’t really respond.
Perhaps he means a later beta.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Daniel Terhell wrote:

Yes, thanks a lot but he didn’t say this can be found inside a beta, did he
? Anyway if that’s the case then what you probably mean is that according
to you he shouldn’t have told us about it in the first place rather than
just not mention the build number, but that’s too late now. Is it true you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message news:xxxxx@ntdev…
> As beta releases are sort of NDA’d I think the OP can’t really respond.
> Perhaps he means a later beta.
>
>
>
>
>
>

This change is in the 5270 and 5308 WDKs, not the 5112. As far as I know
the post-5112 WDKs are public on MSDN…or at least they are supposed to
be. In any case, I haven’t violated any NDA – I’m not distributing the
PDBs. I actually posted here because a lot of MS people read this
newsgroup, so in case it was a mistake, they can fix it. I wish the WDK
beta would have its own newsgroup… there is not a single newsgroup in
the Vista beta for driver developers.

Best regards,
Alex Ionescu

I fwd’ed the issue to the WDK folks yesterday.

Thx
d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Alex Ionescu
[397670]
Sent: Monday, March 06, 2006 3:19 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Daniel Terhell wrote:

Yes, thanks a lot but he didn’t say this can be found inside a beta,
did he
? Anyway if that’s the case then what you probably mean is that
according
to you he shouldn’t have told us about it in the first place rather
than
just not mention the build number, but that’s too late now. Is it true
you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message
news:xxxxx@ntdev…
> As beta releases are sort of NDA’d I think the OP can’t really
respond.
> Perhaps he means a later beta.
>
>
>
>
>
>

This change is in the 5270 and 5308 WDKs, not the 5112. As far as I know

the post-5112 WDKs are public on MSDN…or at least they are supposed to

be. In any case, I haven’t violated any NDA – I’m not distributing the
PDBs. I actually posted here because a lot of MS people read this
newsgroup, so in case it was a mistake, they can fix it. I wish the WDK
beta would have its own newsgroup… there is not a single newsgroup in
the Vista beta for driver developers.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Is this why the WDK was removed from Connect and MSDN today?

Beverly

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Monday, March 06, 2006 6:27 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

I fwd’ed the issue to the WDK folks yesterday.

Thx
d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Alex Ionescu
[397670]
Sent: Monday, March 06, 2006 3:19 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Daniel Terhell wrote:

Yes, thanks a lot but he didn’t say this can be found inside a beta,
did he
? Anyway if that’s the case then what you probably mean is that
according
to you he shouldn’t have told us about it in the first place rather
than
just not mention the build number, but that’s too late now. Is it true
you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message
news:xxxxx@ntdev…
> As beta releases are sort of NDA’d I think the OP can’t really
respond.
> Perhaps he means a later beta.
>
>
>
>
>
>

This change is in the 5270 and 5308 WDKs, not the 5112. As far as I know

the post-5112 WDKs are public on MSDN…or at least they are supposed to

be. In any case, I haven’t violated any NDA – I’m not distributing the
PDBs. I actually posted here because a lot of MS people read this
newsgroup, so in case it was a mistake, they can fix it. I wish the WDK
beta would have its own newsgroup… there is not a single newsgroup in
the Vista beta for driver developers.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

I have no idea, I just fwd’ed the issue and haven’t heard back from
them.

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Brown, Beverly
Sent: Monday, March 06, 2006 3:37 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Is this why the WDK was removed from Connect and MSDN today?

Beverly

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Monday, March 06, 2006 6:27 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

I fwd’ed the issue to the WDK folks yesterday.

Thx
d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Alex Ionescu
[397670]
Sent: Monday, March 06, 2006 3:19 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Daniel Terhell wrote:

Yes, thanks a lot but he didn’t say this can be found inside a beta,
did he
? Anyway if that’s the case then what you probably mean is that
according
to you he shouldn’t have told us about it in the first place rather
than
just not mention the build number, but that’s too late now. Is it true
you
found this inside some beta Alex or can it be downloaded from MSDN ?

/Daniel

“Roddy, Mark” wrote in message
news:xxxxx@ntdev…
> As beta releases are sort of NDA’d I think the OP can’t really
respond.
> Perhaps he means a later beta.
>
>
>
>
>
>

This change is in the 5270 and 5308 WDKs, not the 5112. As far as I know

the post-5112 WDKs are public on MSDN…or at least they are supposed to

be. In any case, I haven’t violated any NDA – I’m not distributing the
PDBs. I actually posted here because a lot of MS people read this
newsgroup, so in case it was a mistake, they can fix it. I wish the WDK
beta would have its own newsgroup… there is not a single newsgroup in
the Vista beta for driver developers.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Ha so this is what has happen eh? I started to think I had gone bananas
(well, more bananas, to be honest) since I could not find WDK 5308 not
nowhere. Thanks for the tip :slight_smile:

Cheers
Lyndon

“Brown, Beverly” wrote in message news:xxxxx@ntdev…
Is this why the WDK was removed from Connect and MSDN today?

Beverly

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Monday, March 06, 2006 6:27 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

I fwd’ed the issue to the WDK folks yesterday.

Thx
d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Alex Ionescu
[397670]
Sent: Monday, March 06, 2006 3:19 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Private HAL/Kernel Symbols in WDK… “oops” or new
policy?

Daniel Terhell wrote:
> Yes, thanks a lot but he didn’t say this can be found inside a beta,
did he
> ? Anyway if that’s the case then what you probably mean is that
according
> to you he shouldn’t have told us about it in the first place rather
than
> just not mention the build number, but that’s too late now. Is it true
you
> found this inside some beta Alex or can it be downloaded from MSDN ?
>
> /Daniel
>
>
> “Roddy, Mark” wrote in message
news:xxxxx@ntdev…
> As beta releases are sort of NDA’d I think the OP can’t really
respond.
> Perhaps he means a later beta.
>
>
>
>
>
>

This change is in the 5270 and 5308 WDKs, not the 5112. As far as I know

the post-5112 WDKs are public on MSDN…or at least they are supposed to

be. In any case, I haven’t violated any NDA – I’m not distributing the
PDBs. I actually posted here because a lot of MS people read this
newsgroup, so in case it was a mistake, they can fix it. I wish the WDK
beta would have its own newsgroup… there is not a single newsgroup in
the Vista beta for driver developers.

Best regards,
Alex Ionescu


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer