SlideShare a Scribd company logo
Software Development Security
CISSP Domain 4
Pages 632-698
Tim Jensen
Lead Researcher
StaridLabs
Software Development Methodolgy
● How to plan, design, scope, develop, and
document an application or addition to an
application.
Waterfall
● Slow – every phase is thoroughly planned and locked in
before development beings.
● Developers work on one phase at a time, adhoc or
concurrent tasks are generally not done.
● Better for security since code changes are thought out in
advance and lack of concurrent tasks means your not
'mashing' code together.
● Once the design is approved there's no changing it if defects
are found later. Once the product is released then a new
cycle starts to plan, remediate, and add features.
Models based on Waterfall
Structured Programming
Development
● Widely known
● Focuses on coherence, comprehensibility,
freedom from faults, and security
● Requires defined processes and modular
development
● Each phase requires review and approval
Spiral Method
● Each phase goes through the waterfall
design phase
● Adds a risk assessment to 'check' phase.
The estimated cost to complete the phase
and the schedule are updated each iteration
Based on the risk assessment a 'go or no
go' decision is made.
Spiral Method 2 - PDCA
Cleanroom
● Significant time is spent in the design
phase.
● Theory is bugs won't get into software if it's
properly written the first time.
● Less time spent on testing of this 'perfect
code'
Iterative Development
Iterative Development
● Allows for refinement during the process
● Requires consistent change control – even
during initial design
● Scope creep allowed
● Difficult to verify security due to constant
changes
Types of Iterative Development
Prototyping
● Create a simplified version of the
application and release it for review. Use
the feedback to build a second, better
version.
● Repeat process until users are satisfied
● Concept, design, implement, refine
Modified Prototype Model (MPM)
● Ideal for web app development
● Basic functionality is rapidly deployed
● Maintenance phase beings after
deployment
● Flexibility and speed is key
Rapid Application Development
● Strict time limits are set for each phase
● Uses tools for rapid development
● Must watch for bad decisions that lead to
poor design
Joint Analysis Development (JAD)
● Work directly with users to develop working
application
● End users are directly involved with
development planning and testing
Exploratory model
● System requirements are assumed. When
further information comes in then the
system is modified.
Other Models
Computer Aided Software
Engineering (CASE)
● Uses tools and applications to rapidly
develop and test functionality
● IDE, Test macros, fuzzers, Auto
documentation functions, etc.
Computer-based development
● Uses standardized building blocks to
assemble an application (vs develop)
● IE: Dreamweaver over a text editor for
building a website.
Databases
Purpose of a database
● Central storage location
● saves disk space
● makes data more consistent
DBMS components
● Database engine
● Hardware Platform
● Application Software
● Users
Database Required Functions
● Transaction Persistence – The state of the database
is the same after a transaction as it was prior.
● Fault tolerance and recovery – Data should remain
in it's original state.
● Rollback recovery – Stripping transactions to a known
good state
● Shadow recovery – Installing a known good state and
adding transactions from a transaction log
Required Functions 2
● Sharing by multiple users
● Data should be accessible to multiple users
without locking or endagering the data
● Security Controls
● Access controls, integrity checking, etc
Relational Databases
● Use Primary keys and foreign keys to break
data into tables of like data, allowing for
table data to be linked. - Used to speed up
queries of large sets of data
Structured Query Language (SQL)
● Allows for querying and displaying of data
from a database
● SQL compliant databases have:
● Schemas – Describes structure of the database
● Tables – Columns and rows of data
● Views – Custom joins on data so multiple tables
can be seen as one record
Database interface languages
● ODBC – Open Database Connectivity
● JDBC – Java Database Connectivity
● XML – Extensible Markup Language
● OLE DB – Object Linking and Embedding
Database
● ADO – ActiveX Data Objects
ODBC
● Very common
● Username and password are stored in plaintext
● Call and return data are sent cleartext over the
network
● Access verification is rudimentary
● ODBC drivers can elevate system access –
applications must be trusted
JDBC
● Need to specify user authentication, control
user access, and audit user functions. None
of this is enabled by default.
XML
● Provides consistent strucutre to data
● Easy to transfer data between languages,
operating systems, etc.
● **Rant on schemas
OLE DB
● Microsoft technology – not usable anywhere
else.
● Allows documents or files to be embedded
inside others. Example: A word document
can be entirely embedded in an excel
spreadsheet
Metadata
● Data about data – IE: headers on IP
packets showing where the data came from
and where it's going.
● Allows unrelated data to be correlated
Database threats
● Aggregation – combining nonsensitive data from separate
sources to create sensitive information
● Bypass attacks – Users bypasses front end controls to
access information
● Compromising database views
● Concurrency – Running processes that use old data,
updates that are inconsistent, deadlocks
● Data Contamination – Data corruption
● Deadlocking – To users try to access the same information
and both are denied
Threats Continued
● Denial of Service – Table locks, intensive
processing, poor queries.
● Improper modification of information – Intensional
or accidental modification of information which
damages the integrity
● Inference – Users may be able to infer confidential
information from available records
● Interception of data – Data may be intercepted
between client and server
More Threats
● Query Attacks – Querying the database in a
way that gains a user more information than
if they used the trusted frontend
● Server Access
● Website security
● Unauthorized Access
Lock Controls
● Atomicity – A transaction is either fully committed or
rolled back. No partial updates
● Consistency – Data must be validated before the
transaction is allowed
● Isolation – Transaction is isolated from all other
transactions until complete
● Durability – Completed transactions are permanent and
will survive system/media failure (IE not stored in
memory which is wiped if the power goes out – rather is
stored on disk)
Web Application Threats
● Injection
● Broken Authentication and Session Management
● Cross-Site Scripting (XSS)
● Insecure Direct Object References
● Security Misconfiguration
● Sensitive Data Exposure
● Missing Function Level Access Control
● Cross-Site Request Forgery (CSRF)
● Using Components with Known Vulnerabilities
● Unvalidated Redirects and Forwards
Object Oriented Programming
(OOP)
● Object oriented programming is ultimately
writing applications in small blocks and
connecting the blocks to create a functional
system.
● This allows for code re-use, and security
and portability of smiliar code. IE: All
authentication code can be in one class and
inherit permissions as a set.
OOP Things to know
● Encapsulation (Data Hiding)
● A class defines only the data I needs to be
concerned with. The code cannot access other
non-related data
● Good for security
Inheritance
● Subclasses can inherit properties of it's
main class. Objects in the class can inherit
from like objects
Polymorphism
● Objects may be processed differently
depending on their data type. Instantiating
an object from a prior object ensures the
new object inherits attributes and methods
from the original
Polyinstantiation
● Specific objects instantiated form a higher
class may vary their behavior depending
upon the data they contain
● Basically allows data classification
programatically so data leakage/inference is
minimized.
OOP Security
● No object should be able to access another
object's internal data. Data should be
passed in and out and while inside the
object should be protected from external
influence.
Class Inheritance
● Classes are designed to inherit code from other classes.
This is a complex processes which in larger applications
can cause security breaches for object access.
● Example: If there's administrator functions that require login
credentials and someone can modify the code to allow
access to the admin functions without credentials, then this
would violate the access control model of the application.
What's so complex about class inheritance?
CORBA
● Jem already gave a mini talk on CORBA. If
anyone has further questions related to
CORBA security we can have Jem address
them since I've never used CORBA.

