SlideShare uma empresa Scribd logo
1 de 49
Baixar para ler offline
ColdFusion Security and
                         Risk Management
                         Justin Mclean
                         Email: justin@classsoftware.com
                         Twitter: @justinmclean
                         Blog: http://blog.classsoftware.com




Tuesday, 27 April 2010
Who am I?
                     • Director of Class Software for 10 years
                     • Developing and creating web applications for 15
                         years
                     • Programming for 25 years
                     • Adobe Community Professional
                     • Adobe certified developer and trainer in
                         ColdFusion and Flex
                     • Based in Sydney Australia




Tuesday, 27 April 2010
Security
                     •   No system is 100% secure
                     •   Security takes time and effort and can be costly
                     •   How much security is actually needed?
                     •   Is a security feature actually effective?




Tuesday, 27 April 2010
Risk Assessment
                         Risk assessment is a tool used to balance
                         business objectives and security
                         requirements in order to achieve cost
                         effective security measures.




Tuesday, 27 April 2010
Process
                     1. Identify assets
                     2. Identify and quantify the possible threats
                     3. Determine the consequence of each threat
                     4. Evaluate the current risk
                     5. Decide acceptable level of risk
                     6. Treat each risk




Tuesday, 27 April 2010
Frequency
                     • This is not a once off process
                     • Repeat when:
                       • System is in place
                       • Changes are made to the system or assets
                       • Made aware of new threats




Tuesday, 27 April 2010
Identify Assets
                     • Create list of assets
                       • Hardware
                       • Availability of service
                       • Integrity of information
                       • Reputation of system and/or organisation
                       • Staff




Tuesday, 27 April 2010
Identify Threats
                     •   Create a list of threats
                     •   Be creative include unlikely threats
                     •   Tendency to ignore obvious threats
                     •   Careful of preconceived attitudes




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
How likely is each threat?




                                                  gh
                                     e
                                   w
                                 ibl




                                                me
                                                 m
                                Lo




                                               Hi
                             glig




                                             diu




                                            tre
                                            gh
                            ry




                                            ry
                            w
                         Ne




                                         Me
                         Lo




                                         Ex
                         Ve




                                         Ve
                                         Hi
                          Occurs coupleevery times asix5 years
                           OccursOccurstime six months
                            OccursUnlikelyof every year
                               Occurs once times a months
                               Occurs everyoccur month
                                  a couple to month
                                    multiple
                              Occurs multipletimes in day




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Consequence of each threat?



                                         t
                                      an



                                       t

                                      g
                                 can

                                 gin
                                 i fic




                                us
                                r




                             ave
                             ma
                            nifi
                             ign




                            rio
                            no


                         Da
                         Ins




                         Gr
                         Sig
                         Mi




                         Se
                         Serious.No extra effort outageSystem of
                         Few people notice. Small effortor loss
                           Loss of harm. compromised. repair.
                            SomeExtend Some effort to to repair
                            Completely system to repairMajor
                                   confidence/reputation.
                              permanently closed or offline.
                                      effort to repair.
                                         customers.




Tuesday, 27 April 2010
Risk
                     • Risk is a combination of frequency and
                         consequence
                     • The more likely a threat will occur increases risk
                     • The more serious a threat increases risk




Tuesday, 27 April 2010
Risk
                                                               Consequence
                                       Insignificant   Minor    Significant   Damaging    Serious    Grave

                          Negligible       Nil         Nil        Nil          Nil        Nil        Nil

                          Very Low         Nil         Low       Low          Low       Medium     Medium

                               Low         Nil         Low      Medium      Medium       High       High
                 Threat




                           Medium          Nil         Low      Medium        High       High      Critical

                               High        Nil        Medium     High         High      Critical   Extreme

                          Very High        Nil        Medium     High        Critical   Extreme    Extreme

                           Extreme         Nil        Medium     High        Critical   Extreme    Extreme




Tuesday, 27 April 2010
Acceptable Risk
                     • Set level of acceptable risk
                     • Assign priorities for each threat based on
                         acceptable risk and risk of threat




