<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Cyril Voisin (aka Voy) on security</title><link>http://blogs.technet.com/voy/default.aspx</link><description>Security is not important. Well... as long as your level of security is high enough!</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Linux-Windows Vista dual boot with BitLocker and a TPM</title><link>http://blogs.technet.com/voy/archive/2008/05/12/linux-windows-vista-dual-boot-with-bitlocker-and-a-tpm.aspx</link><pubDate>Mon, 12 May 2008 17:58:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3054150</guid><dc:creator>Voy</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/voy/comments/3054150.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=3054150</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Based on my earlier posts, I've recently written a whitepaper for Microsoft France on how to build a machine that is capable of dual booting either Linux or Windows Vista when the latter is protected by BitLocker leveraging a TPM chip.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;If you understand French, you' ll find the whitepaper, a webcast where I describe the steps and a video showing all the process and test of the final result on Microsoft's France interoperability website (&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/france/interop"&gt;&lt;FONT face=Calibri size=3&gt;http://www.microsoft.com/france/interop&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;). To directly access the file please go to &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/france/interop/themes/infrastructure/20080430-dualboot-linux-bitlocker/default.mspx"&gt;&lt;FONT face=Calibri size=3&gt;http://www.microsoft.com/france/interop/themes/infrastructure/20080430-dualboot-linux-bitlocker/default.mspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The video&amp;nbsp;("Partie2") is annotated with French callouts but it should be easy to understand even to non French speaking people. Here are the different sequences you can watch (the file embeds markers to jump directly to the different sections) :&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;0’00”: Linux OpenSuse install&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Install Linux" style="WIDTH: 627px; HEIGHT: 473px" height=473 alt="Install Linux" src="http://blogs.technet.com/photos/voy/images/3054116/original.aspx" width=627 mce_src="http://blogs.technet.com/photos/voy/images/3054116/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;4’28”: GRUB install out of MBR, on the Linux partition; get a copy of Linux boot sector&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;&lt;IMG title="Install GRUB outside MBR - 1" style="WIDTH: 510px; HEIGHT: 345px" height=345 alt="Install GRUB outside MBR - 1" src="http://blogs.technet.com/photos/voy/images/3054118/original.aspx" width=510 mce_src="http://blogs.technet.com/photos/voy/images/3054118/original.aspx"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Install GRUB outside MBR - 2" alt="Install GRUB outside MBR - 2" src="http://blogs.technet.com/photos/voy/images/3054120/original.aspx" mce_src="http://blogs.technet.com/photos/voy/images/3054120/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;6’22”: Windows Vista install&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title=Partitioning style="WIDTH: 627px; HEIGHT: 488px" height=488 alt=Partitioning src="http://blogs.technet.com/photos/voy/images/3054121/original.aspx" width=627 mce_src="http://blogs.technet.com/photos/voy/images/3054121/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Install Windows Vista - choose partition" style="WIDTH: 628px; HEIGHT: 471px" height=471 alt="Install Windows Vista - choose partition" src="http://blogs.technet.com/photos/voy/images/3054122/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054122/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Install Windows Vista" style="WIDTH: 628px; HEIGHT: 472px" height=472 alt="Install Windows Vista" src="http://blogs.technet.com/photos/voy/images/3054123/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054123/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;10’54”: add an entry for Linux/GRUB in Windows Vista Boot Manager, using bcdedit tool&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title=bcdedit style="WIDTH: 628px; HEIGHT: 332px" height=332 alt=bcdedit src="http://blogs.technet.com/photos/voy/images/3054124/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054124/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;13’11”: boot test with Linux BEFORE enabling BitLocker; NTFS partitions mount&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;&lt;IMG title="NTFS partition view from Linux BEFORE BitLocker is enabled" style="WIDTH: 628px; HEIGHT: 451px" height=451 alt="NTFS partition view from Linux BEFORE BitLocker is enabled" src="http://blogs.technet.com/photos/voy/images/3054132/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054132/original.aspx"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;15’09”: enable TPM in BIOS&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="TPM enablement in Dell D820 BIOS" style="WIDTH: 628px; HEIGHT: 477px" height=477 alt="TPM enablement in Dell D820 BIOS" src="http://blogs.technet.com/photos/voy/images/3054125/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054125/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;15’32”: BitLocker enablement with TPM from Windows Vista&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="BitLocker enabling" style="WIDTH: 628px; HEIGHT: 459px" height=459 alt="BitLocker enabling" src="http://blogs.technet.com/photos/voy/images/3054126/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054126/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Save recovery password - BitLocker with TPM" style="WIDTH: 483px; HEIGHT: 539px" height=539 alt="Save recovery password - BitLocker with TPM" src="http://blogs.technet.com/photos/voy/images/3054127/original.aspx" width=483 mce_src="http://blogs.technet.com/photos/voy/images/3054127/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Turn on BitLocker after system check" style="WIDTH: 483px; HEIGHT: 539px" height=539 alt="Turn on BitLocker after system check" src="http://blogs.technet.com/photos/voy/images/3054128/original.aspx" width=483 mce_src="http://blogs.technet.com/photos/voy/images/3054128/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="BitLocker system check OK" style="WIDTH: 628px; HEIGHT: 278px" height=278 alt="BitLocker system check OK" src="http://blogs.technet.com/photos/voy/images/3054129/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054129/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="BitLocker encryption" style="WIDTH: 331px; HEIGHT: 108px" height=108 alt="BitLocker encryption" src="http://blogs.technet.com/photos/voy/images/3054130/original.aspx" width=331 mce_src="http://blogs.technet.com/photos/voy/images/3054130/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;22’38”: boot test with Linux AFTER Bitlocker was enabled using a TPM; NTFS partitions mount fails&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Partition encrypted by BitLocker not mountable by Linux" style="WIDTH: 510px; HEIGHT: 345px" height=345 alt="Partition encrypted by BitLocker not mountable by Linux" src="http://blogs.technet.com/photos/voy/images/3054117/original.aspx" width=510 mce_src="http://blogs.technet.com/photos/voy/images/3054117/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;24’18”: boot test with Windows VistaAFTER BitLocker was enabled using a TPM; visualize partition with DiskScape tool&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Low level view of partition encrypted by BitLocker, with DiskScape" style="WIDTH: 628px; HEIGHT: 425px" height=425 alt="Low level view of partition encrypted by BitLocker, with DiskScape" src="http://blogs.technet.com/photos/voy/images/3054133/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054133/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="encrypted partition with BitLocker seen in clear through BitLocker filter driver" style="WIDTH: 628px; HEIGHT: 424px" height=424 alt="encrypted partition with BitLocker seen in clear through BitLocker filter driver" src="http://blogs.technet.com/photos/voy/images/3054134/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054134/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;25’23”: add entry for Boot Manager in GRUB&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;26’32”: secure startup test launching machine through Boot Manager then GRUB then Boot Manager&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Secure startup with BitLocker - modified boot chain" style="WIDTH: 627px; HEIGHT: 439px" height=439 alt="Secure startup with BitLocker - modified boot chain" src="http://blogs.technet.com/photos/voy/images/3054135/original.aspx" width=627 mce_src="http://blogs.technet.com/photos/voy/images/3054135/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Secure startup with BitLocker - modified boot chain, USB key requested" style="WIDTH: 628px; HEIGHT: 426px" height=426 alt="Secure startup with BitLocker - modified boot chain, USB key requested" src="http://blogs.technet.com/photos/voy/images/3054136/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054136/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;IMG title="Secure startup with BitLocker - modified boot chain, recovery password entry" style="WIDTH: 628px; HEIGHT: 473px" height=473 alt="Secure startup with BitLocker - modified boot chain, recovery password entry" src="http://blogs.technet.com/photos/voy/images/3054137/original.aspx" width=628 mce_src="http://blogs.technet.com/photos/voy/images/3054137/original.aspx"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;27’20”: secure startup test using a bootable DVD in startup chain&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3054150" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/interoperability/default.aspx">interoperability</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/Linux/default.aspx">Linux</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Network restrictions for service hardening</title><link>http://blogs.technet.com/voy/archive/2007/04/02/network-restrictions-for-service-hardening.aspx</link><pubDate>Mon, 02 Apr 2007 19:44:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:722588</guid><dc:creator>Voy</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/voy/comments/722588.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=722588</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;(&lt;I style="mso-bidi-font-style: normal"&gt;This is part 5 of our series of posts on service hardening&lt;/I&gt;.)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Last but not least a service can be (and should be) configured to have network restrictions with what is called the "Windows Service Hardening" rules in the Windows SDK (we'll call those WSH rules for short). As a service developer, it is your responsibility to setup those rules during the installation and configuration of your service. Why? Because you know what network access (if any) your service needs, and by setting up WSH rules you can make sure your service will only get access to network ports and protocols it needs, thus contributing to the overall defense of the system and the environment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;What is different with those WSH network rules and, let's say, the Windows Firewall with Advanced Firewall Security rules? Well, technically, it is reasonable to think that the WSH are evaluated and enforced by Windows Vista integrated firewall. However, from a functional standpoint, they are totally independent and separate:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Once defined, WSH rules for your service are en forced no matter what the firewall configuration may be. The administrator may have turned off all firewalls, yet this won’t affect the WSH rules that you have setup.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;WSH network restrictions rules can only be used to restrict access, they cannot in any way grant access to a network resource that would not already be allowed by the firewall. WSH rules are evaluated first, before those of the firewall.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;WSH rules cannot be configured with the Windows Firewall with Advanced Security administration tools such as the WF.msc MMC snap-in or netsh. They can only be defined with the API. So once your service has been installed and the WSH rules put in place, there is no way (short of programming or scripting) an administrator may change them while administering the firewall.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;As a service developer for Windows Vista and Longhorn server, it is a best practice to take advantage of the service network restriction mechanism and setup the WSH rules for your service. In addition, the network resources that your service needs should be documented so that the IT folks in charge of a deployment can configure the firewall accordingly.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To define WSH rules, one uses the &lt;I style="mso-bidi-font-style: normal"&gt;INetFwServiceRestriction&lt;/I&gt; interface which can be used from C++ code or VB scripts. Calling the &lt;I style="mso-bidi-font-style: normal"&gt;RestrictService&lt;/I&gt; method with the &lt;I style="mso-bidi-font-style: normal"&gt;restrictService&lt;/I&gt; parameter set to TRUE creates two rules that will block all inbound and outbound network communication for your service. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;This is what the following script would do:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;' Create the FwPolicy2 object.&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;Dim&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt; fwPolicy2&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;Set&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt; fwPolicy2 = CreateObject(&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;"HNetCfg.FwPolicy2"&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;)&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;' Get the Service Restriction object for the local firewall policy.&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;Dim&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt; ServiceRestriction&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;Set&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt; ServiceRestriction = fwPolicy2.ServiceRestriction&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;' Restrict a service&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;ServiceRestriction.RestrictService ServiceName, ProgramName, &lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;TRUE&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;, &lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;FALSE&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;Those two rules can be seen in the WSH rules section of the registry (&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\&lt;B style="mso-bidi-font-weight: normal"&gt;RestrictedServices\Configurable&lt;/B&gt;\System&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;):&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #b6dde8; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-background-themecolor: accent5; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themetint: 102"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;v2.0|Action=Block|Active=TRUE|Dir=Out|App=c:\mysvc\mysvc.exe|Svc=mysvc|Name=Outbound service restriction rule for mysvc|Desc=Block all outbound traffic from service mysvc|Edge=FALSE|&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;v2.0|Action=Block|Active=TRUE|Dir=In|App=c:\mysvc\mysvc.exe|Svc=mysvc|Name=Inbound service restriction rule for mysvc|Desc=Block all inbound traffic to service mysvc|Edge=FALSE|&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;Notice that those rules refer to the service specifically (by its short name) and affect only the service (and not other software components). &lt;/FONT&gt;&lt;A href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx" mce_href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Per-service SID&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; (see our previous posts on service hardening) and WSH network restriction rules go hand in hand. If your service does not already have a per-service SID, the &lt;I style="mso-bidi-font-style: normal"&gt;RestrictService&lt;/I&gt; API will configure it to have one. In addition, if your service is to be run write-restricted, you can set the &lt;I style="mso-bidi-font-style: normal"&gt;serviceSidRestricted&lt;/I&gt; parameter to TRUE. This is convenient as it saves you from having to call &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig2.&lt;/I&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Imagine now that your service needs outbound network access on TCP port 8080, you can define the appropriate rules with the &lt;I style="mso-bidi-font-style: normal"&gt;INetFwRule&lt;/I&gt; interface. The following script (in addition to the previous one would) would restrict the service for outbound communication on that port and protocol only:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;Dim&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt; CurrentRule&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;set&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt; CurrentRule = CreateObject(&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;"HNetCfg.FwRule"&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;)&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.Name = &lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;"MySvc network restriction"&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.ApplicationName = ProgramName&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.ServiceName = ServiceName&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.Protocol = 6&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.RemotePorts = 8080&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.Direction = NET_FW_RULE_DIR_OUT&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;CurrentRule.Enabled = &lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;TRUE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt; mso-ascii-font-family: Calibri"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #d9d9d9; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; BORDER-LEFT: medium none; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;ServiceRestriction.Rules.Add CurrentRule&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The corresponding WSH service network restriction rules in the registry would be:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #b6dde8; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-background-themecolor: accent5; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themetint: 102"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;v2.0|Action=Allow|Active=TRUE|Dir=Out|Protocol=6|RPort=8080|App=c:\mysvc\mysvc.exe|Svc=mysvc|Name=Allow mysvc (c:\mysvc\mysvc.exe) outbound on port 8080|Edge=FALSE|&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;v2.0|Action=Block|Active=TRUE|Dir=Out|App=c:\mysvc\mysvc.exe|Svc=mysvc|Name=Outbound service restriction rule for mysvc|Desc=Block all outbound traffic from service mysvc|Edge=FALSE|&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; BACKGROUND: #b6dde8; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-LEFT: medium none; LINE-HEIGHT: normal; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-background-themecolor: accent5; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-layout-grid-align: none; mso-background-themetint: 102"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: 'Segoe Semibold'; mso-font-kerning: 12.0pt"&gt;v2.0|Action=Block|Active=TRUE|Dir=In|App=c:\mysvc\mysvc.exe|Svc=mysvc|Name=Inbound service restriction rule for mysvc|Desc=Block all inbound traffic to service mysvc|Edge=FALSE|&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Segoe Semibold','serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Segoe Semibold'; mso-fareast-font-family: 'Times New Roman'; mso-font-kerning: 12.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;What about Windows Vista native services? Well most of them have their own network restriction rules. Actually, the &lt;I style="mso-bidi-font-style: normal"&gt;INetFwServiceRestriction&lt;/I&gt; and &lt;I style="mso-bidi-font-style: normal"&gt;INetFwRule&lt;/I&gt; APIs cannot be used to configure restrictions for the OS native services. So network restrictions for native services are something fully static. It is configured once for all at the OS install (development?) time and cannot be changed. You may notice that while WSH rules are stored in the &lt;/FONT&gt;&lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;RestrictedServices\Configurable&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt; subkey, Windows Vista native services network restriction rules are stored separately in &lt;/FONT&gt;&lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;RestrictedServices\Static&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; subkey.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=722588" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/service+hardening/default.aspx">service hardening</category><category domain="http://blogs.technet.com/voy/archive/tags/development/default.aspx">development</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Write-restricted token</title><link>http://blogs.technet.com/voy/archive/2007/04/01/write-restricted-token.aspx</link><pubDate>Sun, 01 Apr 2007 20:10:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:721117</guid><dc:creator>Voy</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/voy/comments/721117.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=721117</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;(&lt;I style="mso-bidi-font-style: normal"&gt;This is part 4 of our series of posts on service hardening.&lt;/I&gt;)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;A service can be configured to be write-restricted, in addition to having a per-service SID. To do so, you specify a SID type of "Restricted" when configuring your service (see our previous post “&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx" mce_href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Per-service SID&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;”). In that case the process hosting your service will run with a (new to Windows Vista) "write-restricted" token.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Hmmm, what is this animal, and what does it mean?&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;You may have heard of (or maybe be familiar with) restricted tokens. There are several definitions for those, one of which is a token issued from the &lt;I style="mso-bidi-font-style: normal"&gt;CreateRestrictedToken&lt;/I&gt; API. We like to think of restricted tokens as tokens that have Restricting SIDs. When the system evaluates access to a resource, if there are restricting SIDs, the evaluation is made with two independent passes. The first pass uses the User SID and the Group SIDs, and the second pass uses the Restricting SIDs. For access to be granted, both passes must succeed. What that means is that Restricting SIDs can only be used to restrain access that a user account would have to start with but not broaden it in any event. Another case of the recurring "always restrain, never broaden" scheme.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;We see restricted tokens along with the S-1-5-12 Restricted Code SID as early attempts to run applications with lower privilege and were used by "Run As…" with the "Protect my computer and data from unauthorized program activity” checkbox (no longer in Vista). In addition to Windows SDK documentation, you may want to check out blogs from &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/aaron_margosis/archive/2004/09/10/227727.aspx" mce_href="http://blogs.msdn.com/aaron_margosis/archive/2004/09/10/227727.aspx"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Aaron Margosis&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt; and &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/larryosterman/archive/2004/09/01/224051.aspx" mce_href="http://blogs.msdn.com/larryosterman/archive/2004/09/01/224051.aspx"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Larry Osterman&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt; for comments on these topics as well as Keith Brown's &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://www.pluralsight.com/books/pws/" mce_href="http://www.pluralsight.com/books/pws/"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Programming Windows Security&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;A write-restricted token (new to Windows Vista) is one that is flagged as WRITE_RESTRICTED (have a look at winnt.h). With a write-restricted token, the evaluation of the Restricting SIDs is only effective for write access checks. So &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;a write-restricted token can be seen as less restrictive than a restricted token&lt;/I&gt;&lt;/B&gt; which is restricted for all types of accesses, and not only writes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The write-restricted token for a "Restricted" service will have the following restricting SIDs: the per-service SID, the logon SID, the Everyone SID, and the (new to Vista) write-restricted SID (S-1-5-33 or NT AUTHORITY\WRITE RESTRICTED). The per-service SID and the write-restricted SID are also added to the Group SIDs. What does that mean? &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Let's try:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Writes are only possible by virtue of the service SID, the logon SID, Everyone SID, or write-restricted SID, and not the service account nor its groups. Reads are unaffected.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The write-restricted SID allows for granting access to write-restricted services as a class, without forehand knowledge of which services will be write-restricted.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;By default, the write-restricted service looses write access to a lot of resources it would normally have access to by virtue of its account and groups. Write access must be explicitly granted to the service SID, the logon SID, the write-restricted class, or Everyone to be possible.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;While running your service as "Unrestricted" (see our previous post “&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx" mce_href="https://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Per-service SID&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;”) allows you to protect &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;your&lt;/I&gt;&lt;/B&gt; resources using the per-service SID, running your service as "Restricted" protects the system in the event your code would get compromised (how can that be? &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Wingdings; mso-ansi-language: EN-US; mso-hansi-font-family: Calibri; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;). It is a measure of good citizenship: your code runs write-restricted and its impact on the system in case of an exploit is mitigated. Is it expensive? You bet it is. You have to determine all write accesses your code will need and make sure you explicitly grant that access to your service. Are there tools to do so? We don't know, please comment…&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="mso-fareast-language: FR; mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /&gt;&lt;v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;&lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0"&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"&gt;&lt;/v:path&gt;&lt;o:lock v:ext="edit" aspectratio="t"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;A built-in example&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;In Windows Vista, only a few services are natively provided as “write-restricted”. The &lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;sc qsidtype MpsSvc&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;BR&gt;&lt;FONT face=Calibri size=3&gt;command will show you that the Windows Firewall service (MpsSvc, short &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;for Microsoft Protection Service) is configured to be a “Restricted” service:&lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [SC] QueryServiceConfig2 SUCCESS&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SERVICE_NAME: MpsSvc&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SERVICE_SID_TYPE:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;RESTRICTED&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;A quick inspection with a tool showing security tokens, like Process Explorer, will confirm that this service is indeed using a write-restricted token. The Windows Firewall service is hosted in a svchost.exe process running with the Local Service account and which also contains other services: Base Filtering Engine, Diagnostic Policy Service, Windows Media Center Service Launcher, Performance Logs &amp;amp; Alerts. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;The &lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;icacls C:\Windows\System32\LogFiles\Firewall&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;command will return &lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT SERVICE\MpsSvc:(OI)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT AUTHORITY\SYSTEM:(OI)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BUILTIN\Administrators:(OI)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT SERVICE\TrustedInstaller:(I)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT SERVICE\TrustedInstaller:(I)(CI)(IO)(F)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT AUTHORITY\SYSTEM:(I)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BUILTIN\Administrators:(I)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BUILTIN\Administrators:(I)(OI)(CI)(IO)(F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BUILTIN\Users:(I)(RX)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CREATOR OWNER:(I)(OI)(CI)(IO)(F)&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;showing an explicit ACE granting full control to the MpsSvc service SID. This is used to protect this folder and its content, namely firewall logs. As the Windows Firewall service is a write-restricted service, the net result will be that except for this folder and its content, the service won’t be able to write anywhere else on the file system except places where Everyone can write (or that have an explicit write permission for NT AUTHORITY\WRITE RESTRICTED which we did not find. If you do, please share by posting a comment. Thank you).&amp;nbsp;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;The same reasoning was applied to the registry: the &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; &lt;BR&gt;key. Looking at its ACL&amp;nbsp;shows inherited permissions granting full control to Administrators and System and read permission for Users on the key and its subkeys, full &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;control for the owner of any subkey and explicitly grant full control for MpsSvc service on the key and its subkeys. As we’ll see in our next post, some subkeys here are used to apply network restrictions on services. Therefore, it is particularly interesting to protect those rules so that only the Windows Firewall service NT AUTHORITY\WRITE RESTRICTED, an Administrator or the System can modify or create them. Moreover, due to the use of a write-restricted token, the Windows Firewall service can only write in this part of the registry and nowhere else except on keys Everyone can write to (or that show an explicit write permission to NT AUTHORITY\WRITE RESTRICTED; so far, we don’t know any shipping with Windows Vista. If you find one please share with all of us by posting a comment. Thank you).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=721117" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/service+hardening/default.aspx">service hardening</category><category domain="http://blogs.technet.com/voy/archive/tags/development/default.aspx">development</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Per-service SID</title><link>http://blogs.technet.com/voy/archive/2007/03/22/per-service-sid.aspx</link><pubDate>Thu, 22 Mar 2007 21:20:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:704450</guid><dc:creator>Voy</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/voy/comments/704450.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=704450</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;EM&gt;(This is part&amp;nbsp;3 of our series of posts on service hardening.)&amp;nbsp;&lt;/EM&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Under Windows Vista/Longhorn Server, your service can now have its own SID (Security Identifier), which you can then use in ACLs to protect your service resources. You configure your service to be assigned a per-service SID during its installation with the &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig2&lt;/I&gt; API (dwInfoLevel= SERVICE_CONFIG_SERVICE_SID_INFO) or the &lt;I style="mso-bidi-font-style: normal"&gt;sc.exe&lt;/I&gt; command with the &lt;I style="mso-bidi-font-style: normal"&gt;sidtype&lt;/I&gt; verb. In either case, three values are possible:&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;None – 0x0&lt;BR&gt;Unrestricted – 0x1&lt;BR&gt;Restricted – 0x3&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If you want your service to have a per-service SID (as covered in this blog post), you should use "Unrestricted" for the type of SID. This means setting the SERVICE_SID_INFO.dwServiceSidType to SERVICE_SID_TYPE_UNRESTRICTED (0x1) if you are using the API, or using the following syntax with &lt;I style="mso-bidi-font-style: normal"&gt;sc.exe&lt;/I&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;sc&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;sidtype&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt; [&lt;I&gt;service name&lt;/I&gt;] &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;unrestricted&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;You can also query the current configuration of your service with:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;sc&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;qsidtype&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt; &lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;[&lt;I&gt;service name&lt;/I&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;We find the semantics "type of SID" is a little funny, but once you get used to it, it's okay. A type of SID "None" means your service will not have a per-service SID nor a write-restricted token.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Currently this is the default configuration for a service: no per-service SID. A type of SID "Unrestricted" means your service will have a per-service SID. A type of SID "Restricted" means your service will have a per-service SID and also a "write-restricted" token (this is our next post).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;When configured to have a per-service SID (i.e. type of SID either "Unrestricted" or "Restricted"), the service SID is computed as S-1-5-80-{SHA-1(service name in uppercase)} and added to the host process token. If you need to know what the SID is or would be for a given service name, you can use the &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;sc&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;showsid&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt; &lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;[&lt;I&gt;service name&lt;/I&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;command. This can be done through the use of APIs as well.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;Once you have configured your service to have a per-service SID, you can grant access to resources your service needs. Prior to Windows Vista, when running your service with a built-in account (Local Service or Network Service), granting access to a resource for your service meant granting access to the other services running with that account as well. To avoid that side effect, you had to run your service with a dedicated account. Now with the per-service SID mechanism of Windows Vista, you can use the built-in service accounts while benefiting from the higher granularity of the per-service SID and thus ACL resources for your service only. When using the ACL editor (either on the file system, or registry) or icacls command line tool, you can use the "NT SERVICE&lt;I style="mso-bidi-font-style: normal"&gt;\&amp;lt;service_name&amp;gt;&lt;/I&gt;" syntax to add your service SID to a resource. &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;In a recent &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/msdnmag/issues/07/01/SecurityBriefs/" mce_href="http://msdn.microsoft.com/msdnmag/issues/07/01/SecurityBriefs/"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Security Briefs&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; article, Keith Brown shows how to factor out the higher privileged protocol transition operation in a COM+ component so a network facing gateway can be ran with lower privileges. In one of our projects, the gateway is a service configured with a service SID. We tried to add the service SID in COM+ roles with the "Component Services" mmc , to allow only our service to access the protocol transition component. But we found we couldn’t. However using a local group as an indirection, and adding the service SID to the local group worked just fine.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Configuring your service for a type of SID "Unrestricted" and thus having a service SID is a great way to either protect the resources your service needs, or in an environment that has been hardened, make sure that you only open access to your service. It is cheap to implement with a good return in terms of security gain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=704450" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/service+hardening/default.aspx">service hardening</category><category domain="http://blogs.technet.com/voy/archive/tags/development/default.aspx">development</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Least privilege for services</title><link>http://blogs.technet.com/voy/archive/2007/03/21/least-privilege-for-services.aspx</link><pubDate>Wed, 21 Mar 2007 17:17:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:703016</guid><dc:creator>Voy</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/voy/comments/703016.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=703016</wfw:commentRss><description>&lt;P&gt;This is part 2 of our series of posts on service hardening.&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Calibri&gt;"Need to have" and least privilege principle&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Executing with least privilege is a good practice of computer security.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;As with the "need to know" principle for information access, there should be a "need to have" principle for privileges. If your code does not need a specific privilege why should it run with it?&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;With Windows Vista, &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A title="UAC team blog" href="http://blogs.msdn.com/uac/" mce_href="http://blogs.msdn.com/uac/"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;User Account Control&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; ensures that user applications execute with less (and lower) privileges by default. User Account Control does &lt;I style="mso-bidi-font-style: normal"&gt;not&lt;/I&gt;, however, apply to nor affect Win32 services which have their own mechanism (new to Windows Vista) for execution with least privileges. In Windows Vista and Longhorn Server, the &lt;I style="mso-bidi-font-style: normal"&gt;RequiredPrivileges&lt;/I&gt; registry key allows to specify the privileges that the service should execute with. The process hosting the service will only have the privileges specified in &lt;I style="mso-bidi-font-style: normal"&gt;RequiredPrivileges&lt;/I&gt; , and other privileges will be removed from the process token.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Although this may seem obvious, it is still worth stating that the &lt;I style="mso-bidi-font-style: normal"&gt;RequiredPrivilege&lt;/I&gt; mechanism cannot in any case be used to augment the privileges of services but only to reduce them. If &lt;I style="mso-bidi-font-style: normal"&gt;RequiredPrivileges&lt;/I&gt; refers to privileges that the service account does not already have, those privileges will be ignored. This is a recurring scheme in security by which a given mechanism can be used to restrain, but not to widen access.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;o:p&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Calibri&gt;Configure your service for least privilege&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;As a developer you should determine what minimum privileges your service needs and configure your service during its installation to run with those privileges only. This is an initiative of "good citizenship" on your part to lower the potential damage to the system in the event your code gets compromised. You can configure your service for least privilege with the &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig2&lt;/I&gt; API. If you don't, the administrator can still do it using the &lt;I style="mso-bidi-font-style: normal"&gt;sc.exe&lt;/I&gt; command: &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;FONT face="Lucida Console" size=2&gt;sc privs &lt;/FONT&gt;[&lt;I&gt;service name&lt;/I&gt;] [&lt;I&gt;Privileges&lt;/I&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;And the current configuration for a service can be queried with the &lt;I style="mso-bidi-font-style: normal"&gt;qprivs&lt;/I&gt; verb:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;FONT face="Lucida Console" size=2&gt;sc qprivs &lt;/FONT&gt;[&lt;I&gt;service name&lt;/I&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Whether you use the &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig2&lt;/I&gt; API or the &lt;I style="mso-bidi-font-style: normal"&gt;sc.exe&lt;/I&gt; command, you specify a privilege by its string. For instance, for the impersonate privilege, you would use "SeImpersonatePrivilege". The Windows SDK and winnt.h has the list of those and corresponding constants for each privilege strings (look for "Privilege Constants").&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;How do you determine which privileges your service needs? To our knowledge, this has to be done manually (please correct us if profiling tools similar to the ones for UAC analysis are available). Fortunately, the Windows SDK documentation often mentions the privileges needed when working with a given API and also whether those privileges should be enabled before calling the API versus whether the API is taking care of that. You may need to read the &lt;I style="mso-bidi-font-style: normal"&gt;Remarks&lt;/I&gt; section carefully though. For instance, the SDK documentation for &lt;I style="mso-bidi-font-style: normal"&gt;ImpersonateLoggedOnUser&lt;/I&gt; states that "&lt;I style="mso-bidi-font-style: normal"&gt;The calling thread does &lt;U&gt;not&lt;/U&gt; need to have any particular privilege&lt;/I&gt;." Sure, the API can be called without any particular privilege for some scenarios such as "identification level" impersonation, but if you want to do real impersonation, you do need the impersonate privilege.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In practice we've found that eliminating the unneeded privileges using knowledge of what the service does, code reviews, SDK documentation, and testing all execution paths was not too expensive and well worth the effort.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If you are hosting several services in the same process, the set of privileges the process gets is the union of those of its services. You should pay attention to this and regroup services according to their privilege requirements.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Calibri&gt;Built-in service accounts&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Local Service and Network Service built-in service accounts were designed to be able to run services with lower privileges (than those of the all powerful Local System) without having to use dedicated user accounts. Creating and using dedicated user accounts for running services can be less than ideal as those user accounts have to be created and managed, including their (hopefully long and strong) passwords.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Local Service has about eleven privileges and no network identity. A service running under Local Service may listen for client requests from the network but if it attempts to reach a remote service, it will be seen as anonymous and most likely will fail (unless of course the remote service accepts anonymous requests). Network Service has one less privilege (i.e. it does not have the &lt;I style="mso-bidi-font-style: normal"&gt;SeSystemTimePrivilege&lt;/I&gt;) and its network identity is the machine account on the domain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Before Windows Vista, using Local or Network Service built-in accounts lacked granularity as all services running under a built-in account had the same privileges. Thanks to the &lt;I style="mso-bidi-font-style: normal"&gt;RequiredPrivileges&lt;/I&gt; mechanism you can now have a fine granularity control over the privileges of your service without having recourse to dedicated user accounts. As a matter of fact, the other service hardening mechanisms in Windows Vista, which we will cover in our next posts, all tend to facilitate the use of built-in service accounts by providing more granular control. Several scenarii that previously reckoned for a dedicated user account are now possible with built-in accounts.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;That said, there are plenty situations where a dedicated domain wide user account is necessary and fully appropriate for running a service. One such example is when you need to trust your service (such as trust for delegation) or grant access to your service on a remote resource or service, and you've determined that you’d rather trust your service specifically than trust the machine account.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Calibri&gt;Windows Vista native services&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;Microsoft has gone at length in its effort to reduce privileges of native Win32 service in Windows Vista. You can use &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://www.microsoft.com/technet/sysinternals/Utilities/ProcessExplorer.mspx" mce_href="http://www.microsoft.com/technet/sysinternals/Utilities/ProcessExplorer.mspx"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Process Explorer&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; &lt;SPAN lang=EN-US&gt;to see the processes hosting Windows Vista services. A lot of native services are hosted using instances of svchost.exe (more on how native Vista services are grouped in svchost instances in our next posts). Notice that the DHCP Client service is hosted in a svchost instance that runs under Local Service with only four privileges (compare this with Local System and its twenty or so privileges under Windows XP).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Actually, the DHCP Client service only requires two privileges as shown by the sc command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;C:\Windows\System32&amp;gt;sc qprivs dhcp&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;[SC] QueryServiceConfig2 réussite(s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;SERVICE_NAME: dhcp&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;PRIVILEGES&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;: SeChangeNotifyPrivilege&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Console'; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;: SeCreateGlobalPrivilege&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The total of four privileges is due to the sharing of that svchost instance with other services such as the Eventlog or lmhosts services.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;By the way, if you wonder whether you could use svchost to host your service, the answer is you are not supposed to. Svchost is for operating system native services. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Voili voilou! That’s all folks. Our next posts will go over the other service hardening mechanisms of Vista which are the per-service SID, write-restricted services, and network restrictions.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=703016" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/service+hardening/default.aspx">service hardening</category><category domain="http://blogs.technet.com/voy/archive/tags/development/default.aspx">development</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Services isolation in Session 0 of Windows Vista and Longhorn Server</title><link>http://blogs.technet.com/voy/archive/2007/02/23/services-isolation-in-session-0-of-windows-vista-and-longhorn-server.aspx</link><pubDate>Fri, 23 Feb 2007 13:13:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:659439</guid><dc:creator>Voy</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/voy/comments/659439.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=659439</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;You may have heard that built-in services in Windows Vista were specifically hardened by Microsoft engineers during its development process. You might be wondering what that really means, how it works and, if you are a developer, how to harden your own services the Vista way. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Jean-Yves Poublan, a Principal Security Consultant at Microsoft, and I are publishing a series of posts on how to leverage Windows Vista new architecture to make your services more secure. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Today, we start with a significant change with Windows Vista and Longhorn Server: &lt;B style="mso-bidi-font-weight: normal"&gt;Win32 services are now isolated in Session 0&lt;/B&gt;. So, what does this mean for developers?&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;‘windows’ on ‘desktops’ in ‘window stations’ in ‘Terminal Services sessions’&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;Windows NT was designed to be a multi-user system through the use of sessions. The SDK refers to these as &lt;I style="mso-bidi-font-style: normal"&gt;Terminal Services sessions&lt;/I&gt; which are not to be confused with logon sessions, as they are not the same thing. Terminal Services sessions are created and managed by the session manager (smss.exe) which is one of the first processes created when the system starts. Logon sessions and processes somehow live within a Terminal Services session. &lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;Note : The Terminal Services session ID for a given logon session may be obtained by calling the &lt;I style="mso-bidi-font-style: normal"&gt;LsaGetLogonSessionData&lt;/I&gt; API after having enumerated the logon sessions (&lt;I style="mso-bidi-font-style: normal"&gt;LsaEnumerateLogonSessions&lt;/I&gt;). One may also get the Terminal Services session ID for a process with the &lt;I style="mso-bidi-font-style: normal"&gt;GetTokenInformation(TokenSessionId)&lt;/I&gt; API after having obtained the primary token for the process (&lt;I style="mso-bidi-font-style: normal"&gt;OpenProcessToken&lt;/I&gt;).&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Previous to Windows Vista and Longhorn Server, Win32 services and user applications for the console user (as well as winlogon.exe and the Win32 subsystem – csrss.exe) were all started within Terminal Services Session 0. A second Terminal Services session (Session 1) was created when a second user logged on (such as a user connecting through Terminal Services on Windows Server 2003, or a second user logging on Windows XP through Fast User Switching), and so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So &lt;B style="mso-bidi-font-weight: normal"&gt;user applications for the console user always shared Session 0 with system services. This is no longer the case with Windows Vista and Longhorn server.&lt;/B&gt; &lt;BR&gt;What is wrong with having system services and user applications live in the same session? Well, it mostly has to do with interactive services. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;First let’s recall what desktops and window stations are. Both are securable kernel objects in the sense that they are protected by ACLs. You can think of Terminal Services sessions having window stations that in turn contain desktops. There is a special window station called Winsta0 which is the windows station that is connected to the display and input devices.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Processes are attached to a window station which they are going to use (supposedly) to interact with the user. Threads within a process are themselves attached to a desktop (within the window station) on which they display windows and they get input from the user. Windows messages are confined within a desktop, and Winsta0 will typically have three desktops: the winlogon desktop, the interactive desktop, and the screen saver desktop. Winsta0 grants rights to SYSTEM and the logon SID, so only the system and the currently logged on user can access the console. When a user logs off, the logon SID is removed from Winsta0, and when a new user logs on, the new logon SID is added to Winsta0’s ACL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Windows, on the other hand, are user objects that are not securable by ACLs. So threads that have gained access to a desktop can send messages to any window on that desktop. In the past, applications that ran with higher privileges on the desktop have been vulnerable to the infamous &lt;I style="mso-bidi-font-style: normal"&gt;shatter attacks&lt;/I&gt; from other malicious applications.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Normally, Win32 services are not attached to Winsta0 (they don’t have the rights on Winsta0), but instead they get their own window stations. Those window stations are not connected to any hardware so if a service displays a window and waits for user input, it may well wait forever…&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Interactive services – to be avoided if at all possible&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Interactive services are services that are configured as such (flag &lt;I style="mso-bidi-font-style: normal"&gt;SERVICE_INTERACTIVE_PROCESS&lt;/I&gt; for &lt;I style="mso-bidi-font-style: normal"&gt;CreateService&lt;/I&gt; or &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig&lt;/I&gt; APIs). When the SCM starts a process for an interactive service, it attaches the service to Winsta0 instead of the service window station. In order to do so, the service process must run as SYSTEM (since only SYSTEM - and currently logged on user - have rights on Winsta0). Service threads can then attach to the interactive desktop and interact with the user.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;One can see two compounded problems here: interactive services are vulnerable to Windows messages attacks from malicious user applications, and those attacks &lt;B style="mso-bidi-font-weight: normal"&gt;can result in privilege elevation&lt;/B&gt; since interactive services run as SYSTEM with TCB privilege. So deploying an interactive service that is vulnerable could compromise the whole system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;There are other things wrong with interactive services. On Windows Server 2003 with Terminal Services, the user that is currently logged on at the console in Session 0 may not be the user that the service should interact with. On Windows XP with Fast User Switching, it is even worse. The currently active console user may not be Session 0, but Session 1 (or Session n). In that case, if the interactive service waits for user input, it may wait forever from Session 0 which is not active. It is said that interactive services with Fast User Switching just don’t work. Because of that, developing and deploying interactive services has been strongly discouraged. As a matter of fact, interactive services can be banned from the system by setting the &lt;I style="mso-bidi-font-style: normal"&gt;NoInteractiveServices&lt;/I&gt; registry value to 1 in &lt;I style="mso-bidi-font-style: normal"&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows&lt;/I&gt;. In that case, interactive services will still be started by the SCM (Services Control Manager), but they won’t be attached to Winsta0 (the SCM does log a warning in the event log). This is valid for Windows Vista and Longhorn as well.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Isolation of services in Session 0 with Windows Vista and Longhorn Server&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;With Windows Vista and Longhorn Server, user applications for the first logged on console user are now started in Terminal Services Session 1, and services in Session 0 are isolated from user applications. The second logged on user gets Session 2 and so on. Services isolation in Session 0 helps protecting the system from malicious user applications. Imagine one has installed an interactive service that is vulnerable, that interactive service will not share the desktop with (potentially) malicious user applications anymore and as such will be less likely to be compromised and used as a vehicle to attack the system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Services isolation in Session 0 affects all services that assume they are running in the same session as user applications&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;, and not only services that configured as interactive services. For instance, a service that communicates with user applications by way of Windows messages will no longer work. Also, a service that synchronizes with user applications through synchronization objects (semaphores, mutexes, etc…) created in the session private name space will no longer work as well. The global name space should be used instead (object names prefixed with Global\).&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Under Windows Vista and Longhorn, a service can still be configured to be an interactive service, but such configuration does not make a whole lot of sense, since the interactive service will be attached to the Winsta0 in Session 0, which does not have a physical console and user to interact with.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;If you have a service that is designed to be an interactive service and as such interacts with the desktop, or a service that assumes it is running in the same session as user applications, it is time to change it.&lt;/B&gt; Windows SDK does give some ideas of how a service could interact with users, without having to be an interactive service. This includes communicating with a user process through some form of IPC (preferably secure) channel, or using Terminal Services APIs such &lt;I style="mso-bidi-font-style: normal"&gt;WTSSendMessage&lt;/I&gt;. Determining which user (in which target session) your service should interact with is up to you but should not be overlooked.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;For legacy interactive services that cannot be changed in the short term, Windows Vista provides a compatibility mechanism called Interactive Service Detection service (ui0detect.exe).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;UI0Detect monitors interactive services in Wintsta0 of Session 0 and when such service displays a modal dialog it notifies the user in the currently active console session. The user can choose to switch to Winsta0/interactive desktop of Session 0 to respond to the dialog, and then switch back to the user session. UI0Detect is a temporary measure designed to limit the effect of Session 0 service isolation for existing interactive services that cannot be changed. As a service developer you should not count on that mechanism.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;What about &lt;I style="mso-bidi-font-style: normal"&gt;MessageBox() and MessageBox(MB_SERVICE_NOTIFICATION)&lt;/I&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;When calling the &lt;I style="mso-bidi-font-style: normal"&gt;MessageBox()&lt;/I&gt; API - *&lt;B style="mso-bidi-font-weight: normal"&gt;without&lt;/B&gt;* the &lt;I style="mso-bidi-font-style: normal"&gt;MS_SERVICE_NOTIFICATION&lt;/I&gt; flag - from a service that is not an interactive service, the thread waits forever. It is worth noting that if a non interactive service is programmed in managed code on the .Net Runtime, calling the &lt;I style="mso-bidi-font-style: normal"&gt;System.Windows.Forms.MessageBox.Show()&lt;/I&gt; method will raise an exception (“&lt;I style="mso-bidi-font-style: normal"&gt;System.InvalidOperationException: Showing a modal dialog box or form when the application is not running in UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application”&lt;/I&gt;) instead of hanging there waiting for user input. Also if the service is an interactive service, under Windows Vista, UI0Detect will handle the interaction for &lt;I style="mso-bidi-font-style: normal"&gt;MessageBox()&lt;/I&gt; – without &lt;I style="mso-bidi-font-style: normal"&gt;MB_SERVICE_NOTIFICATION&lt;/I&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The &lt;I style="mso-bidi-font-style: normal"&gt;MB_SERVICE_NOTIFICATION&lt;/I&gt; flag causes the system to redirect the message box to the interactive desktop (or winlogon desktop if there is no user logged on) on WinSta0 where it is handled by csrss.exe (the Win32 subsystem).It was designed to allow services that technically are not interactive services (i.e. they are not configured as interactive services and thus are not attached to Winsta0) to display a modal dialog message box on the interactive desktop and get user input. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Under Windows Vista RTM, this does not work however, in the sense that instead of the message box being redirected to the interactive desktop of a session with a user on it, or taken care of by UI0Detect as one could hope, the functions returns IDOK immediately with no user interaction whatsoever. It behaves that way even for services that are configured as interactive services and whose interactions are normally handled by UI0Detect. If your service uses &lt;I style="mso-bidi-font-style: normal"&gt;MessageBox(MB_SERVICE_NOTIFICATION)&lt;/I&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;to ask for user approval for some operation, it may need to be modified.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The following two tables summarize &lt;I style="mso-bidi-font-style: normal"&gt;MessageBox&lt;/I&gt; behaviors under Windows XP SP2 and Windows Vista RTM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE class=MsoNormalTable style="BORDER-COLLAPSE: collapse; mso-padding-alt: 0cm 0cm 0cm 0cm; mso-table-layout-alt: fixed; mso-yfti-tbllook: 1184" cellSpacing=0 cellPadding=0 width="100%" border=0 class="MsoNormalTable"&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 17.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230" vAlign=top width="27%"&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 36.72%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230; mso-border-left-alt: solid white 1.0pt" vAlign=top width="36%" colSpan=2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face=Calibri&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;NoInteractiveServices = 0&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 35.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230; mso-border-left-alt: solid white 1.0pt" vAlign=top width="35%" colSpan=2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face=Calibri&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;NoInteractiveServices = 1&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 90.15pt; mso-yfti-irow: 1"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 90.15pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SERVICE_INTERACTIVE_PROCESS&lt;BR&gt;(&lt;I style="mso-bidi-font-style: normal"&gt;CreateService&lt;/I&gt;, &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig&lt;/I&gt;) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Window station (service is running as SYSTEM)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 90.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= unchecked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$ &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 90.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000100&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= checked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;WinSta0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.4%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 90.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= unchecked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.24%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 90.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000100&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= checked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 68.3pt; mso-yfti-irow: 2"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 68.3pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;MessageBox() &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 68.3pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1) &lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 68.3pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Display OK (directly by service process)&lt;BR style="mso-special-character: line-break"&gt;&lt;BR style="mso-special-character: line-break"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.4%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 68.3pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1)&lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.24%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 68.3pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SCM warning in event log when starting the service &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1)&lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 81.8pt; mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.8pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;MessageBox(MB_SERVICE_NOTIFICATION) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.8pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Display OK (through csrss.exe) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.8pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Display OK (through csrss.exe)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.4%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.8pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Display OK (through csrss.exe)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.24%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.8pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SCM warning in event log when starting the service &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Display OK (through csrss.exe)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face=Calibri&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;MessageBox behavior on Windows XP SP2&lt;BR&gt;&lt;SUP&gt;(1)&lt;/SUP&gt; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;Managed code: runtime will raise an exception&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE class=MsoNormalTable style="BORDER-COLLAPSE: collapse; mso-padding-alt: 0cm 0cm 0cm 0cm; mso-table-layout-alt: fixed; mso-yfti-tbllook: 1184" cellSpacing=0 cellPadding=0 width="100%" border=0 class="MsoNormalTable"&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 17.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230" vAlign=top width="27%"&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 36.74%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230; mso-border-left-alt: solid white 1.0pt" vAlign=top width="36%" colSpan=2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face=Calibri&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;NoInteractiveServices = 0&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 7.2pt; BACKGROUND: #ddd9c3; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 35.62%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 3pt solid; HEIGHT: 17.9pt; mso-background-themecolor: background2; mso-background-themeshade: 230; mso-border-left-alt: solid white 1.0pt" vAlign=top width="35%" colSpan=2&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face=Calibri&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;NoInteractiveServices = 1&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 81.15pt; mso-yfti-irow: 1"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.15pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SERVICE_INTERACTIVE_PROCESS&lt;BR&gt;(&lt;I style="mso-bidi-font-style: normal"&gt;CreateService&lt;/I&gt;, &lt;I style="mso-bidi-font-style: normal"&gt;ChangeServiceConfig&lt;/I&gt;) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Window station (service is running as SYSTEM)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.38%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= unchecked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$ &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000100&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= checked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;WinSta0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.34%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= unchecked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.28%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 81.15pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 3.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;0x00000100&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;"Allow service to interact with desktop"= checked &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Service-0x0-3e7$&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 60.65pt; mso-yfti-irow: 2"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 60.65pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;MessageBox() &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.38%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 60.65pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1)&lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 60.65pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Interactive Service Detection – user can switch to Session 0 to respond service&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.34%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 60.65pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1)&lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #e7e7e7; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.28%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 60.65pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SCM warning in event log when starting the service &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – waiting forever &lt;SUP&gt;(1)&lt;/SUP&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 80pt; mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: white 1pt solid; WIDTH: 27.64%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 80pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="27%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;MessageBox(MB_SERVICE_NOTIFICATION) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.38%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 80pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – returns 1 (IDOK)&lt;SUP&gt;(2) &lt;/SUP&gt;immediately &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.36%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 80pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – returns 1 (IDOK)&lt;SUP&gt;(2) &lt;/SUP&gt;immediately&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 18.34%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 80pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="18%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – returns 1 (IDOK)&lt;SUP&gt;(2) &lt;/SUP&gt;immediately&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 7.2pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 7.2pt; BACKGROUND: #cbcbcb; PADDING-BOTTOM: 3.6pt; BORDER-LEFT: #f0f0f0; WIDTH: 17.28%; PADDING-TOP: 3.6pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 80pt; mso-border-left-alt: solid white 1.0pt; mso-border-top-alt: solid white 1.0pt" vAlign=top width="17%"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;SCM warning in event log when starting the service &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;No display – returns 1 (IDOK)&lt;SUP&gt;(2) &lt;/SUP&gt;immediately&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt; TEXT-ALIGN: center" align=center&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri size=3&gt;MessageBox behavior on Windows Vista RTM&lt;BR&gt;&lt;SUP&gt;(1)&lt;/SUP&gt; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US"&gt;&lt;FONT face=Calibri&gt;Managed code: runtime will raise an exception&lt;BR&gt;&lt;SUP&gt;(2)&lt;/SUP&gt; Even if message box has no such button&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=659439" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/service+hardening/default.aspx">service hardening</category><category domain="http://blogs.technet.com/voy/archive/tags/development/default.aspx">development</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>Microsoft TechDays 2007 in Paris</title><link>http://blogs.technet.com/voy/archive/2007/02/08/microsoft-techdays-2007-in-paris.aspx</link><pubDate>Thu, 08 Feb 2007 20:16:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:631079</guid><dc:creator>Voy</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/voy/comments/631079.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=631079</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Yesterday, the first Microsoft Techdays ended in Paris after three days and more than 200 presentations. Thank you to all of you who honored us by their attendance! (I don’t have the final figures yet but you were about 9,000 people on the two first days alone.) If you didn't have a chance to attend, you will be able to watch the presentations once they are published at the beginning of March (an understanding of French&amp;nbsp;will be necessary). My personal involvement was to help define the security track content, present 5 sessions and lead two workshops on Windows Vista security with my colleague Pascal Sauliere.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;My sessions included:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;- &lt;I style="mso-bidi-font-style: normal"&gt;Getting ready for NAP&lt;/I&gt; (original title: 'Se préparer à NAP') where I did demonstrate 802.1X enforcement on a Cisco 3750 switch. I did test the 802.1X enforcement on Enterasys gear too. I plan to publish a video of what it looks like on this blog. I will also provide some documentation on what I did to configure this demo. Stay tuned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;- &lt;I style="mso-bidi-font-style: normal"&gt;The human factor: the weakest link or the last resort&lt;/I&gt; (original title: 'Le facteur humain&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;maillon faible ou dernière chance '). Stanislas Quastana and I have had a lot of fun doing this one. I hope it will help support the fact that &lt;A class="" href="https://blogs.technet.com/voy/archive/2006/11/20/the-humans-factor-is-a-chance-for-is-security.aspx" mce_href="https://blogs.technet.com:443/voy/archive/2006/11/20/the-humans-factor-is-a-chance-for-is-security.aspx"&gt;The human factor is a chance for Information Systems Security&lt;/A&gt;. You'll find all the references for the books we talked about on &lt;A class="" href="http://blogs.technet.com/stanislas/archive/2007/02/06/microsoft-techdays-2007-session-facteur-humain-quelques-ressources-utiles.aspx" mce_href="http://blogs.technet.com/stanislas/archive/2007/02/06/microsoft-techdays-2007-session-facteur-humain-quelques-ressources-utiles.aspx"&gt;Stan's blog&lt;/A&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;- &lt;EM&gt;What's new in security with Windows Vista&lt;/EM&gt; (original title: Nouveautés de sécurité de Windows Vista). A short overview of Windows Vista security, co-animated with Pascal Sauliere.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;- &lt;I style="mso-bidi-font-style: normal"&gt;UAC: User Account Control&lt;/I&gt; (original title : Contrôle de compte utilisateur UAC) co-animated with Pascal Sauliere.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;- &lt;I style="mso-bidi-font-style: normal"&gt;An introduction to Forefront Client Security&lt;/I&gt; (original title: Découvrir Forefront Client Security) the enterprise antimalware solution by Microsoft.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Times New Roman'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;I’ve heard that there were some great presentations (by both Microsoft and non Microsoft speakers). So, if you do speak French, I’m sure you will enjoy the content once it is published and more particularly, to only name a few:&amp;nbsp;a tutorial on virology, Office documents fuzzing, quantum cryptography, integrating Linux into Active Directory… &lt;/SPAN&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=631079" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/interoperability/default.aspx">interoperability</category><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/Linux/default.aspx">Linux</category><category domain="http://blogs.technet.com/voy/archive/tags/CSO/default.aspx">CSO</category><category domain="http://blogs.technet.com/voy/archive/tags/human+factor/default.aspx">human factor</category><category domain="http://blogs.technet.com/voy/archive/tags/event/default.aspx">event</category></item><item><title>The human factor is a chance for IS security</title><link>http://blogs.technet.com/voy/archive/2006/11/20/the-humans-factor-is-a-chance-for-is-security.aspx</link><pubDate>Mon, 20 Nov 2006 19:36:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:522280</guid><dc:creator>Voy</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/voy/comments/522280.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=522280</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;People:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;the weakest link or a chance for security?&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Have you ever heard security experts? They all point out that the human factor is the weakest link in the security chain. They often make fun of people being victims of social engineering for instance. They try to prove their assumption by showing how phishing attacks have been successful so far. Sometimes, the human factor seems to be an easy explanation or even an excuse for security failure... However, no one can pretend to do security if they only work on improving technologies or processes while stigmatizing people rather than taking them really into account. Moreover, &lt;B style="mso-bidi-font-weight: normal"&gt;it‘s time to stop deploring the weakness of the human factor&lt;/B&gt;. Fortunately, there’s another theory around the human factor by Robert Longeon, an IS&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;security &lt;/SPAN&gt;&lt;SPAN lang=EN-GB style="mso-ansi-language: EN-GB"&gt;engineer &lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;at CNRS (&lt;A href="http://www.cnrs.fr/index.html" mce_href="http://www.cnrs.fr/index.html"&gt;&lt;FONT color=#0000ff&gt;http://www.cnrs.fr/index.html&lt;/FONT&gt;&lt;/A&gt;). Robert and I teamed together to introduce his theory more broadly and to try to make you realize that while the human factor might be a weak link, people are indeed a chance for information system security (IS security). &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;First of all, &lt;B style="mso-bidi-font-weight: normal"&gt;both of us do acknowledge&lt;/B&gt; it is true that bad behaviors of information systems actors can be a source of security incidents. Actually, at the source of any security incident, there’s almost always a person or a process deficiency. The gap between the level of security that one would like to have and what they have is usually due to either a transgression of security rules, whether maliciously or by negligence,&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;or&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;by a violation of security policies. Obviously, incidents’ outcome might be severely worsened by inadequate behaviors, insufficient vigilance or, at the opposite, excess of confidence of people at key roles. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Let’s talk about transgressions. Many authors [1] have worked on the human factor, some more particularly on information system security. Their work lead to theories used as reference in this domain (behavior theories, psychology or criminology inspired theories) or to explanatory models (behavior deviating with morals, technology acceptance model…). All these theories have in common to explain behaviors and related situations, to allow avoiding some mistakes, but do not give any practical method!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Some more fecund works were done in safety, reliability or ergonomics researchs [2]:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;“&lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-GB style="mso-ansi-language: EN-GB"&gt;The way by which the operators manage their working conditions has a great variability: the conduits observed show various logics of hierarchisation of the priorities in the event of constraints. They can cover the appearance of a search for compromise between the realization and the cost of a will to achieve an operational goal with the detriment of &lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;safety&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;.” [3] So here is an interesting first point: &lt;B style="mso-bidi-font-weight: normal"&gt;an inappropriate behavior does not necessarily result from a malicious intent. Better, a transgression is not arbitrary and usually is the result of targeting a specific goal by adapting rules in response to a constraint.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/B&gt;Therefore, there are solutions where some issues would be reduced by improving systems ergonomics to no force people to make a bad tradeoff between their goal and the company’s rules.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;That means there’s no fate and we don’t have to stay here watching issues arise while some specialists try to comment in erudite language! &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If we try to improve ergonomics, we still need to &lt;B style="mso-bidi-font-weight: normal"&gt;avoid a common pitfall which is to believe that we can find a technical solution to this issue&lt;/B&gt;. Let’s face it, when people stigmatize the human factor, they usually think that securing information systems would be much easier if there was no human being involved at all. Thinking that machines could do the job better is over simplistic and loses sight of the fact that &lt;B style="mso-bidi-font-weight: normal"&gt;the root cause of the most frequent and most serious security incidents usually lies in management errors &lt;/B&gt;like ignoring to take security into account in the strategic goals of the company, not including security at the beginning of a project, over confidence in security devices by techno-friendly people, lack or insufficient training and education for security, loss of motivation by staff due to weak values in corporate culture, mistakes in defining security goals, deficient structures, lack of rules and procedures, diluted responsibility … &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Moreover, information systems are called system for a reason. It’s because information in a company, while it may appear like chaos at first, is in fact a complex system. And &lt;B style="mso-bidi-font-weight: normal"&gt;complexity can’t be dealt by a finite-state automaton because a finite-state machine can only do what it was designed for&lt;/B&gt;. &lt;B style="mso-bidi-font-weight: normal"&gt;Only the human mind is able to grasp complex issues.&lt;/B&gt; On one hand in a normal situation, the surprisingly unpredictable and fundamentally irrational nature of human beings can waste the Information Security Officer’s day. On the other hand, in an unknown, therefore not programmed before, situation, it is a major asset. In such a situation of turbulences, the human factor is irreplaceable and highly valuable.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;IS security is about information risk management and, as everyone knows, this risk can’t be annihilated. Therefore, one has to make choices.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;“To decide or to make strategic choices is an activity by itself that can’t be reduced to a sum of technical decisions.” [4] &lt;B style="mso-bidi-font-weight: normal"&gt;IS security is the realm of non deterministic choices&lt;/B&gt; based on a variety of notions that we can’t model for a finite-state automaton. These notions include our perception of reality, our vision of security and our understanding of our best interests at a given time… The human factor allows us to deal with the non deterministic nature of information systems. Any project management model relying on a deterministic logic of systematically and progressively reducing risk does not work. A technical system cannot pilot IS security while people can. &lt;B style="mso-bidi-font-weight: normal"&gt;Without the human factor, there’s simply no IS security. &lt;/B&gt;Piloting IS security is often more a matter of &lt;B style="mso-bidi-font-weight: normal"&gt;deciding in uncertainty rather than risk management&lt;/B&gt;. Indeed situations faced are new and cannot be deduced from past events (this impedes our ability to prevent or predict based on statistics). Worse, we don’t know everything about occurring events. What’s more, decisions taken modify the environment and the parameters assessed to take the decisions and usually understanding an issue requires a systemic approach based on knowledge in other areas. Zero day attacks based on an unlikely chaining of events are unpredictable. All these issues make objective probabilities difficult to compute. Using subjective probabilities has the drawback of relying on the limited rationality of decision makers and allows their beliefs to be manipulated. Works from other disciplines, in particular Knight [5] and Keynes [6] in economics, teach us how to distinguish risk (or situations where probabilities can be computed) from uncertainty (situations where probabilities can’t be computed) and give us clues on how to deal with the human factor. Therefore, &lt;B style="mso-bidi-font-weight: normal"&gt;the human factor is an uncertainty, not a risk! &lt;/B&gt;And one can try to reduce it by management efforts. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Conclusion and proposals for reducing uncertainty of the human factor by management&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;We agree that inadequate behaviors of IS actors can lead to security incidents. However, complexity of information systems makes inappropriate any deterministic solution like a technical solution. The only way we know to deal with a non deterministic system is to put in place a human organization. That’s why the human factor is a chance for information systems security, not a risk. To put it another way, a popular Russian proverb says “some eagles may fly lower than some hens, but a hen will never fly higher than an eagle”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To achieve the goal of reducing uncertainty related to inappropriate behaviors, it takes a combination of the three following ingredients that Human Resources division cultivates:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US; mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri size=3&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Knowledge&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;: people need to have been trained to react correctly. This means an appropriate, targeted, not condescending training.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US; mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri size=3&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Empowerment&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;: people need to have the means and necessary authority to react. Some people need to be identified and selected to be individually accountable. The corporate culture should reward personal initiatives. For instance, if someone decides to innovate in dealing with&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;a never seen before situation rather than stupidly following the procedures that are leading the company to failure, they should be confident that they will be recognized and not penalized for not sticking to the usual, inappropriate, procedures.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US; mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri size=3&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Will&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;: people need to be willing to react for the organization’s best interest, namely be responsible actors: “if anyone of us is aware of their roles, they discover themselves to be more than servants, they are sentinels and each and every sentinel is responsible of the empire.”[7] &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In order to improve your security, you need to rely on people to complement technologies to, more or less intuitively, detect abnormal events when they occur. The required qualities are not learned in training centers. That’s why a selection is necessary. However the values in a company’s culture and the management style can help in maintaining and developing those qualities rather than annihilating them. &lt;B style="mso-bidi-font-weight: normal"&gt;Reducing uncertainty of the human factor is therefore about management!&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Adding more technology is not a solution&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt; to organizational issues where decision processes need to be redesigned. Worse, &lt;B style="mso-bidi-font-weight: normal"&gt;a purely technological view of IS security can make you more vulnerable&lt;/B&gt;. And to emphasize the importance of employee involvement compared to the technological arsenal, let’s quote Thucydide, a Greek historian from the 5th century before Christ: “&lt;I style="mso-bidi-font-style: normal"&gt;The thickness of a wall is less important than the will to defend it&lt;/I&gt;”. Indeed, the &lt;B style="mso-bidi-font-weight: normal"&gt;involvement of employees in IS security in a company is an excellent&lt;/B&gt; indication of its dynamism and social state. This can become a useful indicator for investors to assess the risk… of their investment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;References:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[1] Let’s quote for instance: &lt;B&gt;Rosé P&lt;/B&gt;., (1995), &lt;I&gt;La criminalité informatique&lt;/I&gt;, Paris, PUF&amp;nbsp;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face="Times New Roman"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Venkatesh V., Morris M.G., Davis, G.B., Davis F.D&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;., (2003), "User acceptance of information technology: Toward a unified view", &lt;I&gt;MIS Quarterly&lt;/I&gt;, Vol. 27, N°3 ;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face="Times New Roman"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Adams A., Sasse M.A&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;., (1999), "Users are not the enemy"&lt;I style="mso-bidi-font-style: normal"&gt; Communications of the ACM&lt;/I&gt;, Vol. 42, n°12;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face="Times New Roman"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Dhillon G., Backhouse J&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US; mso-bidi-font-weight: normal"&gt;., (2001), "Current directions in IS security research: towards socio-organizational perspectives", &lt;I&gt;Information Systems Journal&lt;/I&gt;, 11&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[2]&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Let’s quote for instance: Guérin, F., Laville, A., Daniellou, F., Duraffourg, J., Kerguelen, A. : Comprendre le travail pour le transformer. La pratique de l’ergonomie. ANACT, Collection Outils et Méthodes. 1997&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[3] &lt;B&gt;Noulin, M. &lt;/B&gt;&lt;I&gt;Ergonomie&lt;/I&gt;, &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;&lt;st1:City w:st="on"&gt;Toulouse&lt;/st1:City&gt;&lt;/st1:place&gt; : Octarès Ed. 2002&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[4] &lt;B&gt;C. Rochet &lt;/B&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Manager dans la complexité&lt;/I&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[5] &lt;B&gt;Knight F&lt;/B&gt;., &lt;I style="mso-bidi-font-style: normal"&gt;Risk, uncertainty and profit&lt;/I&gt;, Houghton Mifflin Company published, 1921&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[6] &lt;B&gt;Keynes J.M.&lt;/B&gt;, &lt;I style="mso-bidi-font-style: normal"&gt;A treatise on probability&lt;/I&gt;, London Macmillan, 1921&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoFootnoteText style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;FONT face="Times New Roman"&gt;[7] &lt;B&gt;Saint-Exupéry, &lt;/B&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Terre des Hommes&lt;/I&gt;&lt;/FONT&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=522280" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/CSO/default.aspx">CSO</category><category domain="http://blogs.technet.com/voy/archive/tags/human+factor/default.aspx">human factor</category><category domain="http://blogs.technet.com/voy/archive/tags/non+technical/default.aspx">non technical</category></item><item><title>Building a dual boot system with Windows Vista BitLocker protection with TPM support</title><link>http://blogs.technet.com/voy/archive/2006/10/13/building-a-dual-boot-system-with-windows-vista-bitlocker-protection-with-tpm-support.aspx</link><pubDate>Sat, 14 Oct 2006 00:59:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:468436</guid><dc:creator>Voy</dc:creator><slash:comments>11</slash:comments><comments>http://blogs.technet.com/voy/comments/468436.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=468436</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;EM&gt;Updated 2008-05-12 : added a step to turn the TPM on before enabling BitLocker. By the way, someone made me notice this post is now referenced by the official BitLocker FAQ on Microsoft's website.&lt;/EM&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Many people have wondered if it would be possible to dual boot a TPM-bitlockered instance of Windows Vista with Linux, or another OS. The answer is yes and the following procedure will hopefully help you setup your machine correctly. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Some (simplified) background on Bitlocker:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Bitlocker Drive Encryption allows encryption of Windows Vista’s partition and provides a secure startup process when in use with a TPM (a crypto chip on the motherboard).&amp;nbsp; Basically the BIOS, the TPM, the MBR and the boot sector will collaborate to help verify that there was no modification to the boot sequence since Bitlocker was activated. This is done by using a function of the TPM to compute and store a hash of the code before executing it, at each of the initial steps of the boot sequence. Different hashes will be computed and stored in specific registers of the TPM. Then Windows Vista will ask the TPM to unseal its volume encryption key and the TPM will only provide this key if its registers are correctly set. Therefore if you replace Windows Vista’s MBR by a MBR that is not TPM aware, it won’t hash the boot sector before executing it and a register in the TPM won’t be populated. Same with the boot sector. Therefore Bitlocker will simply refuse to be enabled. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;The underlying idea here is to have Bitlocker enabled with the original Windows Vista boot files. Another possibility would be to use a TPM-aware version of GRUB. However this would imply using files in the boot sequence that were not tested by Microsoft, which I would not recommend. Moreover, using original Windows Vista files offers you the benefits of code that went through the Security Development Lifecycle, which I personally find very valuable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Note: I assume that you have a Bitlocker compatible machine (including TPM 1.2, TCG BIOS). See &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_require" mce_href="http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_require"&gt;&lt;FONT color=#0000ff size=3&gt;http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_require&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 1 – Install Linux&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Note:&amp;nbsp; be sure to leave enough unpartitioned space for Windows Vista: about 11 GB of free unpartitioned space and slots for 2 partitions are needed&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 2 – Install GRUB on the Linux partition (outside of MBR)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;See other post &lt;A class="" href="https://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx" mce_href="http://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx"&gt;“How to use Windows Vista’s Boot Manager to boot Linux”&lt;o:p&gt;&lt;/o:p&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 3 – Get a copy of Linux boot sector&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;See other post &lt;A class="" href="https://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx" mce_href="http://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx"&gt;“How to use Windows Vista’s Boot Manager to boot Linux”&lt;o:p&gt;&lt;/o:p&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 4 – Create partitions for Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;We need to create 2 primary NTFS formatted partitions on the disk: one active, 1.5GB size minimum and another larger (all the rest for instance with a minimum of 8.5GB). The former will be used to boot the machine (active partition) and will remain unencrypted while the latter will host Windows Vista and will be encrypted when we activate Bitlocker.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;You can use diskpart tool to do this (available from Repair options on the Windows Vista DVD). Here is what the instructions may look like :&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;select disk 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;create partition primary size=2048&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;active&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Symbol; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;create partition primary&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 5 - Install Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Install Windows Vista on the largest NTFS partition.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 6 - Set up Windows Vista Boot Manager to boot Linux&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;See other post &lt;A class="" href="https://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx" mce_href="http://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx"&gt;“How to use Windows Vista’s Boot Manager to boot Linux”&lt;/A&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step&amp;nbsp;7 - Enable TPM in BIOS&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;See instructions in your computer's manual.&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;/SPAN&gt;Step&amp;nbsp;8 - Enable BitLocker on Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;See BitLocker documentation, like &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_S3" mce_href="http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_S3"&gt;&lt;FONT color=#0000ff size=3&gt;http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx#BKMK_S3&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=468436" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/interoperability/default.aspx">interoperability</category><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/Linux/default.aspx">Linux</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>How to use Windows Vista’s Boot Manager to boot Linux</title><link>http://blogs.technet.com/voy/archive/2006/10/13/how-to-use-windows-vista-s-boot-manager-to-boot-linux.aspx</link><pubDate>Sat, 14 Oct 2006 00:53:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:468434</guid><dc:creator>Voy</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.technet.com/voy/comments/468434.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=468434</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;The Web is full of explanations on how to dual boot Windows and Linux using a Linux boot manager like GRUB or LILO. If you want to dual boot Windows Vista and Linux using Windows Vista’s Boot Manager, please read on. I will assume that you already have installed Linux on your machine using GRUB as your boot loader. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 1 – Install GRUB on the Linux partition (outside of MBR)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;As Windows Vista will replace the Master Boot Record (MBR) with its own, we need to relocate GRUB elsewhere by running grub-install with the Linux partition as a parameter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;On Linux, launch a Terminal with root privileges&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;•&amp;nbsp;&amp;nbsp;&amp;nbsp; Find the name of the partition Linux is installed on by running fdisk –l (the partition you’re looking for is the one whose system is Linux, can be&amp;nbsp; something like /dev/sda1 or /dev/hda1. For the rest of this post, I’ll use /dev/sda1) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;•&amp;nbsp;&amp;nbsp;&amp;nbsp; Install GRUB on the Linux partition by running : grub-install /dev/sda1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 2 – Get a copy of Linux boot sector &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;We will need to instruct Windows Boot Manager how to boot correctly Linux using Linux boot sector, which we will extract using dd.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;On Linux, launch a Terminal with root privileges&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Take a copy of Linux boot sector : dd if=/dev/sda1 of=/tmp/linux.bin bs=512 count=1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Copy linux.bin on a FAT formatted USB key or any storage accessible from Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 3 – Install Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;B&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Step 4 –&amp;nbsp; Configure dual booting in Windows Vista&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;We will create an entry for GRUB in Windows Vista boot configuration data store using bcdedit.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;On Windows Vista, launch a command prompt with administrative privileges (by right clicking on cmd and choosing Run as Administrator)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Copy Linux boot sector on the root of the Windows boot (active) partition, namely the one containing bootmgr. If you don’t know for sure you can use diskpart or diskmgmt.msc to find out which one it is.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Create an entry for GRUB : &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;bcdedit /create /d “GRUB” /application BOOTSECTOR&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Note: bcdedit will return an ID for this entry that we will call {LinuxID} below. You will need to replace {LinuxID} by the returned identifier in this step. An example of {LinuxID} is {81ed7925-47ee-11db-bd26-cbb4e160eb27}&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Specify which device hosts a copy of the Linux boot sector&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;bcdedit /set {LinuxID} device boot&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Specify the path to a copy of the Linux boot sector&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;bcdedit /set {LinuxID}&amp;nbsp; PATH \linux.bin&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Add Linux entry to the displayed menu at boot time&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;bcdedit /displayorder {LinuxID} /addlast&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;•&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;Let the menu be displayed 10 seconds to allow for OS selection&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0cm 0cm 0pt 72pt; TEXT-INDENT: -18pt; mso-list: l1 level2 lfo2"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;bcdedit /timeout 10&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-fareast-theme-font: minor-fareast; mso-bidi-theme-font: minor-bidi"&gt;&lt;EM&gt;I want to thank&amp;nbsp;Pascal Sauliere (&lt;A href="http://blogs.technet.com/pascals"&gt;http://blogs.technet.com/pascals&lt;/A&gt;) and Mathieu Malaise (&lt;A href="http://www.microsoft.com/france/securite"&gt;http://www.microsoft.com/france/securite&lt;/A&gt;) for help on Linux/GRUB and for helping research bcdedit options.&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=468434" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/interoperability/default.aspx">interoperability</category><category domain="http://blogs.technet.com/voy/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.technet.com/voy/archive/tags/Linux/default.aspx">Linux</category><category domain="http://blogs.technet.com/voy/archive/tags/technical/default.aspx">technical</category></item><item><title>"Security is not important, when you have it.(*)" - a constructive blog on security</title><link>http://blogs.technet.com/voy/archive/2006/10/05/_2200_Security-is-not-important_2C00_-when-you-have-it_2E0028002A0029002200_-_2D00_-a-constructive-blog-on-security.aspx</link><pubDate>Thu, 05 Oct 2006 20:15:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:462638</guid><dc:creator>Voy</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/voy/comments/462638.aspx</comments><wfw:commentRss>http://blogs.technet.com/voy/commentrss.aspx?PostID=462638</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN lang=EN-GB style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-ansi-language: EN-GB"&gt;Hello everyone! As you can see, I decided to start blogging on security, maybe sometimes on interoperability. To be honest, if the blogosphere was the solar system, I could be found closer to Neptune than Mercury. However, I’ve been spending more than the last five years meeting with people on security and every time I have had a discussion with a customer, a partner, a home user, a security expert or a crisis management specialist the exchange was very valuable. In fact, security is such a wide topic that one can learn something every day. What’s more there are many sources of inspiration in other industries. I hope that this blog will be a way for me to share with you some thoughts and for you to provide feedback, to both me and the readers &lt;EM&gt;(if there are some:-))&lt;/EM&gt;. I’ll try to cover a wide range of topics. I plan to share pointers to content from people at the border or even outside of this industry whose work or ideas can provide food for thought. And I’ll also post on technical subjects. After all, this blog is hosted on TechNet!&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN lang=EN-GB style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-ansi-language: EN-GB"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN lang=EN-GB style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-ansi-language: EN-GB"&gt;(*) Well, you might be wondering what I really mean there. I was inspired in the choice of this ironical sentence by a colleague saying “for a computer science engineer, technical skills are not important; as long as he has them”. I like transactional jokes and decided to paraphrase it. I think it actually emphasizes pretty well that security is paramount &lt;EM&gt;(in fact maybe my colleague was himself paraphrasing someone else but after some quick research I did not find the original, so if you know, let us all know)&lt;/EM&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN lang=EN-GB style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-ansi-language: EN-GB"&gt;Some people seem to still consider security as a impeding and boring thing that is at best a necessary evil. Having tried to convince some of them that security can be fun, I must admit that I wish they were totally right in not being interested in security, and maybe thinking security is not important. That would mean they would have mastered security enough to not worry about it anymore, because they would have managed to achieve and maintain the right level of security. The first part of this tag line also emphasizes that a company is usually not about security, it’s about its core business. Therefore for any regular business, security should not be the most important thing as it should be granted that any of its competitor would achieve a comparable and reasonable level of security. Well let’s face it, the day any company can say that security is not important may never happen. And if it is ever close to arriving, which I don’t really believe, that will take a lot of efforts. After all, it’s maybe why you decided to be a security professional: to have a&amp;nbsp;lifetime insurance against unemployment, isn’t it ? ;-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=462638" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/voy/archive/tags/interoperability/default.aspx">interoperability</category><category domain="http://blogs.technet.com/voy/archive/tags/security/default.aspx">security</category><category domain="http://blogs.technet.com/voy/archive/tags/non+technical/default.aspx">non technical</category></item></channel></rss>