More Related Content

What's hot

Cs8792 cns - unit v
Cs8792   cns - unit vCs8792   cns - unit v
Cs8792 cns - unit vArthyR3
 
Intruders
IntrudersIntruders
Intruderstechn
 
Least privilege, access control, operating system security
Least privilege, access control, operating system securityLeast privilege, access control, operating system security
Least privilege, access control, operating system securityG Prachi
 
CS8792 - Cryptography and Network Security
CS8792 - Cryptography and Network SecurityCS8792 - Cryptography and Network Security
CS8792 - Cryptography and Network Securityvishnukp34
 
Covert channels: A Window of Data Exfiltration Opportunities
Covert channels: A Window of Data Exfiltration Opportunities Covert channels: A Window of Data Exfiltration Opportunities
Covert channels: A Window of Data Exfiltration Opportunities Joel Aleburu
 
INTRUSION DETECTION TECHNIQUES
INTRUSION DETECTION TECHNIQUESINTRUSION DETECTION TECHNIQUES
INTRUSION DETECTION TECHNIQUESTrinity Dwarka
 
Can a firewall alone effectively block port scanning activity
Can a firewall alone effectively block port scanning activityCan a firewall alone effectively block port scanning activity
Can a firewall alone effectively block port scanning activitysameer farooq
 
