IISYG Application Security

5 downloads 56102 Views 2MB Size Report
Validation libraries, Filter, HAG, Whitelists, code analysis, javascript/html ... (BOM, tags), verification. Application Attack Landscape OWASP Top 10 - mitigation ...
Reversing into the future - perspectives on •

Application Security

• • • •

[email protected] SMIEEE, MACM MComSoc!

The Attack Surface! Security Standards! Academic Research! Real-world Solutions! Future Internet Architecture

Problem Space • • • • • • •

Too many standards! Legacy and Silo Architecture! Pundit/Vendor led product set ! Poor strategy, technology, leadership! Old Internet Protocols! Internet of Everything! Out-of-date skillsets

Old and New Ideas • • • • • • •

Impact: • • • • • •

Significant Increase in Security! Real-time Everything! Seamless Data! Everything just works! Stronger authentication (biometric)! New skillsets required!

Business Process Modelling! CaaS: Configuration As A Service! Capabilities! New lanaguages, techniques and applications! HAG: Software Firewalls, bpfjit! MMOONs: Massive Message Orientated Overlay Networks ! Content orientated internet Timeline

BPMN Capabilities CoLoR

HAG

MMOONs 2015

2018

2021

2024

2027

2030

Attack Surface! "Distrust and caution are the parents of security." ! Benjamin Franklin

Application Attack Landscape OWASP Top 10 - mitigation ❖

A1 Injection! ❖



A2 Broken Authentication and Session Management! ❖



Validation libraries, Filter, HAG, Whitelists, code analysis, javascript/html escaping/disablement, closures (function references with local state).!

A4 Insecure Direct Object References! ❖



encryption, session timeout, invalidation on logout, rotation, randomisation!

A3 Cross-Site Scripting (XSS)! ❖



parameterised API, HAG, whitelist, escaping, filters (signatures, regex)!

Obfuscation/access control/per session references!

A5 Security Misconfiguration! ❖

config service, two way encryption, version management (BOM, tags), verification!

Application Attack Landscape OWASP Top 10 - mitigation ❖

A6 Sensitive Data Exposure! ❖



A7 Missing Function Level Access Control! ❖



Hidden token!

A9 Using Components with Known Vulnerabilities! ❖



entitlements, whitelists, authentication, automated active config checks - lifecycle: audit, revoke and grant.!

A8 Cross-Site Request Forgery (CSRF)! ❖



encryption, HAG, access logging and alerting, data management, ephemeral keys!

CVE, analytics (Skybox), development practises, code analysis, BOM!

A10 Unvalidated Redirects and Forwards! ❖

Whitelist, avoid altogether, HAG

Analysis and Discussion ❖

Attacks and flaws causes!



Failure of crypto (MITM, openssl)!



Monolithic Software Engineering!



Lack of OS Support!



Your thoughts?

❖ ❖



The Standards Bodies! "The nice thing about standards is that you have so many to choose from."! Andrew S Tanenbaum

Security Standards ❖

ISO2700*, PCI-DSS, COBIT, BITS! ❖

Ontological frameworks designed to be tailored to your organisation then certified for compliance by external companies.!



Paper frameworks - lack: operational integration, SLA monitoring, adaptive analytics, KPIs, dynamic threat discovery, !



BSIMM - follow the herd - what every one else does - allegedly[2]!



FFIEC - Federal Financial Institution Examination Council[3]! ❖

Another American FIST organisation - for home lending.!



"helping to make banks less vulnerable and more resilient to cyber-attacks" - top priority!



SAFECODE - developer education!



Institute of Internal Auditor's GTAG 8 ! ❖



Controls and static monitoring. !

All of the above have or no connection to the developer community

Analysis and Discussion ❖

Security Frameworks and Standards!



Aid to problem definition understanding!



2D, heirarchical!



Static!



Ignore complexity!



Categorisation: multiple categories, limited number, trite analogies!



Lack feedback mechanisms!



Dissemination and updates!



Tickbox audit!



Disconnect from business processes, KPIs!



Thoughts?

New Ideas ❖

The demise of MS Office - let's use proper tools!



Internet generation Y!



Business Process Modelling Notation!



Process engines (Bonitasoft) - model, deploy and monitor!



Visualisation

Academia! "Academics have 98% of the time and 2% of the data - in the real-world it's the other way round"! Professor Duncan Shaw, Warwick University, 2008

The Academic Landscape - The Good and Bad ❖



Abstract Non-Interference! ❖

considers attackers as data-flow analysers, whose task is to reveal properties of confidential resources by analysing public ones!



The reality is state and organised crime-sponsored hacking using intuition, inference and lateral analytics. !

Automated Vulnerability Testing! ❖



XSS and SQLI attacks not found by many commercial tools [5]!

Applying OR, Sociology and Ecology Techniques ! ❖

A greater socio-technical focus necessary [6]!



Monocultures are dangerous [7]

Application Security Analytics ❖



Fuzzing Attacks! ❖

subject app to random data: mutation or generation-based!



Coverage is not defined!



