Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK...

19
Testing Code for Compliance Testing Code for Compliance

Transcript of Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK...

Page 1: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Testing Code for ComplianceTesting Code for Compliance

Page 2: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Agenda

• AppVerifier 3.1• Microsoft Windows Server 2003 R2

Platform SDK• Command-line tools• Third-party tools

Page 3: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

AppVerifier 3.1

• Identifies potential compatibility, stability, and security issues

• Is stand-alone• Contains a collection of tests • Has UAC Predictor plug-in• Provides guidance for fixes• Requires administrator privileges

Page 4: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

AppVerifier 3.1AppVerifier 3.1

Page 5: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Agenda

• AppVerifier 3.1• Windows Server 2003 R2

Platform SDK• Command-line tools• Third-party tools

Page 6: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Windows Server 2003 R2 Platform SDK

• Contains tools developers can use for:– Cryptography– Debugging– File management– Performance– Resources– Testing

• Can be used to develop 32- and 64-bit applications

Page 7: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Orca

• Part of Windows Server 2003 R2 Platform SDK

• Microsoft Windows Installer table editor• Creates and edits Windows Installer

packages• Requires administrator privileges

Page 8: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

OrcaOrca

Page 9: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Agenda

• AppVerifier 3.1• Windows Server 2003 R2 Platform

SDK• Command-line tools• Third-party tools

Page 10: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

SignTool

• Part of Windows Server 2003 R2 Platform SDK

• Command-line tool• Digitally signs files• Verifies signatures• Time stamps files

signtool sign /a MyFile.exe

Page 11: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

RegDump

• Dumps contents of registry to a file• Use with RegDiff to ensure the

registry has not changed

Regdump HKLM > reg.txt

Page 12: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

RegDiff

• Generates a log of differences section by section

Regdiff reg1.txt reg2.txt

Page 13: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Restart Manager Tool

• Inject shutdown messages

• The application’s process ID is dwPID • Forces the application to shut down

and restart.

Rmtool.exe –p dwPID –S –R

Page 14: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

ThreadHijacker

• Injects crashes– Pauses thread– Injects binary data– Sets instruction pointer– Resumes thread

• Need to ensure Windows Error Reporting occurs

Threadhijacker.exe /ui /crash:av /process:<process_name>”

Page 15: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Agenda

• AppVerifier 3.1• Windows Server 2003 R2 Platform

SDK• Command-line tools• Third-party tools

Page 16: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Resource Hacker 3.4

• Freeware tool• Explore resources for application

executables• Resource script compiler and

decompiler

Page 17: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Test Cases

Machine Setup and ConfigurationMachine Setup and Configuration

Normal OperationsNormal Operations

SecuritySecurity and and

CompatibilityCompatibilityReliabilityReliability

Install Install and and

UninstallUninstall

Page 18: Testing Code for Compliance. Agenda AppVerifier 3.1 Microsoft Windows Server 2003 R2 Platform SDK Command-line tools Third-party tools.

Summary

• AppVerifier 3.1• Windows Server 2003 R2

Platform SDK• Command-line tools• Third-party tools