Network traffic analysis with cyber security
Network traffic analysis with cyber securityNetwork traffic analysis with cyber security
Network traffic analysis with cyber securityKAMALI PRIYA P
 
Intrusion Detection System Project Report
Intrusion Detection System Project ReportIntrusion Detection System Project Report
Intrusion Detection System Project ReportRaghav Bisht
 
GSA calls out Cyber Hunt skills in final Cybersecurity Contract Orals
GSA calls out Cyber Hunt skills in final Cybersecurity Contract OralsGSA calls out Cyber Hunt skills in final Cybersecurity Contract Orals
GSA calls out Cyber Hunt skills in final Cybersecurity Contract OralsDavid Sweigert
 
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...Jowin John Chemban
 

What's hot (20)

Cs8792 cns - unit v
Cs8792   cns - unit vCs8792   cns - unit v
Cs8792 cns - unit v
 
Intruders
IntrudersIntruders
Intruders
 
Intruders
IntrudersIntruders
Intruders
 
Network Security Topic 1 intro
Network Security Topic 1 introNetwork Security Topic 1 intro
Network Security Topic 1 intro
 
Least privilege, access control, operating system security
Least privilege, access control, operating system securityLeast privilege, access control, operating system security
Least privilege, access control, operating system security
 
CS8792 - Cryptography and Network Security
CS8792 - Cryptography and Network SecurityCS8792 - Cryptography and Network Security
CS8792 - Cryptography and Network Security
 
Covert channels: A Window of Data Exfiltration Opportunities
Covert channels: A Window of Data Exfiltration Opportunities Covert channels: A Window of Data Exfiltration Opportunities
Covert channels: A Window of Data Exfiltration Opportunities
 
Lesson 3- Effectiveness of IDPS
Lesson 3- Effectiveness of IDPSLesson 3- Effectiveness of IDPS
Lesson 3- Effectiveness of IDPS
 
Intrusion Detection
Intrusion DetectionIntrusion Detection
Intrusion Detection
 
Lesson 1 - Technical Controls
Lesson 1 - Technical ControlsLesson 1 - Technical Controls
Lesson 1 - Technical Controls
 
INTRUSION DETECTION TECHNIQUES
INTRUSION DETECTION TECHNIQUESINTRUSION DETECTION TECHNIQUES
INTRUSION DETECTION TECHNIQUES
 
Lesson 2 - IDPS
Lesson 2 - IDPSLesson 2 - IDPS
Lesson 2 - IDPS
 
Can a firewall alone effectively block port scanning activity
Can a firewall alone effectively block port scanning activityCan a firewall alone effectively block port scanning activity
Can a firewall alone effectively block port scanning activity
 
Network traffic analysis with cyber security
Network traffic analysis with cyber securityNetwork traffic analysis with cyber security
Network traffic analysis with cyber security
 
Lesson 3- Remote Access
Lesson 3- Remote AccessLesson 3- Remote Access
Lesson 3- Remote Access
 
Operations Security
Operations SecurityOperations Security
Operations Security
 
call for papers, research paper publishing, where to publish research paper, ...
call for papers, research paper publishing, where to publish research paper, ...call for papers, research paper publishing, where to publish research paper, ...
call for papers, research paper publishing, where to publish research paper, ...
 
