Re: MS binary integrity baseline

From: Mark Burnett (mb_at_xato.net)
Date: 08/19/04

  • Next message: Marc Fossi: "SecurityFocus Microsoft Newsletter #202"
    To: <focus-ms@securityfocus.com>
    Date: Thu, 19 Aug 2004 08:45:52 -0600
    
    

    There are several ways I check the integrity of files in Windows:

    1. To verify the digital signatures of drivers, you can use sigverif.exe. This tool is meant to verify the HCL signature from Microsoft to verify Windows compatibility, but it is useful nonetheless.

    2. To verify all files protected by Windows File Protection, you can use sfc /scannow (note: look inside sfcfiles.dll to see what it checks).

    3. To check the authenticode certificate of signed files, use chktrust (found in various resource kits and sdk's)

    4. You can also check the NTFS file journal of a file to see if a file has changed, if you have the journal enabled for that volume: fsutil usn readdata c:\windows\notepad.exe

    5. Most hotfix scanners use hashes, file dates, etc. to check file versions and are quite good at verifying that the files are authentic.

    But there's no built-in method to verify hash signatures of files. You can use a tool like fsum (http://www.slavasoft.com/fsum/) to create and verify hashes but it isn't easy to directly compare them to the files on the install CD because the files on the CD are all compressed. You would have to build a baseline system and compare them to that.

    One other note: In Windows XP and 2003 you can use Group Policy to set software restriction policies to only run programs that you specify. You can set hash rules for the policy so that the file only runs if the MD5 and SHA-1 hashes match that in the policy. Setting this up would obviously be time-consuming but would probably be worth it when protecting a critical server.

    Hope this helps,
    Mark Burnett

    On Wed, 18 Aug 2004 16:55:06 +0000, Chris Conacher wrote:
    > Dear List

    > Is there anything that performs binary integrity checks for Windows
    > OS such as  rpm does for Redhat or apt does for Debian?

    > I want something that will check Windows binaries against a trusted
    > source - MS site, install cd, etc so that I can determine integrity
    > baselines of current production systems before deploying an
    > integrity checking application.

    > I would have thought that this would be something Microsoft would
    > provide, but have not seen anything.

    > Thanks for any input

    > Chris

    > _________________________________________________________________
    > Express yourself with cool new emoticons
    http://www.msn.co.uk/specials/myemo


    > --------------------------------------------------------------------
    > ------- ------------------------------------------------------------
    > ---------------

    ---------------------------------------------------------------------------
    ---------------------------------------------------------------------------


  • Next message: Marc Fossi: "SecurityFocus Microsoft Newsletter #202"

    Relevant Pages

    • Crytographic service
      ... I get the following error message when trying to install ... Windows XP updates:- ... Set up could not verify the integrity of the file ...
      (microsoft.public.windowsxp.security_admin)
    • Security Update for Windows XP (KB823980)
      ... i unable to install Security Update for Windows XP ... after downloading try to run after a while ... message appears (set up could not verify the integrity of ...
      (microsoft.public.windowsxp.security_admin)
    • Worm Blaster virus
      ... >I am trying to download the patch for my windows xp home ... >not verify the integrity of the update.inf. ... took the windows update site down." ...
      (microsoft.public.windowsxp.security_admin)
    • Re: Outlook 2003 RPC feature
      ... The version of the operating system and service pack is displayed under ... Verify that Windows update Q331320 is installed on the computer (not ... to download and install it. ...
      (microsoft.public.windows.server.sbs)
    • Re: Audit program for scanning hosts for local time accuracy.
      ... configuring each host with keys that enable it to verify its own identity to others or verify the identity of others. ... If I have proper *windows* authentication there should be a way to query the time on all these machines. ... Microsoft's implementation is broken in this regard so that any Windows 2000 or XP system running W32TIME will tell you what it thinks the time is. ...
      (comp.protocols.time.ntp)