Chapter 12: Passive Analysis
283
PART IV
It is important to make sure that proper validation of input data is taking place. This
is the time-consuming part of responding to the alerts generated by source auditing
tools.Having spent the time to secure the code, you have little need to spend much more
time determining if the original code was actually vulnerable or not, unless you are trying
to prove a point. Remember, however, that receiving a clean bill of health from a
source code auditing tool by no means implies that the program is bulletproof. The only
hope of completely securing a program is through the use of secure programming practices
from the outset and through periodic manual review by programmers familiar with
how the code is supposed to function.
NOTE For all but the most trivial of programs, it is virtually impossible to
formally prove that a program is secure.
The Black Hat Point of View
The black hat is by definition interested in finding out how to exploit a program. For the
black hat, output of source auditing tools can serve as a jumping-off point for finding
vulnerabilities. The black hat has little reason to spend time fixing the code because this
defeats his purpose. The level of effort required to determine whether a potential trouble
spot is vulnerable is generally much higher than the level of effort the white hat will
expend fixing that same trouble spot.
Pages:
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512