Tuesday, 27 April 2010
Priorities
                     •   A required risk > actual risk + 1 level
                     •   B required risk = actual +1 level
                     •   C required risk = actual risk
                     •   D required risk < actual risk




Tuesday, 27 April 2010
Treatments
                     •   Minimisation of harm
                     •   Change of service or system specifications
                     •   Addition of security measures
                     •   Reduction of security measures
                     •   Transference of risk
                     •   Acceptance of risk




Tuesday, 27 April 2010
Effort and Cost
                     • May be many ways to treat a single threat
                     • Amount of effort or cost may decide which
                         treatment chosen




Tuesday, 27 April 2010
Election System
                         Student election system for the
                         University of Technology Sydney




Tuesday, 27 April 2010
Student Election System

Tuesday, 27 April 2010
Server Configuration
                     • Run with minimal down time
                     • Perform well under load
                     • Limited external access to server




Tuesday, 27 April 2010
Server Treatment
                     • Staging/production system
                     • Not a shared server
                     • Standalone separate machines for database and
                         CF server
                     • No access to production server
                     • Code reviewed by external agency




Tuesday, 27 April 2010
Network Issues
                     • Occasional network outages
                     • Occasional slow access from outside




Tuesday, 27 April 2010
Network Treatment
                     • Ability to change the end date after an election
                         has started
                     • Date could only be extended not reduced




Tuesday, 27 April 2010
SQL Security Issues
                     • SQL injection attacks
                     • Sensitivity of data
                     • Trust and integrity of election results




Tuesday, 27 April 2010
SQL Security Treatment
                     • Multiple data sources
                     • Multiple database users
                     • Restrict SQL actions. No deletes and almost no
                         updates few inserts and mainly selects.
                     • Table level permissions




Tuesday, 27 April 2010
Datasource Options

Tuesday, 27 April 2010
Multiple Database Users
                     • Table level permissions
                     • SQL operation permissions




Tuesday, 27 April 2010
SQL Permissions
                     • Deny all to all users to all tables
                     • Add permissions for each SQL operation as
                         needed
                     • Don’t be tempted to give admin user all
                         permissions




Tuesday, 27 April 2010
Deny All
                         deny all on elections to electionvoter,
                         electionadmin, electionlogin
                         deny all on candidates to electionvoter,
                         electionadmin, electionlogin;
                         deny all on rolls to electionvoter, electionadmin,
                         electionlogin;
                         deny all on ballots to electionvoter,
                         electionadmin, electionlogin;




Tuesday, 27 April 2010
Grant Access
                         grant select on roll to electionvoter,
                         electionadmin;
                         grant update on roll to electionvoter;
                         grant insert on roll to electionadmin;




Tuesday, 27 April 2010
Login Issues
                     • Dictionary attacks
                     • Timing attacks
                     • Storing passwords




Tuesday, 27 April 2010
Login Treatment
                     • Account lock out if password wrong x times
                     • Random time delay




Tuesday, 27 April 2010
Java Sleep
                  <!--- delay is to hinder timing style attacks --->
                <cfset thread=createObject("java","java.lang.Thread")>
                <cfset thread.sleep(300 + int(rand()*21)*10)>




Tuesday, 27 April 2010
Code Modification
                     • Pages code not modified
                     • Only run trusted pages




Tuesday, 27 April 2010
Code Modification Treatment
                     • Finger print each page via MD5
                     • Check finger print when page is run via
                         Application onRequest method




Tuesday, 27 April 2010
onRequest
                        <!--- read the cfm file --->
                     <cftry>
                         <cffile action="read" variable="pagecontents"
                file="#CGI.PATH_TRANSLATED#">
                         .......
                      </cftry>

                      <!--- get page from database --->
                      <cfquery name="dbpage" datasource="#request.datasource#">
                         select page, hash from pages
                         where page = <cfqueryparam value="#hash(listlast(arguments.page,'/'))
                #" cfsqltype="cf_sql_varchar">
                      </cfquery>

                         <!--- check if page exists and page hash is correct --->
                         <cfif dbpage.recordcount is 1 and hash(pagecontents) is dbpage.hash>
                             <cfinclude template="#arguments.page#">
                         <cfelse>
                            <cfinclude template="./elections/security.cfm">
                         </cfif>




