It Security Testing, A Practical Guide M
It Security Testing, A Practical Guide M
The following sections describe stages in the Types and examples of tests
test process.
A wide variety of positive and negative testing
Documentation review techniques may be used and typical examples
are given for both hardware and software in the
A t h o r o u g h r e v i e w of the s y s t e m following section. This is described firstly for
documentation needs to be performed as early in hardware and then for software.
the test cycle as possible. The three primary
purposes of this review are: Hardware security tests
Test environmental security Access control hardware units and cash dis-
pensing machines (where the objective is to
Tests should be performed to determine the
collect PIN and card data).
effect on the component of extremes of
temperature, h u m i d i t y and m a g n e t i c
interference. These tests should identify whether Terminals on a LAN where an attacker may
any security weaknesses are exposed when the read all sensitive information such as pass-
words on the LAN.
module fails due to any of these factors. The tests
should be based on the e n v i r o n m e n t a l
Failures in diagnostic function
performance specification of the device and test
the reaction of the module to conditions beyond Tests should be performed to test the
the specified boundaries. A full environmental response of the module to failures in the self-test
test chamber may be required for these tests. diagnostic functions. The tests should determine
whether the failures are reported and whether
Power and speed variation
any security weaknesses arise. For example,
confidential information may be transmitted in
In these tests the modules power inputs or
clear text if the diagnostics fail to report that the
clock speed are varied. Tests should be
cryptographic processor in a link encryptor is out
p e r f o r m e d to d e t e r m i n e if any s e c u r i t y
of service.
When a doubtful area of code is found the Modify the software before it is introduced into
quickest way to check its intended purpose is to the operational environment. The unauth-
ask the programmer. However, the reply supplied orized introduction of software versions into
should not be accepted without question, it the production environment should be de-
should be verified to the complete satisfaction of
tected by change control procedures.
the tester. Comments in the code should be
viewed with scepticism as any fraudulent piece of
code would not broadcast its function.