Intrusion Detection System Project Report
Intrusion Detection System Project ReportIntrusion Detection System Project Report
Intrusion Detection System Project Report
 
GSA calls out Cyber Hunt skills in final Cybersecurity Contract Orals
GSA calls out Cyber Hunt skills in final Cybersecurity Contract OralsGSA calls out Cyber Hunt skills in final Cybersecurity Contract Orals
GSA calls out Cyber Hunt skills in final Cybersecurity Contract Orals
 
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...
Seminar Report | Network Intrusion Detection using Supervised Machine Learnin...
 

Viewers also liked

CISSP Week 21
CISSP Week 21CISSP Week 21
CISSP Week 21jemtallon
 
CISSP Proposal
CISSP ProposalCISSP Proposal
CISSP Proposaljemtallon
 
CISSP Week 5
CISSP Week 5CISSP Week 5
CISSP Week 5jemtallon
 
access-control-week-3
access-control-week-3access-control-week-3
access-control-week-3jemtallon
 
Cissp Week 23
Cissp Week 23Cissp Week 23
Cissp Week 23jemtallon
 
CISSP week 26
CISSP week 26CISSP week 26
CISSP week 26jemtallon
 
access-control-week-2
access-control-week-2access-control-week-2
access-control-week-2jemtallon
 
CISSP Week 7
CISSP Week 7CISSP Week 7
CISSP Week 7jemtallon
 
CISSP Week 12
CISSP Week 12CISSP Week 12
CISSP Week 12jemtallon
 
CISSP Week 6
CISSP Week 6CISSP Week 6
CISSP Week 6jemtallon
 
CISSP Week 20
CISSP Week 20CISSP Week 20
CISSP Week 20jemtallon
 
CISSP Week 9
CISSP Week 9CISSP Week 9
CISSP Week 9jemtallon
 
CISSP Week 18
CISSP Week 18CISSP Week 18
CISSP Week 18jemtallon
 
Cissp Week 24
Cissp Week 24Cissp Week 24
Cissp Week 24jemtallon
 
Cissp d5-cryptography v2012-mini coursev2
Cissp d5-cryptography v2012-mini coursev2Cissp d5-cryptography v2012-mini coursev2
Cissp d5-cryptography v2012-mini coursev2infosecedu
 
CISSP Week 22
CISSP Week 22CISSP Week 22
CISSP Week 22jemtallon
 
CISSP week 25
CISSP week 25CISSP week 25
CISSP week 25jemtallon
 

Viewers also liked (18)

CISSP Week 21
CISSP Week 21CISSP Week 21
CISSP Week 21
 
CISSP Proposal
CISSP ProposalCISSP Proposal
CISSP Proposal
 
CISSP Week 5
CISSP Week 5CISSP Week 5
CISSP Week 5
 
access-control-week-3
access-control-week-3access-control-week-3
access-control-week-3
 
Cissp Week 23
Cissp Week 23Cissp Week 23
Cissp Week 23
 
CISSP week 26
CISSP week 26CISSP week 26
CISSP week 26
 
access-control-week-2
access-control-week-2access-control-week-2
access-control-week-2
 
CISSP Week 7
CISSP Week 7CISSP Week 7
CISSP Week 7
 
CISSP Week 12
CISSP Week 12CISSP Week 12
CISSP Week 12
 
CISSP Week 6
CISSP Week 6CISSP Week 6
CISSP Week 6
 
CISSP Week 20
CISSP Week 20CISSP Week 20
CISSP Week 20
 
CISSP Week 9
CISSP Week 9CISSP Week 9
CISSP Week 9
 
CISSP Week 18
CISSP Week 18CISSP Week 18
CISSP Week 18
 
Cissp Week 24
Cissp Week 24Cissp Week 24
Cissp Week 24
 
Cissp d5-cryptography v2012-mini coursev2
Cissp d5-cryptography v2012-mini coursev2Cissp d5-cryptography v2012-mini coursev2
Cissp d5-cryptography v2012-mini coursev2
 