Tuesday, 27 April 2010
Limiting Information
                     •   Assume someone will break into the system
                     •   What information can they obtain?
                     •   What could they modify?
                     •   Limit what they can see
                     •   Minimise damage they can do
                     •   Log everything




Tuesday, 27 April 2010
Why do this?
                     • Know that you’re spent you budget efficiently
                     • Confidence that your system is secure as you
                         need it to be
                     • An understanding of the risks in your system
                     • Minimal or no damage occurs if the worse does
                         happen




Tuesday, 27 April 2010
Questions?
                         Ask now, see me after the session or email me at
                         justin@classsoftware.com




Tuesday, 27 April 2010

Mais conteúdo relacionado

Último

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

ColdFusion Security and Risk Management

  • 1. ColdFusion Security and Risk Management Justin Mclean Email: justin@classsoftware.com Twitter: @justinmclean Blog: http://blog.classsoftware.com Tuesday, 27 April 2010
  • 2. Who am I? • Director of Class Software for 10 years • Developing and creating web applications for 15 years • Programming for 25 years • Adobe Community Professional • Adobe certified developer and trainer in ColdFusion and Flex • Based in Sydney Australia Tuesday, 27 April 2010
  • 3. Security • No system is 100% secure • Security takes time and effort and can be costly • How much security is actually needed? • Is a security feature actually effective? Tuesday, 27 April 2010
  • 4. Risk Assessment Risk assessment is a tool used to balance business objectives and security requirements in order to achieve cost effective security measures. Tuesday, 27 April 2010
  • 5. Process 1. Identify assets 2. Identify and quantify the possible threats 3. Determine the consequence of each threat 4. Evaluate the current risk 5. Decide acceptable level of risk 6. Treat each risk Tuesday, 27 April 2010
  • 6. Frequency • This is not a once off process • Repeat when: • System is in place • Changes are made to the system or assets • Made aware of new threats Tuesday, 27 April 2010
  • 7. Identify Assets • Create list of assets • Hardware • Availability of service • Integrity of information • Reputation of system and/or organisation • Staff Tuesday, 27 April 2010
  • 8. Identify Threats • Create a list of threats • Be creative include unlikely threats • Tendency to ignore obvious threats • Careful of preconceived attitudes Tuesday, 27 April 2010
  • 9. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 10. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 11. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 12. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 13. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 14. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 15. How likely is each threat? gh e w ibl me m Lo Hi glig diu tre gh ry ry w Ne Me Lo Ex Ve Ve Hi Occurs coupleevery times asix5 years OccursOccurstime six months OccursUnlikelyof every year Occurs once times a months Occurs everyoccur month a couple to month multiple Occurs multipletimes in day Tuesday, 27 April 2010
  • 16. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 17. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 18. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 19. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 20. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 21. Consequence of each threat? t an t g can gin i fic us r ave ma nifi ign rio no Da Ins Gr Sig Mi Se Serious.No extra effort outageSystem of Few people notice. Small effortor loss Loss of harm. compromised. repair. SomeExtend Some effort to to repair Completely system to repairMajor confidence/reputation. permanently closed or offline. effort to repair. customers. Tuesday, 27 April 2010
  • 22. Risk • Risk is a combination of frequency and consequence • The more likely a threat will occur increases risk • The more serious a threat increases risk Tuesday, 27 April 2010
  • 23. Risk Consequence Insignificant Minor Significant Damaging Serious Grave Negligible Nil Nil Nil Nil Nil Nil Very Low Nil Low Low Low Medium Medium Low Nil Low Medium Medium High High Threat Medium Nil Low Medium High High Critical High Nil Medium High High Critical Extreme Very High Nil Medium High Critical Extreme Extreme Extreme Nil Medium High Critical Extreme Extreme Tuesday, 27 April 2010
  • 24. Acceptable Risk • Set level of acceptable risk • Assign priorities for each threat based on acceptable risk and risk of threat Tuesday, 27 April 2010
  • 25. Priorities • A required risk > actual risk + 1 level • B required risk = actual +1 level • C required risk = actual risk • D required risk < actual risk Tuesday, 27 April 2010
  • 26. Treatments • Minimisation of harm • Change of service or system specifications • Addition of security measures • Reduction of security measures • Transference of risk • Acceptance of risk Tuesday, 27 April 2010
  • 27. Effort and Cost • May be many ways to treat a single threat • Amount of effort or cost may decide which treatment chosen Tuesday, 27 April 2010
  • 28. Election System Student election system for the University of Technology Sydney Tuesday, 27 April 2010
  • 30. Server Configuration • Run with minimal down time • Perform well under load • Limited external access to server Tuesday, 27 April 2010
  • 31. Server Treatment • Staging/production system • Not a shared server • Standalone separate machines for database and CF server • No access to production server • Code reviewed by external agency Tuesday, 27 April 2010
  • 32. Network Issues • Occasional network outages • Occasional slow access from outside Tuesday, 27 April 2010
  • 33. Network Treatment • Ability to change the end date after an election has started • Date could only be extended not reduced Tuesday, 27 April 2010
  • 34. SQL Security Issues • SQL injection attacks • Sensitivity of data • Trust and integrity of election results Tuesday, 27 April 2010
  • 35. SQL Security Treatment • Multiple data sources • Multiple database users • Restrict SQL actions. No deletes and almost no updates few inserts and mainly selects. • Table level permissions Tuesday, 27 April 2010
  • 37. Multiple Database Users • Table level permissions • SQL operation permissions Tuesday, 27 April 2010
  • 38. SQL Permissions • Deny all to all users to all tables • Add permissions for each SQL operation as needed • Don’t be tempted to give admin user all permissions Tuesday, 27 April 2010
  • 39. Deny All deny all on elections to electionvoter, electionadmin, electionlogin deny all on candidates to electionvoter, electionadmin, electionlogin; deny all on rolls to electionvoter, electionadmin, electionlogin; deny all on ballots to electionvoter, electionadmin, electionlogin; Tuesday, 27 April 2010
  • 40. Grant Access grant select on roll to electionvoter, electionadmin; grant update on roll to electionvoter; grant insert on roll to electionadmin; Tuesday, 27 April 2010
  • 41. Login Issues • Dictionary attacks • Timing attacks • Storing passwords Tuesday, 27 April 2010
  • 42. Login Treatment • Account lock out if password wrong x times • Random time delay Tuesday, 27 April 2010
  • 43. Java Sleep <!--- delay is to hinder timing style attacks ---> <cfset thread=createObject("java","java.lang.Thread")> <cfset thread.sleep(300 + int(rand()*21)*10)> Tuesday, 27 April 2010
  • 44. Code Modification • Pages code not modified • Only run trusted pages Tuesday, 27 April 2010
  • 45. Code Modification Treatment • Finger print each page via MD5 • Check finger print when page is run via Application onRequest method Tuesday, 27 April 2010
  • 46. onRequest <!--- read the cfm file ---> <cftry> <cffile action="read" variable="pagecontents" file="#CGI.PATH_TRANSLATED#"> ....... </cftry> <!--- get page from database ---> <cfquery name="dbpage" datasource="#request.datasource#"> select page, hash from pages where page = <cfqueryparam value="#hash(listlast(arguments.page,'/')) #" cfsqltype="cf_sql_varchar"> </cfquery> <!--- check if page exists and page hash is correct ---> <cfif dbpage.recordcount is 1 and hash(pagecontents) is dbpage.hash> <cfinclude template="#arguments.page#"> <cfelse> <cfinclude template="./elections/security.cfm"> </cfif> Tuesday, 27 April 2010
  • 47. Limiting Information • Assume someone will break into the system • What information can they obtain? • What could they modify? • Limit what they can see • Minimise damage they can do • Log everything Tuesday, 27 April 2010
  • 48. Why do this? • Know that you’re spent you budget efficiently • Confidence that your system is secure as you need it to be • An understanding of the risks in your system • Minimal or no damage occurs if the worse does happen Tuesday, 27 April 2010
  • 49. Questions? Ask now, see me after the session or email me at justin@classsoftware.com Tuesday, 27 April 2010