I’d recently put Windows 8 on a test machine at work and started installing what software I needed. Pretty quickly I found I needed to install .Net Framework 3.5 which is now a ‘Feature’ instead of a separate download.
Switching this on prompted me to download files from Windows Update.
That seemed to go OK for a while.
Unfortunately, after a few minutes, it failed.
Error code 0x800F0906 leads you to troubleshooting articles such as:
.NET Framework 3.5 installation error: 0x800F0906, 0x800F081F, 0x800F0907
“This error code occurs because the computer cannot download the required files from Windows Update.”
First suggestion is to check Windows Update is actually accessible. Start with the easy ones
Getting a little bit trickier, second suggestion is to make sure there isn’t a Group Policy in place preventing the install process from contacting Windows Update.
Then you get your hands dirty with DISM.EXE command line instructions.
Deployment Image Servicing and Management tool
Image Version: 6.2.9200.16384
The source files could not be found.
Use the "Source" option to specify the location of the files that are required t
o restore the feature. For more information on specifying a source location, see
The DISM log file can be found at C:\Windows\Logs\DISM\dism.log
So now I have a new error code – 0x800F081F – to muddy the water with.
Checking the DISM.LOG file
2014-09-29 14:07:15, Info
DISM DISM Package Manager: PID=2296 TID=1256 Error in operation: source for package or file not found, ResolveSource() unsuccessful. (CBS HRESULT=0x800f081f) - CCbsConUIHandler::Error
2014-09-29 14:07:15, Error
DISM DISM Package Manager: PID=2296 TID=4732 Failed finalizing changes. - CDISMPackageManager::Internal_Finalize(hr:0x800f081f)
2014-09-29 14:07:15, Error
DISM DISM Package Manager: PID=2296 TID=4732 The source files could not be found; their location must be specified using the /source option to restore the feature. – GetCbsErrorMsg
Not really helpful as it doesn’t explain what’s missing. Now I’m happy with my DISM command:
Dism /online /enable-feature /featurename:NetFx3 /All
so it must be that the files are missing from the install files, which seems unlikely.
Looking for help on the new error code, I found:
Windows Update error 0x800F081F
The recommended DISM.EXE commands to clean up the Component Store made no difference:
dism.exe /online /cleanup-image /scanhealth
dism.exe /online /cleanup-image /restorehealth
I then moved on to Joseph Conway’s Technet blog:
How to troubleshoot error 0x800F081F when installing roles and features
- Download the ISO again – couldn’t complete this one easily. Could fill a blog just on how difficult it is to get access to install software at work…
- Clean up the Component Store – already tried
- Disable any access to WSUS – also already tried
- Update your source media – this sounded promising…
How to update local source media to add roles and features
Sadly, I couldn’t get this to work and gave up trying after a while.
Going back to basics, my next stop was CBS.LOG as that’s where the “Component-Based Servicing” work is recorded.
2014-09-29 14:18:47, Info
CBS Calling client to resolve source, cannot find file 'amd64_microsoft-windows-wpfcorecomp.resources_31bf3856ad364e35_6.2.9200.21161_en-us_0b79bec03324a82a\PresentationHostDLL.dll.mui'
2014-09-29 14:18:47, Info
CBS Exec: Not able to pre-stage package: Microsoft-Windows-IIS-WebServer-AddOn-Package~31bf3856ad364e35~amd64~en-US~6.2.9200.16384, file: PresentationHostDLL.dll.mui, source: \\?\C:\Windows\Servicing\Packages\amd64_microsoft-windows-wpfcorecomp.resources_31bf3856ad364e35_6.2.9200.21161_en-us_0b79bec03324a82a\PresentationHostDLL.dll.mui
Looking in the \sources\sxs folder, I can only see sub-folders for
and so on but not for the missing folders.
Which is when I noticed that the folders have a build number of 6.2.9200.16384 but the missing folder has a build number of 6.2.9200.21161.
Searching online for the build number quickly found problems with a bunch of Windows Update fixes.
.NET Framework 3.5 0x800F0906 then 0x800f081f
Just uninstall updates KB2966826 and KB2966828 and it will help you.
Looking in the list of installed updates, I found I had KB2966827 present:
MS14-046: Description of the security update for the .NET Framework 3.5 on Windows 8 and Windows Server 2012: August 12, 2014 http://support2.microsoft.com/kb/2966827
Now why do I have a .NET Framework 3.5 hotfix installed on a machine that hasn’t yet had .NET Framework 3.5 installed?!
The presence of the hotfix meant the installation was always expecting to find newer files than came with the Windows 8 source files.
As soon as I uninstalled the hotfix, I could add the .NET Framework 3.5 feature and start using my applications.
Not particularly fresh news to some people but definitely important for anyone relying on SSL connections to websites who now need to plan for getting SSL certificates from a Root CA that uses SHA-2.
Microsoft Security Advisory 2880823
Published: November 12, 2013
Microsoft is announcing a policy change to the Microsoft Root Certificate Program.
The new policy will no longer allow root certificate authorities to issue X.509 certificates using the SHA-1 hashing algorithm for the purposes of SSL and code signing after January 1, 2016.
Using the SHA-1 hashing algorithm in digital certificates could allow an attacker to spoof content, perform phishing attacks, or perform man-in-the-middle attacks.
Recommendation: Microsoft recommends that certificate authorities no longer sign newly generated certificates using the SHA-1 hashing algorithm and begin migrating to SHA-2.
Microsoft also recommends that customers replace their SHA-1 certificates with SHA-2 certificates at the earliest opportunity.
For example, here are the details from a current VeriSign certificate:
Will this impact any versions of Windows?
Windows PKI Blog
Published: September 30th, 2010
the support for SHA2 will vary:
No support for SHA2 – Windows XP sp2, Windows 2003 sp2
Limited support for SHA2 – Windows XP sp3 with KB 938397/KB 968730, Windows 2003 sp2 with KB 938397/KB 968730
Full support – Windows Vista and above
Note – “Limited support” added by the hotfixes mentioned includes the following SHA2 hashes: SHA-256, SHA-384, SHA-512 (but not SHA-224).
What’s up with SHA-224?
According to Alejandro Campos Magencio’s cryptography blog:
Decrypt my World
SHA-2 support on Windows XP
Published January 23rd, 2009
Regarding SHA-224 support, SHA-224 offers less security than SHA-256 but takes the same amount of resources. Also SHA-224 is not generally used by protocols and applications.
Security Research and Defence Blog
Published November 12th, 2013
Orla Cox has blogged about the various threats to Point-Of-Sale (POS) terminals on Symantec’s website:
Demystifying Point of Sale Malware and Attacks
There’s an associated whitepaper which is also worth a read:
Attacks on Point of Sales Systems (PDF)
The coming months should be interesting as cybercriminals start making use of the stockpile of Windows XP exploits they’ve been building up ready for the operating system’s end-of-support date to arrive.
This quote (from the "License to Summon" rulebook for The Laundry role playing game system) may amuse.
Laundry employees can get a license to summon. It’s not that hard. Just complete a few basic Health and Safety and Demonology Courses, do the test, complete the very simple practical exam, and you’re certified. Peter-Francis Young has one, for Yog’s sake! It’s less demanding than getting a Microsoft Certified Professional qualification, and just like an MCP, a license to summon allows you to loose mind-eating horrors on an unsuspecting world.
The games designers are obviously continuing with the anti-Microsoft digs found in the source material, the “Laundry Files” series of novels written by Charles Stross. In his writings, Charles does not come across as a big fan of the Microsoft range of products. In fact, last October he ranted at length on “Why Microsoft Word must Die”. Not a happy man as far as IT goes.
Microsoft has announced that Windows XP will reach end-of-life on April 8th, 2014.
Windows 2000 already reached end-of-life on 13th July, 2010.
PCI-DSS Compliance requires all elements of a Point-Of-Sale (POS) payment application environment to be supported by their vendors with security updates, which includes the operating system the application runs on. Security updates from Microsoft for an operating system come to an end when it is no longer supported. At that time, PCI-SSC will regard any merchant using that operating system as being non-complaint with PCI-DSS. This is covered in the PCI-DSS documentation under “Requirement 6: Develop and maintain secure systems and applications”:
6.1 Ensure that all system components and software are protected from known vulnerabilities by having the latest vendor-supplied security patches installed. Deploy critical patches within a month of release.
It’s therefore a good idea to upgrade any operating system being used for a POS payment system that is no longer supported or will soon reach the end of support. Not doing so may expose merchants to the risk of fines and penalties should their environments be compromised whilst not being compliant with the PCI-DSS.
- Windows XP SP3 and Office 2003 - Support Ends April 8th, 2014
- Extended Support for Windows 2000 Server Ends on July 13, 2010
- Microsoft Support Lifecycle
- PCI DSS Quick Reference Guide
Just had an Adobe update install unwanted applications - Google Chrome and a browser toolbar. Irritating, I know, especially as it means I missed the sneakily hidden opt-out tick box. This just reinforces the knowledge that I could never work in marketing as it would mean discarding my moral code.
But I digress.
I took some screenshots to compose a vitriolic Tweet around and noticed that something weird was going on with the clipboard.
Here’s what the screen looked like to my eyes (or to my SmartPhone):
Here’s what went into the clipboard after I pressed the Print Scrn button on the keyboard:
Where have the tail and the black outline to the box gone?
For many years now I’ve been happily chucking around Windows XP virtual hard disks and loading them with Virtual PC. Sadly I’m going to have to turn to something modern as the virtual processor is no longer up to scratch, as I found when trying to install Windows 8.1 evaluation.
In the past this would have been a Blue Screen but they’re handled differently in Windows 8, usually with a frowning emoticon.
0x0000005D means UNSUPPORTED_PROCESSOR and the solution would be to enable No-Execute Memory Protection in the BIOS.
Virtual PC is ancient so the AMI BIOS has no such setting on any of the menus.
Off now to find a virtualisation product I like.
Back in May, DataCash was a sponsor for one of the biggest networking events for payments developers – Trans-hacktion. The 3-day Hackathon, organised by Birdback, was focused on the latest innovations in the payments and financial technology and held at the London Google Campus.
The event included demos from DataCash and other payments companies followed by hacking sessions. Teams had to hack a product that used partner APIs and present the hack in 3 minutes on the final day. The prizes up for grabs were:
|KingHacker||3D Printer & Champagne|
|1st||Pebble Watch & 1 year of GitHub Silver plan|
|2nd||AIAIAI Headphones & 1 year of GitHub Bronze plan|
|3rd||Raspberry Pi & 6 months of GitHub Bronze plan|
|API||Up Bracelet. Nintendo NES + Super Mario Game|
|AND||Berg Cloud Little Printer & 100$ AWS credit & more...|
By default, Windows will automatically update it’s internal list of trusted root authorities as long as the Update Root Certificates function is installed. This should be enabled by default and takes manual intervention to remove it.
With this component enabled, the following happens:
If you are presented with a certificate issued by an untrusted root authority, your computer will contact the Windows Update Web site to see if Microsoft has added the CA to its list of trusted authorities. If it has been added to the Microsoft list of trusted authorities, its certificate will automatically be added to your trusted certificate store.
If the component is not installed and a certificate from an untrusted CA is encountered then the following text will be seen:
This is an inconvenience for the person browsing the site as they need to click to continue. Applications, though, will be unable to proceed and will throw an exception. Example:
One or more errors were found in the Secure Sockets Layer (SSL) certificate sent by the server.
If you look at the certificate’s properties, you can see the “Issued by:” value:
This is the name of the server that issued the certificate. It is not the name of the Trusted Root Certificate Authority. To find that instead use the “Certification Path” tab.
Highlight the issuing server and click “View Certificate” button to reveal the issuing CA – in this case “VeriSign Class 3 Public Primary Certification Authority – G5”.
This must match a Trusted Root Certificate Authority certificate in the current user’s certificate store.
So turn on automatic updating of trusted root authority certificates.
For Windows Vista and above, this option is controlled through Group Policy. See the “To Turn Off the Update Root Certificates Feature by Using Group Policy” section of the following TechNet article:
Certificate Support and Resulting Internet Communication in Windows Vista
If Windows Update is a blocked site then download and deploy the latest pack of root certificates from Microsoft:
Failing that, find a machine that has the latest root certificates installed and export them from there:
- Open up the Certificates console
- Right-click the required Trusted Root Certificate Authority certificate
- Choose Export from “All Tasks” to open up the Certificate Export Wizard
- Choose an export file format – DER should be fine
- Provide a file name and complete the export.
- Move the file to the machine that’s missing the certificate
- Right-click the file and choose “Install Certificate” to open up the Certificate Import Wizard
- Do not allow the wizard to automatically select the certificate store. Instead choose “Place all certificates in the following store” and click Browse
- On the “Select certificate Store” window, enable “Show physical stores” and highlight “Trusted Root Certification Authorities \ Local computer”
- Complete the import
Thanks to Gurpal Basra for his valuable input.