CISSP Week 22
CISSP Week 22CISSP Week 22
CISSP Week 22
 
CISSP week 25
CISSP week 25CISSP week 25
CISSP week 25
 
SlideShare 101
SlideShare 101SlideShare 101
SlideShare 101
 

Similar to CISSP Week 13

Platform Security IRL: Busting Buzzwords & Building Better
Platform Security IRL:  Busting Buzzwords & Building BetterPlatform Security IRL:  Busting Buzzwords & Building Better
Platform Security IRL: Busting Buzzwords & Building BetterEqual Experts
 
Mid-Term Presentation
Mid-Term Presentation Mid-Term Presentation
Mid-Term Presentation HarshJivani2
 
Java Based RFID Attendance Management System Graduation Project Presentation
Java Based RFID Attendance Management System Graduation Project PresentationJava Based RFID Attendance Management System Graduation Project Presentation
Java Based RFID Attendance Management System Graduation Project PresentationIbrahim Abdel Fattah Mohamed
 
Liferay portals in real projects
Liferay portals  in real projectsLiferay portals  in real projects
Liferay portals in real projectsIBACZ
 
20160422 Speedy Framework Enterprise Application Development Platform
20160422 Speedy Framework Enterprise Application Development Platform20160422 Speedy Framework Enterprise Application Development Platform
20160422 Speedy Framework Enterprise Application Development PlatformHarezmi IT Solutions
 
Path dependent-development (PyCon India)
Path dependent-development (PyCon India)Path dependent-development (PyCon India)
Path dependent-development (PyCon India)ncoghlan_dev
 
LOW LEVEL DESIGN INSPECTION SECURE CODING
LOW LEVEL DESIGN INSPECTION SECURE CODINGLOW LEVEL DESIGN INSPECTION SECURE CODING
LOW LEVEL DESIGN INSPECTION SECURE CODINGSri Latha
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices ArchitectureLucian Neghina
 
Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)ncoghlan_dev
 
Ignou MCA 6th Semester Synopsis
Ignou MCA 6th Semester SynopsisIgnou MCA 6th Semester Synopsis
Ignou MCA 6th Semester SynopsisHitesh Jangid
 
Fast and effective analysis of architecture diagrams
Fast and effective analysis of architecture diagrams Fast and effective analysis of architecture diagrams
Fast and effective analysis of architecture diagrams GlobalLogic Ukraine
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or realityAwantik Das
 
MuleSoft Manchester Meetup #2 slides 29th October 2019
MuleSoft Manchester Meetup #2 slides 29th October 2019MuleSoft Manchester Meetup #2 slides 29th October 2019
MuleSoft Manchester Meetup #2 slides 29th October 2019Ieva Navickaite
 
cloud computing.pptx fundamentals and deployment models
cloud computing.pptx fundamentals and deployment modelscloud computing.pptx fundamentals and deployment models
cloud computing.pptx fundamentals and deployment modelsDineshkumar Rangarajan
 
Apache Cassandra at Target - Cassandra Summit 2014
Apache Cassandra at Target - Cassandra Summit 2014Apache Cassandra at Target - Cassandra Summit 2014
Apache Cassandra at Target - Cassandra Summit 2014Dan Cundiff
 
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16AppDynamics
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Andrejs Prokopjevs
 

Similar to CISSP Week 13 (20)

Platform Security IRL: Busting Buzzwords & Building Better
Platform Security IRL:  Busting Buzzwords & Building BetterPlatform Security IRL:  Busting Buzzwords & Building Better
Platform Security IRL: Busting Buzzwords & Building Better
 
Mid-Term Presentation
Mid-Term Presentation Mid-Term Presentation
Mid-Term Presentation
 
Java Based RFID Attendance Management System Graduation Project Presentation
Java Based RFID Attendance Management System Graduation Project PresentationJava Based RFID Attendance Management System Graduation Project Presentation
Java Based RFID Attendance Management System Graduation Project Presentation
 
Liferay portals in real projects
Liferay portals  in real projectsLiferay portals  in real projects
Liferay portals in real projects
 
