IT Audit Automation

advertisement
IT Audit Automation
Presented by:
Brandon McAndrew
Jordan Schafer
Keith Edwards
IT Audit Automation
•
Overview of scripting languages
•
Demonstrations
Script Language
•
A type of programming language
•
Interprets and automates the execution
of tasks
Script Language
Examples
1.
Bash – UNIX or UNIX-like operating systems
2.
Visual Basic – Microsoft Office Applications
3.
ACLScript – Audit Command Language
(ACL) Analytics
Script Language
When to use scripts?
1.
If repetitive tasks need to be completed
2.
If a large number of sample items need to be
reviewed
3.
If similar reviews will be conducted in the future
Script Language
Items to consider before writing a script
1.
What do you need the script to do?
2.
What criteria will be used for tests?
3.
How will source data be obtained?
Script Language
You don’t always need a formal
programming background to write and
use scripts!
Script Language
Web searches and help files are a great starting place.
Demonstration
Demonstration
Demonstration
Demonstration
Demonstration
Demonstration
Demonstration
Demonstration
Script Language
When not to use scripts?
1.
When source data will be provided in an
inconsistent format
2.
When there is no positive cost benefit
3.
When resource limitations become a barrier
Script Language
Risks when using scripts
1.
Errors in scripting logic producing improper results
2.
Could prompt auditors to jump to faulty
conclusions
3.
Costs could exceed benefits
Questions And
Answers
(3 Minutes)
Illustration:
Oracle
Summary - Oracle Illustration
1.
Obtain an understanding
5.
Design import script
2.
Establish criteria
6.
Design testing script
3.
Identify tables
7.
Design export script
4.
Request files
8.
Design master script
Handout – “Oracle Example Script”
Obtain An Understanding
 Identify
the database and version
 V$Version
Obtain Criteria
 CIS
benchmarks
 Policies
and
procedures
 Determine
the
most restrictive
?
Identifying Tables
 DBA_Users
 DBA_RolePrivs
 DBA_Profiles
 DBA_TabPrivs
 DBA_Parameters
 DBA_SysPrivs
Data Gathering
 Request
 Easiest
files
format
Designing Scripts Step 1 -Formatting
 Perform
 Import
manually
scripts
 Comments
 Perform
reconciliations
Designing Scripts Step 2 - Testing
Add
comments
Define
Use
the fields
established criteria to create tests
Direct
tests
Indirect
Other
tests
information (Criteria reference)
Defining Fields
Direct Tests
Input “Not In Compliance” in the virtual field V_COMPLIANCE if
“Failed Login Attempts” is greater than 5 or set to “Unlimited”
and is not “DEFAULT.”
Indirect Tests/ Other Information
Step 3 Output & Overview
 Export
script
 Perform
 Follow
manually
up on all items
Master Script
 Create
1 script that controls all other scripts
 Identifies
 Sets
which scripts are ran
overall variables
 Identifies
outputs
Questions And
Answers
(3 Minutes)
Illustration
Statewide UNIX Security Controls
Summary – UNIX Illustration
•
Selecting audit criteria and defining tests
•
•
Writing a data gathering script
•
•
Visual Basic
Solaris operating system
Automating testing in ACL
•
Importing criteria and source files
Background
•
UNIX is a multiuser and multitasking operating
system
•
Various open source and commercial variations
•
Automation for data gathering and data
analytics
Audit Criteria & Defining Tests
•
Selecting audit criteria
•
Defining the tests applicable to the operating
system
•
•
Separate criteria and tests per operating system
Making audit criteria variable
•
Simple and efficient changes
•
Visual Basic
Demonstration
Data Gathering
•
Selecting a script language
•
Using audit criteria
•
Other sources of information
•
Testing commands and reviewing results
Demonstration
Data Gathering – Continued
•
Commenting and formatting your scripts
•
Determine the need for multiple scripts
•
Thoroughly test the final scripts
•
•
Ensure auditee cooperation
•
Request auditee review the script
Make scripts simple or complex
•
Ensure uniformity
•
Allow for efficient adjustments
Demonstration
Data Analysis – ACL
•
•
Importing data
•
Audit criteria (Visual Basic)
•
Data gathering results (source files from server)
Creating control scripts
•
Dialog boxes for users of the scripts
•
Allow the user to determine tests ran and outputs
generated
•
Using variables and adding pertinent information
Demonstration
Testing & Results - ACL
•
•
Testing Scripts
•
Base script logic on audit criteria
•
Thoroughly test
Results
•
Export necessary information
•
Manually review results and make conclusions
•
Perform normal testing procedures with script
outputs
Demonstration
Concluding Thoughts
•
Putting it all together
•
Lessons learned
•
Impact on IT audits
fin.
Contact Information
•
Brandon McAndrew – bmcandrew@audgen.michigan.gov
•
Jordan Schafer – jschafer@audgen.michigan.gov
•
Keith Edwards – kedwards@audgen.michigan.gov
Download