Doesn't mitigate parameter manipulation attacks. Major failures discovered [1]!

DEA - Data Envelopment Analysis [8]! ❖

OR technique used to measure relative performance of business units!



Applied to IT security solutions to discover best practices

Analysis and Discussion ❖

Significant broad research activity!



Reputation driven, siloed, variability!



Lack of data a key problem!



Often highlight problems, but provide few solutions!



Some excellent innovation (Capsicum e.g.)!



Weak links with industry!



Framework and abstract model thinking!



Thoughts?

Ideas ❖

Solve the data issue whilst maintaining privacy!



Stronger collaboration with industry players!



Focus on solutions!



Better research!



Industry peer review!



Thoughts?

The Real World! "The new garbage collector is an arena-based, quad-color incremental, generational, non-copying, high-speed, cacheoptimised garbage collector."! Mike Pall, LuaJIT.org

Application Configuration ❖

Static Configuration is a very bad idea! ❖

Developer initiated, support controlled!



Badly documented, rarely versioned!



Separation of duties breaks change lifecycle!



Syntax errors, duplication, bloat!



Rarely in the integration test lifecycle!



Hand crafted for particular instances!



Wrong version picked up on startup!



No dynamic capability

CaaS: Configuration as a Service ❖

App talks to a config servers over secure channels !



Encrypted session initiated from servers to app!



App certifies server with server pool (quorum, n of m)!



Servers certifies the app (fingerprint, checksum)!



Configuration pulled from server n!



Verification program from m!



Config checked and audited!



Connection maintained!



Config or auth can be changed in realtime!



Usage data collected - service level established

Capabilities ❖

Unforgeable tokens of authority !



Implemented in the OS!



Capsicum [10] now built into freeBSD (augmented file descriptors)!



Greater security than hardware alone!



Compartmentalisation of Unix code with minimal alteration!



Create logical applications formed of many parts.!



Simple and minimalist API!



CHERI [11]: Capabilities to replace pointers (base, length and acl)!



Byte-granularity memory protection!



Bittau's Wedge and Crowbar [12] - auto-compartmentalisation tool!



Performance

High Assurance Guard - Software Firewalls ❖

CloudFlare ! ❖

XSS, SQL Injection, bot crawlers, email harvesters and DOS mitigation!



WAF uses LuaJIT regex engine ! ❖

20,000 complex regexes/second !



New attacks on their network recognised instantaneously!



Browser protection, visitor reputation, whitelist!



Delivers the content you want, rejects the rest!



Collective intelligence!



Instant VPN (ssl tunnel)!



Threat Analytics Dashboard

Massive Message-Orientated Overlay Networks ❖

In the 1970's The US Naval Fleet Supply Line automated by the IATA protocol on message switch networks.!



PubNub is pretty the same technology in software!



Device agnostic, massively scalable, multiple APIs!



Playback and storage, push, streaming!



Presence: joining/leaving, occupancy!



Pub/Sub, broadcast, unicast, multiplex!



Fine-grained Access Control, encryption, certified data centers

Analysis and Discussion ❖

The ascii protocol driven universe (FIX, JSON, node.js)!



From client/server to BYOD and beyond!



Cloud of Things, Internet of Everything!



Intolerable threat enviroment!



OS security features enhance application security!



Sophistication of design required!



The weak hacked off the internet!



Thoughts?

Future Internet! "Ending is better than mending"! Aldous Huxley

Future Internet[9] ❖

Information Centric - not Host Centric! ❖

Location and application independent data!



Separate Inter and intra domain protocols!



Efficient Support for Mobility - seamless data migration!



Efficient Support for Multi-Homing! ❖



Enhanced Security! ❖



control incoming traffic!

Enhanced Scalability! ❖



connection to multiple networks!

efficient routing!

Deployability: minimum cost and change

Conclusion! ! "It's more fun to arrive at a conclusion than justify it"! Malcolm Forbes!

References 1 Scanning of Real-world Web Applications for ParameterTampering Vulnerabilities. Fung et al.! 2 The Building Security In Maturity Model http://www.bsimm.com/! 3 The Federal Financial Institutions Examination Council http://www.ffiec.gov/infosystem.htm! 4 Safecode http://safecode.org/! 5 State of the Art: Automated Black-Box Web Application Vulnerability Testing http://tinyurl.com/kuvcy93! 6 Towards a Holistic Understanding of Security Process http://tinyurl.com/pvflgcz! 7 Measuring Software Diversity, with Applications to Security http://xxx.lanl.gov/pdf/1310.3307.pdf! 8 DEA APPLIED TO THE SECURITY OF IT BASED INFORMATION S YSTEMS http://tinyurl.com/plvhvcy! 9 Color: An Information-Centric Internet Architecture for Innovations http://tinyurl.com/nt3e32w! 10 The CHERI capability model: Revisiting RISC in an age of risk http://tinyurl.com/krvc5ul! 11 Capsicum: practical capabilities for UNIX http://tinyurl.com/qxdqvse! 12 Bittau's Wedge http://tinyurl.com/lvntbmy!