Kanth_testing_resume
Kanth_testing_resumeKanth_testing_resume
Kanth_testing_resume
 
20160422 Speedy Framework Enterprise Application Development Platform
20160422 Speedy Framework Enterprise Application Development Platform20160422 Speedy Framework Enterprise Application Development Platform
20160422 Speedy Framework Enterprise Application Development Platform
 
Path dependent-development (PyCon India)
Path dependent-development (PyCon India)Path dependent-development (PyCon India)
Path dependent-development (PyCon India)
 
LOW LEVEL DESIGN INSPECTION SECURE CODING
LOW LEVEL DESIGN INSPECTION SECURE CODINGLOW LEVEL DESIGN INSPECTION SECURE CODING
LOW LEVEL DESIGN INSPECTION SECURE CODING
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)
 
Ignou MCA 6th Semester Synopsis
Ignou MCA 6th Semester SynopsisIgnou MCA 6th Semester Synopsis
Ignou MCA 6th Semester Synopsis
 
Fast and effective analysis of architecture diagrams
Fast and effective analysis of architecture diagrams Fast and effective analysis of architecture diagrams
Fast and effective analysis of architecture diagrams
 
Chapter02-rev.pptx
Chapter02-rev.pptxChapter02-rev.pptx
Chapter02-rev.pptx
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or reality
 
MuleSoft Manchester Meetup #2 slides 29th October 2019
MuleSoft Manchester Meetup #2 slides 29th October 2019MuleSoft Manchester Meetup #2 slides 29th October 2019
MuleSoft Manchester Meetup #2 slides 29th October 2019
 
cloud computing.pptx fundamentals and deployment models
cloud computing.pptx fundamentals and deployment modelscloud computing.pptx fundamentals and deployment models
cloud computing.pptx fundamentals and deployment models
 
Apache Cassandra at Target - Cassandra Summit 2014
Apache Cassandra at Target - Cassandra Summit 2014Apache Cassandra at Target - Cassandra Summit 2014
Apache Cassandra at Target - Cassandra Summit 2014
 
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
 
NVReddy
NVReddyNVReddy
NVReddy
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
 

Recently uploaded

Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXMIRIAMSALINAS13
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonSteve Thomason
 
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdfINU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdfbu07226
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxShajedul Islam Pavel
 
Industrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training ReportIndustrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training ReportAvinash Rai
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsCol Mukteshwar Prasad
 
2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptx2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptxmansk2
 
How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleCeline George
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptSourabh Kumar
 
Advances in production technology of Grapes.pdf
Advances in production technology of Grapes.pdfAdvances in production technology of Grapes.pdf
Advances in production technology of Grapes.pdfDr. M. Kumaresan Hort.
 
NLC-2024-Orientation-for-RO-SDO (1).pptx
NLC-2024-Orientation-for-RO-SDO (1).pptxNLC-2024-Orientation-for-RO-SDO (1).pptx
NLC-2024-Orientation-for-RO-SDO (1).pptxssuserbdd3e8
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePedroFerreira53928
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxRaedMohamed3
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfVivekanand Anglo Vedic Academy
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...Nguyen Thanh Tu Collection
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chipsGeoBlogs
 
The Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational ResourcesThe Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational Resourcesaileywriter
 
Gyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxGyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxShibin Azad
 

Recently uploaded (20)

Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdfINU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
Industrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training ReportIndustrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training Report
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptx2024_Student Session 2_ Set Plan Preparation.pptx
2024_Student Session 2_ Set Plan Preparation.pptx
 
How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
 
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
 
Advances in production technology of Grapes.pdf
Advances in production technology of Grapes.pdfAdvances in production technology of Grapes.pdf
Advances in production technology of Grapes.pdf
 
NCERT Solutions Power Sharing Class 10 Notes pdf
NCERT Solutions Power Sharing Class 10 Notes pdfNCERT Solutions Power Sharing Class 10 Notes pdf
NCERT Solutions Power Sharing Class 10 Notes pdf
 
