Application Security Standard - Florida DEP Public SharePoint Site

advertisement
Department of Environmental
Protection
STD-09061813.1.0
Page 1 of 15
Application Security Requirements
Purpose
This document provides developers, security managers and product evaluators the minimum
security requirements that all applications deployed in the DEP enterprise environment must
comply with.
Scope
An application is defined as a “System or network-level routines and programs designed by (and
for) system users and customers that support specific business-oriented processes, jobs, or
functions. An application can be general in nature or specifically tailored to a single or limited
number of functions.”
This standard applies to all applications deployed in the DEP enterprise environment, whether
developed internally or by external vendors. This standard also applies to commercial “off-theshelf” software products.
The security requirements contained in this standard relate directly or indirectly to Application
Development and/or Deployment. They originate from the DEP Directive 390: Information
Resources Security Policies and Standards (FL Dept. of Environmental Protection, 2008)and
best security practices.
Standard
Before being deployed in the DEP enterprise application environment, project teams must
complete the security checklist requirements included in the Appendix of this standard. Project
teams must submit the completed checklist to the DEP Information Security Manager for
review and approval before deploying any application in the DEP enterprise environment.
For DEP internally-developed Java software applications, existing standards for Java
development enforce compliance with this standard. Therefore, it is not necessary to complete
the required security checklist required by this standard.
Deviation from Use
Any deviation from this standard shall be documented in associated project and contract
documentation. For contracts, deviation from standard shall be documented and approved by
the DEP contract manager. For non-contract work, deviation from use shall be documented in
the project plan/scope of work and approved by the project manager.
Appendix
Checklist: Security Requirements for Applications
Bibliography
FL Dept. of Environmental Protection. (2008). DEP Directive 390: Information Resources Security
Policies and Standards. Tallahassee: FL DEP.
Approved by R. John Willmott, CIO
__________6/18/09_____________
Approval Date
Page 2 of 15
Appendix
Checklist: Security Requirements for Applications
Instructions: Complete the following checklist and submit to the DEP Information Security Manager for review and approval before
deploying any application in the DEP enterprise application environment. Indicate if the application under evaluation meets,
performs or complies with the intent of the given policy by stating “Yes”, “No”, or “NA” for each listed policy or statement. Attach
comments to clarify statements as needed.
Vendor Product or DEP application name: _______________________________________________________
Policy
Source
DEP 390
Security
Policy Statement
Category
Access Control Access to data files and programs
will be limited to those individuals
authorized to view, process, or
maintain particular systems. The
principles of least access,
separation of functions, and need
to know will be applied in the
determination of user
authorizations.
A user will be allowed to
manipulate data only in
constrained ways, which are
designed to preserve or ensure the
integrity of the data and the
Specific Requirements
Question to Pose Developer
Each user of an information
resource that can be accessed
by multiple users will be
assigned a unique user
identification code or username
and password.
Are unique identification
codes and passwords provided
by the multi-user application
or system, such that only
authorized users have access?
Exceptions are authorized for:
Public users of information
resources or group users where
such access is authorized;
Situations where risk analysis
demonstrates no need for
individual accountability of
users.
Yes/No/NA
For financial or other
applications that may be
susceptible to fraudulent
activities, is there adequate
separation of functions to
ensure controlled execution?
Are audit logs created by the
application or system to
ensure transactions are
Appendix
Security Requirements Checklist
Page 3 of 15
Policy
Source
Security
Category
Policy Statement
process.
Specific Requirements
Question to Pose Developer
Yes/No/NA
date/time stamped along with
who made the transaction?
For tasks that are susceptible to
fraudulent activities or other
unauthorized activity, owners will
ensure adequate separation of
functions for controlled execution.
DEP 390
DEP 390
Evidence, such as signatures, will
be required to show individual
accountability for transaction
origination, authorization, and
approval for financial, critical or
sensitive information.
Access Control User identification will be
authenticated before the system
grants the user access to
information available through that
system.
Transaction
If transaction controls are
Controls
required, the user identification
code will be traceable to the user
for the lifetime of the records and
reports in which they appear.
Are users IDs and passwords
used to authenticate
authorized users before access
to the appropriate level of
access?
For financial or other
applications that may be
susceptible to fraudulent
activities, is there adequate
separation of functions to
ensure controlled execution?
Are audit logs created by the
application or system to
Appendix
Security Requirements Checklist
Page 4 of 15
Policy
Source
Security
Category
Policy Statement
Specific Requirements
Question to Pose Developer
Yes/No/NA
ensure transactions are
date/time stamped along with
who made the transaction?
DEP390
DEP 390
Software and
Proprietary
Code Control
Contracts for programming work
by outside personnel will indicate
ownership of all rights to the
software and associated
documentation.
Contracts with vendors of licensed
or proprietary software will clearly
define the limits of use of the
software.
Confidentiality Information exempted from
Government-in-the-Sunshine or
Public Records Laws should be
kept confidential using appropriate
security measures including in
part:
Passwords, permissions,
access/user IDs, transaction
controls, firewalls, and encryption;
Avoiding the transmission of
confidential information via IT
Resources, unless encrypted
During the initial application
needs phase, has it been
determined who will own the
finished application? Is it
documented?
Data which is exempted from
disclosure under the Freedom of
Information Act
Public Law 93-502) or whose
disclosure is forbidden by the
Privacy Act (Public
Law 93-579) will not be
transmitted over the Internet
unless encrypted (Florida
Statutes 815 and 119.07). Note:
Logon IDs and passwords are
classified as sensitive
information as per the Data
Security Policy (STO-2002-85-9).
Will the application create,
store, transmit, or present
confidential or sensitive data?
If so, what means will be used
to prevent unauthorized
access?
How will it be transmitted
securely?
How will it be stored securely?
Appendix
Security Requirements Checklist
Page 5 of 15
Policy
Source
Security
Category
Policy Statement
Specific Requirements
Question to Pose Developer
Yes/No/NA
No state computer or subnet
that is accessible via the
Internet shall store private or
sensitive information without
the use of firewalls or some
other means to protect the
information.
DEP 390
Confidentiality A sufficient history of transactions
will be maintained for each session
involving access to critical or
confidential information to permit
an audit of the system by tracing
the activities of individuals through
the system.
In addition to system start-up
and shutdown times,
transaction history journals for
critical or confidential
information should log the
following at a minimum:
Update transactions,
Date, time of activity,
User identification,
Sign-on and sign-off activity, and
Confidential display
transactions.
DEP 390
Password
Control
Passwords must never be
encrypted when electronically
stored or if e-mailed; never clear
text.
How will application
transactions be
recorded/logged to permit
auditing?
When will these transactions
be made available or readable
by authorized staff?
Does the application generate
passwords or otherwise store
them in a database or file? If
so, are they encrypted? Are
Appendix
Security Requirements Checklist
Page 6 of 15
Policy
Source
DEP 390
Security
Category
Password
Control
Policy Statement
Specific Requirements
Question to Pose Developer
Yes/No/NA
they transmitted encrypted?
Does the application requiring
a password use a system or
method that ensures a
minimum strong password is
required by the user?
Strong passwords will be used and
shall have these minimum
characteristics:
Have a length of 7 or more
alphanumeric characters for
Windows based systems, 8 or
more for Unix based systems
Contain both upper and lower case
characters (e.g. a-z, A-Z)
Have digits and punctuation
characters as well as letters (e.g. 09,!@#$%^&*(){}[] :”;’<>?,./)
DEP 390
Password
Control
DEP 390
Password
Control
Are not words in any language,
slang, dialect, or jargon
All user-level passwords (e.g.,
email, desktop computer, etc.)
must be changed at least every 90
days.
Passwords shall be treated as
sensitive confidential information
and shall not be shared with
anyone.
*may only apply at user level,
not application level.
Does the application expire
passwords within 90 days or
uses a system whereby users
must changes passwords
within this period?
Are passwords handled as
sensitive confidential by
encrypting during collection,
storage, or transmission?
Appendix
Security Requirements Checklist
Page 7 of 15
Policy
Source
DEP 390
DEP 390
Security
Category
Password
Control
Password
Control
Policy Statement
Specific Requirements
Passwords must not be stored in
readable format on any system.
Application developers must
ensure their programs contain the
following security precautions:
2) Should not store passwords in
clear text or in any easily reversible
form
DEP 390
Data Integrity
The owner will establish controls
commensurate with the value of
information being maintained in
Yes/No/NA
Are passwords stored
encrypted?
Does the application allow role
management to ensure
authorized staff can obtain
access without knowing the
other’s password for the
purpose of data recovery or
system maintenance?
1) Should support authentication
of individual users, not groups
3) Should provide for some sort of
role management, such that one
user can take over the functions of
another without having to know
the other’s password
Controls will be established to
ensure the accuracy and
completeness of data. User
management will ensure data
comes from the appropriate
source for the intended use.
Question to Pose Developer
Does the application ensure
that authentication is at the
user level, not group level, to
ensure accountability by user?
Examples of controls are:
parity checks,
control totals,
selected field verification,
time stamps and sequence
numbering,
reconcile data submitted against
data processed and returned,
batch log of data submitted for
Are controls established to
ensure the integrity of data
entered by authorized users is
obtained, transmitted, and
stored?
Appendix
Security Requirements Checklist
Page 8 of 15
Policy
Source
DEP390
Security
Category
Transaction
Controls
Policy Statement
Specific Requirements
the system.
processing, and
encryption of stored data.
Examples of controls are:
Owners will establish transaction
controls commensurate with the
value of information being
maintained in the system.
design, implementation,
operation, maintenance and use
of system acting as a check upon
each other;
access rights to data and
programs based on specific job
requirements of users as well as
data processing organizations;
Question to Pose Developer
Yes/No/NA
What transaction controls are
in place to ensure information
is controlled commensurate
with its value?
If related to financial data, are
transactions recorded, along
with the user identification, in
order to track responsibility of
each transaction?
separation of responsibilities to
prevent a single individual from
violating the protection
mechanisms of the system;
not allowing information
processing personnel to
originate or authenticate
transactions;
separate responsibilities of
development, testing, and
maintenance; and
Appendix
Security Requirements Checklist
Page 9 of 15
Policy
Source
Security
Category
Policy Statement
Specific Requirements
Question to Pose Developer
Yes/No/NA
restrict programmers and
analysts from having unlimited
access to programs and data
files used for production runs.
DEP390
Testing
DEP390
Testing
Controls
DEP390
General
Application
Security
The test environment will be kept
either physically or logically
separate from the production
environment. Copies of production
data will not be used for testing
unless the data has been
desensitized or unless all
personnel involved in testing is
otherwise authorized access to the
data.
All program changes will be
approved before implementation
to determine whether they have
been authorized, tested, and
documented
Network access to an application
containing critical or confidential
data, and data sharing between
applications, will be as authorized
by the application owners and will
require user authentication
validation.
Are the application
development, testing, and
production environments
separated?
Are change management
processes established to
ensure program changes are
tested and approved before
production?
Are only authorized users
allowed access through proper
validation, to the application
containing critical or
confidential data?
Appendix
Security Requirements Checklist
Page 10 of 15
Policy
Source
DEP390
Security
Category
Encryption
Policy Statement
The owner of applications
containing non-critical or
non-confidential data will likewise
establish criteria for access and
user validation, particularly on
systems authorized for public use.
While in transit, information which
is confidential or information
which in and of itself is sufficient to
authorize disbursement of state
funds will be encrypted if pending
stations, receiving station,
terminals, and relay points are not
all under positive state control, or
if any are operated by or accessible
to personnel who have not been
authorized access to the
information, except under the
following conditions:
Specific Requirements
Question to Pose Developer
Compliance with the STO
Encryption Policy is mandatory
for all agencies. DEP must
determine if it has data which
requires the protection dictated
here.
Does the application involve
the collection, transmission, or
storage of confidential
information or state fund
disbursements data? If so, is
the data encrypted such that
only authorized users are
allowed access?
Yes/No/NA
The requirement to transfer such
information has been validated
and cannot be satisfied with
information, which has been
desensitized.
The Department Head has
documented his acceptance of the
Appendix
Security Requirements Checklist
Page 11 of 15
Policy
Source
Security
Category
Policy Statement
Specific Requirements
Question to Pose Developer
Yes/No/NA
risks of not encrypting the
information based on evaluation of
a risk analysis, which evaluates the
costs of encryption against
exposures.
Best
Practice
Encryption
Best
Practice
Encryption
Best
Encryption
The need for encryption will be
determined based on risk analysis.
Activities that store or transmit
sensitive information may require
encryption to ensure that the
information remains confidential.
These activities might be part of a
mainframe client/server
application, sending information
via the Internet, or the protection
of an individual’s e-mail and
personal files at the desktop.
Encrypt information placed on an
external public network (e.g.
Internet) if confidential or
sensitive, or required by Federal
regulations on consumer privacy.
The same applies for Intranets
when information should not be
viewed by the general computer
user.
An individual user must use
If the application will handle
confidential /sensitive
information, are there
provisions to ensure the
information is first encrypted?
Examples of such information is
HR data, health related data on
individuals, audit trails/logs,
security event data, passwords,
etc.
If the application contains or
presents confidential
information, is it encrypted to
ensure only authorized users
can access it?
May apply to application
If encryption is required, do
Appendix
Security Requirements Checklist
Page 12 of 15
Policy
Source
Practice
Security
Category
DEP390
Data Backup
DEP390
Disaster
Recovery /
business
resumption
DEP 390
Hardware
System
Acquisitions
Policy Statement
Specific Requirements
Question to Pose Developer
approved encryption products and
processes for sending encrypted
mail, protection desktop files, etc.
Data and software essential to the
continued operation of critical
agency functions will be backed
up. The security controls over the
backup resources will be as
stringent as the protection
required of the primary resources
All critical information resource
functions crucial to the continuity
of governmental operations should
have written and cost-effective
disaster recovery plans to provide
for the prompt and effective
recovery of these critical functions
after a disaster has occurred.
The owner will establish
appropriate information security
controls for new hardware
systems. Each phase of systems
acquisition will incorporate
corresponding development or
assurances of security and
appropriate controls relating to
security, development and
documentation.
development?
the methods and tools used
for encryption follow the
established standards?
Are backup procedures and
schedules incorporated into
the planning, based on the
value of the information?
The information owner will
determine what information
must be backed up, in what
form, and how often, in
consultation with BIS
A backup recovery plan for each
application should exist as part
of the agency overall COOP
business recovery plan.
Yes/No/NA
Are backup tapes scheduled
and recovery plans drafted
specific to the needs of the
application such that it could
be fully recovered and brought
back into production?
If new hardware systems are
bought to support the
application, are all security
configurations set and
adequate on the system, to
ensure hosted applications are
not compromised?
Appendix
Security Requirements Checklist
Page 13 of 15
Policy
Source
DEP 390
Security
Category
Application
Development
Best
Practice
Data Content
DEP 390
Virus
Protection
DEP 390
Security
Training
Policy Statement
Computer security needs must be
addressed as part of the
Information Systems Development
Methodology (ISDM) when
developing new or making
modifications to existing
applications if the system or data
affected by these applications
must be protected from accidental
or malicious access, use,
modification, destruction, or
disclosure.
Ensuring the privacy,
confidentiality, security, and
integrity of the data to the
satisfaction of the audience and
legal authorities.
Systems designed to hold
applications or other services must
have virus protection.
Personnel responsible for
information technology resources
must be aware of the Information
Security policies and must be
knowledgeable about effective
Specific Requirements
Question to Pose Developer
Yes/No/NA
Is application security
addressed throughout the
ISDM process?
When new development
requires services and other
computer hardware, the owner
must ensure virus protection is
applied and maintained to the
hosting system.
Application users must be
knowledgeable of their security
responsibilities, based on the
level of access given, etc.
Does the application host have
virus protection?
Are application users trained
on their security
responsibilities as it relates to
the use of the application?
Appendix
Security Requirements Checklist
Page 14 of 15
Policy
Source
Security
Category
Policy Statement
security practices for the technical
environment under their control.
Best
Audit Features Audit Features are enabled. The
Practices
audit log captures the following:
repeated failed login attempts,
unusual processes run by users,
unauthorized attempts to access
restricted files, processes that are
run at unexpected times,
processes that terminate
prematurely, unusual processes,
unexpected shutdowns, and
unexpected reboots.
Best
Administrator Administrator’s Account is locked
Practices Accounts
out after 5 bad logon attempts.
Best
User Accounts
Practices
The user is locked out after 5 bad
logon attempts.
Specific Requirements
Question to Pose Developer
Yes/No/NA
Related to applications
An application has an
administrator account. Those
accounts should lock out after 5
failed logins, to prevent brute
force attempts to obtain access.
Do applications limit admin
accounts to five failed log ins?
Do applications that require
access control limit a users
failed attempts to 5 and lock
out?
Appendix
Security Requirements Checklist
Page 15 of 15
Download