SG Flashcards
In information security, confidentiality “is the property, that information is not made available or disclosed to unauthorized individuals, entities, or processes”
Confidentiality
In information security, data integrity means maintaining and assuring the accuracy and completeness of data over its entire life-cycle. This means that data cannot be modified in an unauthorized or undetected manner. This can be also used to validate databases to make sure none of the data is corrupt or modified in an unauthorized matter.
Integrity
For any information system to serve its purpose, the information must be available when it is needed. This
means that the computing systems used to store
and process the information, the security controls used to protect it, and
the communication channels used to access it must be functioning correctly.
Availability
Public Key Infrastructure (PKI) and Cryptography/Encryption is considered to fall under (C,I, or A)?
Confidentiality
Offsite back-up and Redundancy is considered to fall under (C,I, or A)?
Availability
Hashing, Message Digest (MD5), non repudiation and digital signatures is considered to fall under (C,I, or A)?
Integrity
The software architect moves analysis to implementation and analyzes the requirements and use
cases
as activities to perform as part of the development process.
That person can also
develop class diagrams.
Software Architect
Security Practitioner Roles:
Choose function for each role from the list below:
Coding, Deployment, Requirements Gathering, or Design.
Release Manager
Architect
Developer
Business Analyst/Project Manager
Release Manager: Deployment
Architect: Design
Developer: Coding
Business Analyst/Project Manager: Requirements Gathering
These are teams of people familiar with the infrastructure of the company and the languages of the software
being developed. Their mission is to kill the system as the developers build it.
Red Team
Static analysis
, also called
static
code
analysis
, is a method of computer program debugging that is done
by examining the code without executing the program. The process provides an understanding of the code structure, and
can help to ensure that the code adheres to industry standards.
It’
s also referred as code review.
Static Analysis
The
MD5 algorithm
is a widely used hash function producing a 128
-
bit hash value. Although MD5 was
initially designed to be used as a cryptographic hash function, it has been found to suffer from extensive vulnerabilities. I
t
can still be used as a checksum to verify data i
ntegrity, but only against unintentional corruption.
(Integrity)
MD5 Hash
The SHA (Secure Hash Algorithm) is one of a number of cryptographic hash functions. A cryptographic hash is like a signature for a text or a data file. SHA - 256 algorithm generates a n almost - unique, fixed size 256 - bit (32 - byte) hash. Hash is a one - way function – it cannot be decrypted back. (Integrity)
SHA-256
AES (acronym of Advanced Encryption Standard ) is a symmetric encryption algorithm. The algorithm was developed by two Belgian cryptographer Joan Daemen and Vincent Rijmen. AES was designed to be efficient in both hardware and software, and supports a block length of 128 bits and key lengths of 128, 192, and 256 bits. (Confidentiality)
Advanced Encryption Standard (AES)
The analogy between safety and security is particularly close. The main difference is that safety - relevant faults are stochastic ( i.e. , unintentional or accidental), whereas security - relevant faults are “sponsored,” i.e. , intentionally created and activated t hrough conscious and intentional human agency .
Stochastic
Is used to see if the system has solid exception handling to the input it receives. Is the use of malformed or
random input into a system in order to intentionally produce failure
. This is a ver
y easy process of feeding garbage to the
system when it expects a formatted input, and it is always a good idea to feed as much garbage as possible to an input
field.
Fuzz Testing
The 3 tier architecture model removes the business logic from the client
end of the system. It generally
places the business logic on a separate server from the client. The data access portion of the system resides on a 3rd tier,
which is separate from both the client and the business logic platform.
Three (3) Tier
USC’s Threat Model
ing based on Attacking Path analysis (T
-
MAP) is a risk management approach that
quantifies total severity weights of relevant attacking paths for COTS
-
based systems. T
-
MAP’s strengths lie in its ability
to maintain sensitivity to an organization’s business
value priorities and Information Technology (IT) environment, to
prioritize and estimate security investment effectiveness and evaluate performance, and to communicate executive
-
friendly vulnerability details as threat profiles to help evaluate cost effic
iency.
MAP
Trike is an open source conceptual framework, methodology, and toolset designed to autogenerate repeatable
threat models. Its methodology enables the risk analyst to accurately and completely describe the security characteristics
of the syst
em, from high
-
level architecture to low
-
level implementation of details. It also requires building a defensive
model of the subject system
.
Trike
This free tool assists in the creation of threat models. It builds on Microsoft Visio and
provides a tool for constructing graphic representation of threat models for the system without requiring expertise in
security and also has the capability of graphi
cally representing a software system and identifying vulnerabilities.
SDL Threat Modeling Tool
The overall goal of performing vulnerability mapping is to determine the most likely locations within the system in
development where an attacker will strike.
Th
is is done on the design phase of the SDLC
Vulnerability Mapping
This is the
highest level of vulnerability.
This is a very likely target for an attacker, such as free text input in a form.
These are the highest
priory for a security plan for the system and these should al
l be mitigated and accounted for by
established control systems in development.
V3
This is the moderate level vulnerability. These are possible but not probable targets. These will include interprocess
communications on the server or traffic within the t
rust boundary of the system. Eavesdropping is the most significant risk
in this situation. V2 level vulnerabilities should always be mitigated in the system, but in a trade off analysis, strict con
trol
may not be necessary as long as a procedure is in plac
e to fail safely and protect any private or confidential data
V2
This is the lowest priority level of vulnerability. These are unlikely venues of attack with little risk if they are
exploited. Failing safely is the most important concern at this level,
because the data associated with this vulnerability has
no value, and the process involved is not mission critical. An example of this level of vulnerability
would be a
transmission failure in a common HTML header coming from the system; the highest risk h
ere is that the customer will
not properly see the page and it would have to be reloaded. V1 vulnerabilities can largely be ignored, but they should be
noted in the system specification in case functionality is altered by a later system update or interacti
on because this may
allow them to become more significant.
V1
Is capable of expressing resolution efforts to malformed input and potential attacks in a way other
documentation at the system level cannot. The caveat is that activity diagrams
do not contain class calls and references;
they only provide a visualization of the process logic.
Activity Diagram
The Kiviat
diagram provides a visual comparison of multiple attributes and can visualize and report the
information on a single artifact based on monitored information.
Kiviat Diagram
Is a threat model process that al
lows the company to identify the part that
needs to be protected from
unauthorized users.
Identify the Assets
D
escribes a set of principles for software development under which requirements and solutions evolve
through the collaborative effort of self
-
organizing cross
-
functional teams. It promotes adapt
ive planning, evolutionary
development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change.
These
principles support the definition and continuing evolution of many software development methods.
It also avoi
ds life
cycle activities and focuses on built a little, test a little and field a little.
It also supports informal communication and
Incremental design.
Agile
Model
Software Development Models attributes:
Cyclical Process, Supports quick prototyping and limits
the time spent thinking about the problem as a whole. This describes what Software Development Model?
Agile
Software Development Models attributes:
Similar to interactive model and main components are planning, development and deployment. This describes what Software Development Model?
Waterfall
located developers working
on systems that are
not life
-
critical. The Crystal family of methodologies focus on efficiency and habitability as components of project safety.
Crystal Clear focuses on people, not processes or artifacts.
Roles may be filed by the same people, including
a project
manager and a business expert.
Chrystal Clear
The waterfall model is a sequential (non - iterative / Limited Interaction ) design process, used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance. All the requirements will be specified in the 1st step, uses a document driven approach (Large Amount of documentation) and h as specific and identifiable stages. It also provides a resource to entry level developers with limited exposure.
Waterfall
Waterfall Methodology Security concerns:
Requirement Analysis:
Define Security Features
Waterfall Methodology Security concerns:
Design:
Misuse cases and vulnerability mapping
Waterfall Methodology Security concerns:
Construction and Implementation:
Secure Coding practices
Waterfall Methodology Security concerns:
Testing:
Penetration Assessment
Waterfall Methodology Security concerns:
Installation:
Final Security Review
Waterfall Methodology Security concerns:
Operation or Maintenance:
Periodic security review and updates
A
digital signature
is a mathematical scheme for demonstrating the authenticity of a digital message
or documents. A valid digital signature gives a recipient reason to believe that the message was created by a known
sender, that the sender cannot deny having sent the messag
e (authentication and non
-
repudiation), and that the message
was not altered in transit (integrity).
It also can be used as proof of approval by an authorized user.
Digital Signatures
D
ata redundancy
is the existence of data that is additional to the actual data
and permits correction of errors
in stored or transmitted data. The additional data can be simply a complete copy of the actual data, or only select pieces of
data that allow detection of errors and reconstruction of lost or damaged data up to a certain l
evel.
This will make sure that
all data will always be available, the data will not be lost and it will be stored at a another location for failover reasons
.
Redundancy
Is the process of using an algorithm for verifying the integrity or authenticity of a
computer file. This can be
done by comparing two files bit
-
by
-
bit, but requires two copies of the same file, and may miss systematic corruptions
which might occur to both files. A more popular approach is to also store checksums (hashes) (message digests)
of files
for later comparison.
Hashing
The main objective of software assurance is to ensure that the processes, procedures, and products
used to produce and sustain the software conform to all requirements and standards specified to govern th
ose processes,
procedures, and products
. This can be also used to make sure that any web application
meets the requirements of what it
was designed to do and accessible to all that are authorized whether in the office or at a remote location.
Software Assurance
What can help secure a system in a high risk environment where the system is prone to attack?
Sandboxing, isolating trusted processes, and proper handling of errors and exceptions
What is a common web server attack in which unsolicited TCP requests that overwhelm the web servers’ resources and make it unavailable?
DOS or DDOS attack
What SQL query command can allow an attacker to access tables within that particular database without requiring elevated and/or administrator permissions and jeopardizing the structure and relevance of the data that the database contains.
SELECT
One method of disallowing a SQL injection attack when handling user fields in a web from that reads or write to a
database is to_______?
scrub all input of malicious code.
What are the two steps of the threat model that data flow
approaches.
Characterize the system and view the
system as an adversary