NLC-2024-Orientation-for-RO-SDO (1).pptx
NLC-2024-Orientation-for-RO-SDO (1).pptxNLC-2024-Orientation-for-RO-SDO (1).pptx
NLC-2024-Orientation-for-RO-SDO (1).pptx
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer Service
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdf
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
 
The Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational ResourcesThe Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational Resources
 
Gyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxGyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptx
 

CISSP Week 13

  • 1. Software Development Security CISSP Domain 4 Pages 632-698 Tim Jensen Lead Researcher StaridLabs
  • 2. Software Development Methodolgy ● How to plan, design, scope, develop, and document an application or addition to an application.
  • 3. Waterfall ● Slow – every phase is thoroughly planned and locked in before development beings. ● Developers work on one phase at a time, adhoc or concurrent tasks are generally not done. ● Better for security since code changes are thought out in advance and lack of concurrent tasks means your not 'mashing' code together. ● Once the design is approved there's no changing it if defects are found later. Once the product is released then a new cycle starts to plan, remediate, and add features.
  • 4. Models based on Waterfall
  • 5. Structured Programming Development ● Widely known ● Focuses on coherence, comprehensibility, freedom from faults, and security ● Requires defined processes and modular development ● Each phase requires review and approval
  • 6. Spiral Method ● Each phase goes through the waterfall design phase ● Adds a risk assessment to 'check' phase. The estimated cost to complete the phase and the schedule are updated each iteration Based on the risk assessment a 'go or no go' decision is made.
  • 8. Cleanroom ● Significant time is spent in the design phase. ● Theory is bugs won't get into software if it's properly written the first time. ● Less time spent on testing of this 'perfect code'
  • 10. Iterative Development ● Allows for refinement during the process ● Requires consistent change control – even during initial design ● Scope creep allowed ● Difficult to verify security due to constant changes
  • 11.
  • 12. Types of Iterative Development
  • 13. Prototyping ● Create a simplified version of the application and release it for review. Use the feedback to build a second, better version. ● Repeat process until users are satisfied ● Concept, design, implement, refine
  • 14. Modified Prototype Model (MPM) ● Ideal for web app development ● Basic functionality is rapidly deployed ● Maintenance phase beings after deployment ● Flexibility and speed is key
  • 15. Rapid Application Development ● Strict time limits are set for each phase ● Uses tools for rapid development ● Must watch for bad decisions that lead to poor design
  • 16. Joint Analysis Development (JAD) ● Work directly with users to develop working application ● End users are directly involved with development planning and testing
  • 17. Exploratory model ● System requirements are assumed. When further information comes in then the system is modified.
  • 18.
  • 20. Computer Aided Software Engineering (CASE) ● Uses tools and applications to rapidly develop and test functionality ● IDE, Test macros, fuzzers, Auto documentation functions, etc.
  • 21. Computer-based development ● Uses standardized building blocks to assemble an application (vs develop) ● IE: Dreamweaver over a text editor for building a website.
  • 23. Purpose of a database ● Central storage location ● saves disk space ● makes data more consistent
  • 24. DBMS components ● Database engine ● Hardware Platform ● Application Software ● Users
  • 25. Database Required Functions ● Transaction Persistence – The state of the database is the same after a transaction as it was prior. ● Fault tolerance and recovery – Data should remain in it's original state. ● Rollback recovery – Stripping transactions to a known good state ● Shadow recovery – Installing a known good state and adding transactions from a transaction log
  • 26. Required Functions 2 ● Sharing by multiple users ● Data should be accessible to multiple users without locking or endagering the data ● Security Controls ● Access controls, integrity checking, etc
  • 27. Relational Databases ● Use Primary keys and foreign keys to break data into tables of like data, allowing for table data to be linked. - Used to speed up queries of large sets of data
  • 28. Structured Query Language (SQL) ● Allows for querying and displaying of data from a database ● SQL compliant databases have: ● Schemas – Describes structure of the database ● Tables – Columns and rows of data ● Views – Custom joins on data so multiple tables can be seen as one record
  • 29. Database interface languages ● ODBC – Open Database Connectivity ● JDBC – Java Database Connectivity ● XML – Extensible Markup Language ● OLE DB – Object Linking and Embedding Database ● ADO – ActiveX Data Objects
  • 30. ODBC ● Very common ● Username and password are stored in plaintext ● Call and return data are sent cleartext over the network ● Access verification is rudimentary ● ODBC drivers can elevate system access – applications must be trusted
  • 31. JDBC ● Need to specify user authentication, control user access, and audit user functions. None of this is enabled by default.
  • 32. XML ● Provides consistent strucutre to data ● Easy to transfer data between languages, operating systems, etc. ● **Rant on schemas
  • 33. OLE DB ● Microsoft technology – not usable anywhere else. ● Allows documents or files to be embedded inside others. Example: A word document can be entirely embedded in an excel spreadsheet
  • 34. Metadata ● Data about data – IE: headers on IP packets showing where the data came from and where it's going. ● Allows unrelated data to be correlated
  • 35. Database threats ● Aggregation – combining nonsensitive data from separate sources to create sensitive information ● Bypass attacks – Users bypasses front end controls to access information ● Compromising database views ● Concurrency – Running processes that use old data, updates that are inconsistent, deadlocks ● Data Contamination – Data corruption ● Deadlocking – To users try to access the same information and both are denied
  • 36. Threats Continued ● Denial of Service – Table locks, intensive processing, poor queries. ● Improper modification of information – Intensional or accidental modification of information which damages the integrity ● Inference – Users may be able to infer confidential information from available records ● Interception of data – Data may be intercepted between client and server
  • 37. More Threats ● Query Attacks – Querying the database in a way that gains a user more information than if they used the trusted frontend ● Server Access ● Website security ● Unauthorized Access
  • 38. Lock Controls ● Atomicity – A transaction is either fully committed or rolled back. No partial updates ● Consistency – Data must be validated before the transaction is allowed ● Isolation – Transaction is isolated from all other transactions until complete ● Durability – Completed transactions are permanent and will survive system/media failure (IE not stored in memory which is wiped if the power goes out – rather is stored on disk)
  • 39. Web Application Threats ● Injection ● Broken Authentication and Session Management ● Cross-Site Scripting (XSS) ● Insecure Direct Object References ● Security Misconfiguration ● Sensitive Data Exposure ● Missing Function Level Access Control ● Cross-Site Request Forgery (CSRF) ● Using Components with Known Vulnerabilities ● Unvalidated Redirects and Forwards
  • 40. Object Oriented Programming (OOP) ● Object oriented programming is ultimately writing applications in small blocks and connecting the blocks to create a functional system. ● This allows for code re-use, and security and portability of smiliar code. IE: All authentication code can be in one class and inherit permissions as a set.
  • 41. OOP Things to know ● Encapsulation (Data Hiding) ● A class defines only the data I needs to be concerned with. The code cannot access other non-related data ● Good for security
  • 42. Inheritance ● Subclasses can inherit properties of it's main class. Objects in the class can inherit from like objects
  • 43. Polymorphism ● Objects may be processed differently depending on their data type. Instantiating an object from a prior object ensures the new object inherits attributes and methods from the original
  • 44. Polyinstantiation ● Specific objects instantiated form a higher class may vary their behavior depending upon the data they contain ● Basically allows data classification programatically so data leakage/inference is minimized.
  • 45. OOP Security ● No object should be able to access another object's internal data. Data should be passed in and out and while inside the object should be protected from external influence.
  • 46. Class Inheritance ● Classes are designed to inherit code from other classes. This is a complex processes which in larger applications can cause security breaches for object access. ● Example: If there's administrator functions that require login credentials and someone can modify the code to allow access to the admin functions without credentials, then this would violate the access control model of the application.
  • 47. What's so complex about class inheritance?
  • 48. CORBA ● Jem already gave a mini talk on CORBA. If anyone has further questions related to CORBA security we can have Jem address them since I've never used CORBA.