SlideShare uma empresa Scribd logo
1 de 29
Big Security for Big Data 1
Big Security for Big Data
Ari Elias-Bachrach
Defensium llc
March 2014
Big Security for Big Data 2
About Me
Ari Elias-Bachrach
●
Application Security nerd, OWASP
fanboy
●
Help Development understand security
●
Help security understand development
●
Often get calls from developers that start
with “help!”
Big Security for Big Data 3
Your Data Is Important
Big Security for Big Data 4
This Talk Will Cover Some Important Security Controls
Beyond SQL Injection
Cross-Site Scripting
Access Control
<script>
//code...
</script>
Big Security for Big Data 5
For Years People Have Been Warned About SQL Injection
String id = Request.QueryString("SomeID")
string sql = "SELECT Product FROM myTable WHERE id
= '" + id + "'";
5'; drop table
myTable; #
SELECT Product FROM
myTable WHERE id = '5';
drop table myTable; #'
Big Security for Big Data 6
The Solution Is To Use Prepared Statements
String id = Request.QueryString("SomeID")
string sql = "SELECT Product FROM myTable WHERE id
= ?";
Statement = connection.prepareStatement(sql)
Statement.setString(1, id)
Big Security for Big Data 7
Many New RDBMS' Do Not Use SQL
Mongo does not use SQL, so it's not vulnerable to SQL
Injection.... right?
Big Security for Big Data 8
Many New RDBMS' Do Not Use SQL
The fundamental problem that led to SQL injection is the
lack of separation between commands and variables
Variables Command
Text Instructions
Not parsed Parsed
Big Security for Big Data 9
Mongo Can Still be Vulnerable With PHP
$collection->find(array(
"username" => $_GET['username'],
"passwd" => $_GET['passwd']
));
username=user&passwd[$ne]=foo
Big Security for Big Data 10
Mongo Can Still be Vulnerable With PHP
$collection->find(array(
"username" => user,
"passwd" => array("$ne" => foo)
));
username=user&passwd[$ne]=foo
Big Security for Big Data 11
Separate Variables and Commands
Return to the fundamental rule:
Separate Variables and Commands
Strong typing can be one way to do this
$collection->find(array(
"username" => (string)$_GET['username'],
"passwd" => (string)$_GET['passwd']
));
Big Security for Big Data 12
Separate Variables and Commands
Whatever system you may be working on in the
future, remember this law:
Separate Variables and Commands
Big Security for Big Data 13
Separate Variables and Commands
--http://us.php.net/manual/en/mongodb.execute.php
Big Security for Big Data 14
Separate Variables and Commands
Big Security for Big Data 15
Cross-Site Scripting (XSS) Occurs When An Attacker Can
Execute Code on Your User's Systems
Attacker can make your users execute arbitrary
code as if it was sent from your website
Client side attack <script>
//code...
</script>
Big Security for Big Data 16
Cross-Site Scripting (XSS) Occurs When An Attacker Can
Execute Code on Your User's Systems
Bob
Hi Bob
Hi Request.QueryString("name")
Big Security for Big Data 17
Cross-Site Scripting (XSS) Occurs When An Attacker Can
Execute Code on Your User's Systems
name=<script>...</script>
Hi <script>...</script>
Http://server/page.jsp?name=<script>...</script>
This code is now executed in the domain of the
website that “sent” it, and it can access that page's
DOM
Big Security for Big Data 18
Cross-Site Scripting (XSS) Occurs When An Attacker Can
Execute Code on Your User's Systems
So What?
●
Change page contents
●
Steal Cookies
●
Redirect to another page
●
Change form actions
Big Security for Big Data 19
The Solution is To Properly Encode All Untrusted Outputs
< &lt;
> &gt;
& &amp;
' &#x27;
“ &quot;
/ &#x2F;
Big Security for Big Data 20
The Solution is To Properly Encode All Untrusted Outputs
<body>
Hi
&lt;script&gt;alert(document.
cookie);&lt;&#x2F;script&gt;
</body></html>
http://server/page.asp?name=<script>alert(document.cookie)</script>
Big Security for Big Data 21
Encoding is Context Dependent
<a href=”x” attribute=UNTRUSTED DATA>
< &lt;
' &#x27;
> &gt;
“ &quot;
& &amp;
/ &#x2F;
Can you execute code here
without using the six characters
encoded as part of HTML
encoding?
foo onmouseover=alert(document.cookie)
Big Security for Big Data 22
Encoding is Context Dependent
Different contexts call for different encoding rules
» <div>here</div> HTML context
» <tag attr=”here”> Attribute context
» <script>x='here'</script> JavaScript context
» <span style="property : here CSS context
» <a href=”http://here”> URL context
Big Security for Big Data 23
Encoding is Context Dependent
Different contexts call for different encoding rules
» <div>here</div> HTML context
» <tag attr=”here”> Attribute context
» <script>x='here'</script> JavaScript context
» <span style="property : here CSS context
» <a href=”http://here”> URL context
http://tinyurl.com/xss-prevent
Big Security for Big Data 24
A Good Encoding Library Can Save us A Lot of Time
Java:
Java Encoders Project
ESAPI
.net:
Microsoft Web Protection Library
PHP:
Reform
Ruby:
On By Default
Big Security for Big Data 25
Access Control Problems Usually Stem From Permissions
Creep
Every time a user needs to do something else, they ask for
(and get) more permissions
Big Security for Big Data 26
Use Role Based Access Control To Prevent Permission Creep
Bob
Group 1
Group 2
Big Security for Big Data 27
Use Role Based Access Control To Prevent Permission Creep
Bob
Group 1
Group 2
Big Security for Big Data 28
Conclusion
Beyond SQL Injection
Cross-Site Scripting
Role Based Access Control
<script>
//code...
</script>
Big Security for Big Data 29
Big Security for Big Data
Ari Elias-Bachrach
ari@defensium.com Defensium llc
@angelofsecurity http://www.defensium.com

Mais conteúdo relacionado

Mais procurados

Information Security in Big Data : Privacy and Data Mining
Information Security in Big Data : Privacy and Data MiningInformation Security in Big Data : Privacy and Data Mining
Information Security in Big Data : Privacy and Data Miningwanani181
 
Big Data, Security Intelligence, (And Why I Hate This Title)
Big Data, Security Intelligence, (And Why I Hate This Title) Big Data, Security Intelligence, (And Why I Hate This Title)
Big Data, Security Intelligence, (And Why I Hate This Title) Coastal Pet Products, Inc.
 
The REAL Impact of Big Data on Privacy
The REAL Impact of Big Data on PrivacyThe REAL Impact of Big Data on Privacy
The REAL Impact of Big Data on PrivacyClaudiu Popa
 
Emerging application and data protection for multi cloud
Emerging application and data protection for multi cloudEmerging application and data protection for multi cloud
Emerging application and data protection for multi cloudUlf Mattsson
 
GDPR solutions (JS Event 28/2/18) | Greenlight Computers
GDPR solutions (JS Event 28/2/18) | Greenlight Computers GDPR solutions (JS Event 28/2/18) | Greenlight Computers
GDPR solutions (JS Event 28/2/18) | Greenlight Computers Gary Dodson
 
How Network Data Loss Prevention is Implemented
How Network Data Loss Prevention is ImplementedHow Network Data Loss Prevention is Implemented
How Network Data Loss Prevention is ImplementedJerry Paul Acosta
 
Privacy by Design as a system design strategy - EIC 2019
Privacy by Design as a system design strategy - EIC 2019 Privacy by Design as a system design strategy - EIC 2019
Privacy by Design as a system design strategy - EIC 2019 Sagara Gunathunga
 
Privacy by Design - taking in account the state of the art
Privacy by Design - taking in account the state of the artPrivacy by Design - taking in account the state of the art
Privacy by Design - taking in account the state of the artJames Mulhern
 
Key note in nyc the next breach target and how oracle can help - nyoug
Key note in nyc   the next breach target and how oracle can help - nyougKey note in nyc   the next breach target and how oracle can help - nyoug
Key note in nyc the next breach target and how oracle can help - nyougUlf Mattsson
 
Enlightened Privacy – by Design for a Smarter Grid
Enlightened Privacy – by Design for a Smarter GridEnlightened Privacy – by Design for a Smarter Grid
Enlightened Privacy – by Design for a Smarter Gridbradley_g
 
Michael Jay Freer - Information Obfuscation
Michael Jay Freer - Information ObfuscationMichael Jay Freer - Information Obfuscation
Michael Jay Freer - Information Obfuscationiasaglobal
 
New york oracle users group 2013 spring general meeting ulf mattsson
New york oracle users group 2013 spring general meeting   ulf mattssonNew york oracle users group 2013 spring general meeting   ulf mattsson
New york oracle users group 2013 spring general meeting ulf mattssonUlf Mattsson
 
Data Leakage Presentation
Data Leakage PresentationData Leakage Presentation
Data Leakage PresentationMike Spaulding
 
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...Khaled El Emam
 
Practical risk management for the multi cloud
Practical risk management for the multi cloudPractical risk management for the multi cloud
Practical risk management for the multi cloudUlf Mattsson
 
Data masking insights and actions
Data masking insights and actionsData masking insights and actions
Data masking insights and actionsRed Gate Software
 
The Definitive Guide to Data Loss Prevention
The Definitive Guide to Data Loss PreventionThe Definitive Guide to Data Loss Prevention
The Definitive Guide to Data Loss PreventionDigital Guardian
 
Privacy and Security by Design
Privacy and Security by DesignPrivacy and Security by Design
Privacy and Security by DesignUnisys Corporation
 

Mais procurados (20)

Information Security in Big Data : Privacy and Data Mining
Information Security in Big Data : Privacy and Data MiningInformation Security in Big Data : Privacy and Data Mining
Information Security in Big Data : Privacy and Data Mining
 
Big Data, Security Intelligence, (And Why I Hate This Title)
Big Data, Security Intelligence, (And Why I Hate This Title) Big Data, Security Intelligence, (And Why I Hate This Title)
Big Data, Security Intelligence, (And Why I Hate This Title)
 
The REAL Impact of Big Data on Privacy
The REAL Impact of Big Data on PrivacyThe REAL Impact of Big Data on Privacy
The REAL Impact of Big Data on Privacy
 
Emerging application and data protection for multi cloud
Emerging application and data protection for multi cloudEmerging application and data protection for multi cloud
Emerging application and data protection for multi cloud
 
GDPR solutions (JS Event 28/2/18) | Greenlight Computers
GDPR solutions (JS Event 28/2/18) | Greenlight Computers GDPR solutions (JS Event 28/2/18) | Greenlight Computers
GDPR solutions (JS Event 28/2/18) | Greenlight Computers
 
How Network Data Loss Prevention is Implemented
How Network Data Loss Prevention is ImplementedHow Network Data Loss Prevention is Implemented
How Network Data Loss Prevention is Implemented
 
Privacy by Design as a system design strategy - EIC 2019
Privacy by Design as a system design strategy - EIC 2019 Privacy by Design as a system design strategy - EIC 2019
Privacy by Design as a system design strategy - EIC 2019
 
Big Data (security Issue)
Big Data (security Issue)Big Data (security Issue)
Big Data (security Issue)
 
Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)
 
Privacy by Design - taking in account the state of the art
Privacy by Design - taking in account the state of the artPrivacy by Design - taking in account the state of the art
Privacy by Design - taking in account the state of the art
 
Key note in nyc the next breach target and how oracle can help - nyoug
Key note in nyc   the next breach target and how oracle can help - nyougKey note in nyc   the next breach target and how oracle can help - nyoug
Key note in nyc the next breach target and how oracle can help - nyoug
 
Enlightened Privacy – by Design for a Smarter Grid
Enlightened Privacy – by Design for a Smarter GridEnlightened Privacy – by Design for a Smarter Grid
Enlightened Privacy – by Design for a Smarter Grid
 
Michael Jay Freer - Information Obfuscation
Michael Jay Freer - Information ObfuscationMichael Jay Freer - Information Obfuscation
Michael Jay Freer - Information Obfuscation
 
New york oracle users group 2013 spring general meeting ulf mattsson
New york oracle users group 2013 spring general meeting   ulf mattssonNew york oracle users group 2013 spring general meeting   ulf mattsson
New york oracle users group 2013 spring general meeting ulf mattsson
 
Data Leakage Presentation
Data Leakage PresentationData Leakage Presentation
Data Leakage Presentation
 
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...
Big Data Meets Privacy:De-identification Maturity Model for Benchmarking and ...
 
Practical risk management for the multi cloud
Practical risk management for the multi cloudPractical risk management for the multi cloud
Practical risk management for the multi cloud
 
Data masking insights and actions
Data masking insights and actionsData masking insights and actions
Data masking insights and actions
 
The Definitive Guide to Data Loss Prevention
The Definitive Guide to Data Loss PreventionThe Definitive Guide to Data Loss Prevention
The Definitive Guide to Data Loss Prevention
 
Privacy and Security by Design
Privacy and Security by DesignPrivacy and Security by Design
Privacy and Security by Design
 

Destaque

2014 sept 4_hadoop_security
2014 sept 4_hadoop_security2014 sept 4_hadoop_security
2014 sept 4_hadoop_securityAdam Muise
 
Big Data Security with HP ArcSight
Big Data Security with HP ArcSightBig Data Security with HP ArcSight
Big Data Security with HP ArcSightSridhar Karnam
 
LPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeLPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeTelefónica IoT
 
Big Data Security with Hadoop
Big Data Security with HadoopBig Data Security with Hadoop
Big Data Security with HadoopCloudera, Inc.
 

Destaque (7)

2014 sept 4_hadoop_security
2014 sept 4_hadoop_security2014 sept 4_hadoop_security
2014 sept 4_hadoop_security
 
Big Data Security with HP ArcSight
Big Data Security with HP ArcSightBig Data Security with HP ArcSight
Big Data Security with HP ArcSight
 
Hadoop and Big Data Security
Hadoop and Big Data SecurityHadoop and Big Data Security
Hadoop and Big Data Security
 
LPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeLPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to execute
 
Big Data Security with Hadoop
Big Data Security with HadoopBig Data Security with Hadoop
Big Data Security with Hadoop
 
Big Data Security and Governance
Big Data Security and GovernanceBig Data Security and Governance
Big Data Security and Governance
 
IoT - Big Data & Security
IoT - Big Data & SecurityIoT - Big Data & Security
IoT - Big Data & Security
 

Semelhante a Big security for big data

Application Security around OWASP Top 10
Application Security around OWASP Top 10Application Security around OWASP Top 10
Application Security around OWASP Top 10Sastry Tumuluri
 
Php Security By Mugdha And Anish
Php Security By Mugdha And AnishPhp Security By Mugdha And Anish
Php Security By Mugdha And AnishOSSCube
 
Eight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsEight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsAleksandr Yampolskiy
 
Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018Paula Januszkiewicz
 
The top 10 security issues in web applications
The top 10 security issues in web applicationsThe top 10 security issues in web applications
The top 10 security issues in web applicationsDevnology
 
My app is secure... I think
My app is secure... I thinkMy app is secure... I think
My app is secure... I thinkWim Godden
 
Jan 2008 Allup
Jan 2008 AllupJan 2008 Allup
Jan 2008 Allupllangit
 
It's a Dangerous World
It's a Dangerous World It's a Dangerous World
It's a Dangerous World MongoDB
 
PCI Security Requirements - secure coding
PCI Security Requirements - secure codingPCI Security Requirements - secure coding
PCI Security Requirements - secure codingHaitham Raik
 
Drupal Security Seminar
Drupal Security SeminarDrupal Security Seminar
Drupal Security SeminarCalibrate
 
General Principles of Web Security
General Principles of Web SecurityGeneral Principles of Web Security
General Principles of Web Securityjemond
 
SQLSecurity.ppt
SQLSecurity.pptSQLSecurity.ppt
SQLSecurity.pptCNSHacking
 
SQLSecurity.ppt
SQLSecurity.pptSQLSecurity.ppt
SQLSecurity.pptLokeshK66
 
10 Rules for Safer Code
10 Rules for Safer Code10 Rules for Safer Code
10 Rules for Safer CodeQuang Ngoc
 
Writing Secure Code – Threat Defense
Writing Secure Code – Threat DefenseWriting Secure Code – Threat Defense
Writing Secure Code – Threat Defenseamiable_indian
 
Application Security
Application SecurityApplication Security
Application Securityflorinc
 
Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Jim Manico
 

Semelhante a Big security for big data (20)

PHP Secure Programming
PHP Secure ProgrammingPHP Secure Programming
PHP Secure Programming
 
Application Security around OWASP Top 10
Application Security around OWASP Top 10Application Security around OWASP Top 10
Application Security around OWASP Top 10
 
Php Security By Mugdha And Anish
Php Security By Mugdha And AnishPhp Security By Mugdha And Anish
Php Security By Mugdha And Anish
 
Eight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsEight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programs
 
Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018
 
The top 10 security issues in web applications
The top 10 security issues in web applicationsThe top 10 security issues in web applications
The top 10 security issues in web applications
 
PHPUG Presentation
PHPUG PresentationPHPUG Presentation
PHPUG Presentation
 
My app is secure... I think
My app is secure... I thinkMy app is secure... I think
My app is secure... I think
 
Jan 2008 Allup
Jan 2008 AllupJan 2008 Allup
Jan 2008 Allup
 
It's a Dangerous World
It's a Dangerous World It's a Dangerous World
It's a Dangerous World
 
Web Security 101
Web Security 101Web Security 101
Web Security 101
 
PCI Security Requirements - secure coding
PCI Security Requirements - secure codingPCI Security Requirements - secure coding
PCI Security Requirements - secure coding
 
Drupal Security Seminar
Drupal Security SeminarDrupal Security Seminar
Drupal Security Seminar
 
General Principles of Web Security
General Principles of Web SecurityGeneral Principles of Web Security
General Principles of Web Security
 
SQLSecurity.ppt
SQLSecurity.pptSQLSecurity.ppt
SQLSecurity.ppt
 
SQLSecurity.ppt
SQLSecurity.pptSQLSecurity.ppt
SQLSecurity.ppt
 
10 Rules for Safer Code
10 Rules for Safer Code10 Rules for Safer Code
10 Rules for Safer Code
 
Writing Secure Code – Threat Defense
Writing Secure Code – Threat DefenseWriting Secure Code – Threat Defense
Writing Secure Code – Threat Defense
 
Application Security
Application SecurityApplication Security
Application Security
 
Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2
 

Último

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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
🐬 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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
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
 

Último (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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...
 
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...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
🐬 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...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
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
 

Big security for big data

  • 1. Big Security for Big Data 1 Big Security for Big Data Ari Elias-Bachrach Defensium llc March 2014
  • 2. Big Security for Big Data 2 About Me Ari Elias-Bachrach ● Application Security nerd, OWASP fanboy ● Help Development understand security ● Help security understand development ● Often get calls from developers that start with “help!”
  • 3. Big Security for Big Data 3 Your Data Is Important
  • 4. Big Security for Big Data 4 This Talk Will Cover Some Important Security Controls Beyond SQL Injection Cross-Site Scripting Access Control <script> //code... </script>
  • 5. Big Security for Big Data 5 For Years People Have Been Warned About SQL Injection String id = Request.QueryString("SomeID") string sql = "SELECT Product FROM myTable WHERE id = '" + id + "'"; 5'; drop table myTable; # SELECT Product FROM myTable WHERE id = '5'; drop table myTable; #'
  • 6. Big Security for Big Data 6 The Solution Is To Use Prepared Statements String id = Request.QueryString("SomeID") string sql = "SELECT Product FROM myTable WHERE id = ?"; Statement = connection.prepareStatement(sql) Statement.setString(1, id)
  • 7. Big Security for Big Data 7 Many New RDBMS' Do Not Use SQL Mongo does not use SQL, so it's not vulnerable to SQL Injection.... right?
  • 8. Big Security for Big Data 8 Many New RDBMS' Do Not Use SQL The fundamental problem that led to SQL injection is the lack of separation between commands and variables Variables Command Text Instructions Not parsed Parsed
  • 9. Big Security for Big Data 9 Mongo Can Still be Vulnerable With PHP $collection->find(array( "username" => $_GET['username'], "passwd" => $_GET['passwd'] )); username=user&passwd[$ne]=foo
  • 10. Big Security for Big Data 10 Mongo Can Still be Vulnerable With PHP $collection->find(array( "username" => user, "passwd" => array("$ne" => foo) )); username=user&passwd[$ne]=foo
  • 11. Big Security for Big Data 11 Separate Variables and Commands Return to the fundamental rule: Separate Variables and Commands Strong typing can be one way to do this $collection->find(array( "username" => (string)$_GET['username'], "passwd" => (string)$_GET['passwd'] ));
  • 12. Big Security for Big Data 12 Separate Variables and Commands Whatever system you may be working on in the future, remember this law: Separate Variables and Commands
  • 13. Big Security for Big Data 13 Separate Variables and Commands --http://us.php.net/manual/en/mongodb.execute.php
  • 14. Big Security for Big Data 14 Separate Variables and Commands
  • 15. Big Security for Big Data 15 Cross-Site Scripting (XSS) Occurs When An Attacker Can Execute Code on Your User's Systems Attacker can make your users execute arbitrary code as if it was sent from your website Client side attack <script> //code... </script>
  • 16. Big Security for Big Data 16 Cross-Site Scripting (XSS) Occurs When An Attacker Can Execute Code on Your User's Systems Bob Hi Bob Hi Request.QueryString("name")
  • 17. Big Security for Big Data 17 Cross-Site Scripting (XSS) Occurs When An Attacker Can Execute Code on Your User's Systems name=<script>...</script> Hi <script>...</script> Http://server/page.jsp?name=<script>...</script> This code is now executed in the domain of the website that “sent” it, and it can access that page's DOM
  • 18. Big Security for Big Data 18 Cross-Site Scripting (XSS) Occurs When An Attacker Can Execute Code on Your User's Systems So What? ● Change page contents ● Steal Cookies ● Redirect to another page ● Change form actions
  • 19. Big Security for Big Data 19 The Solution is To Properly Encode All Untrusted Outputs < &lt; > &gt; & &amp; ' &#x27; “ &quot; / &#x2F;
  • 20. Big Security for Big Data 20 The Solution is To Properly Encode All Untrusted Outputs <body> Hi &lt;script&gt;alert(document. cookie);&lt;&#x2F;script&gt; </body></html> http://server/page.asp?name=<script>alert(document.cookie)</script>
  • 21. Big Security for Big Data 21 Encoding is Context Dependent <a href=”x” attribute=UNTRUSTED DATA> < &lt; ' &#x27; > &gt; “ &quot; & &amp; / &#x2F; Can you execute code here without using the six characters encoded as part of HTML encoding? foo onmouseover=alert(document.cookie)
  • 22. Big Security for Big Data 22 Encoding is Context Dependent Different contexts call for different encoding rules » <div>here</div> HTML context » <tag attr=”here”> Attribute context » <script>x='here'</script> JavaScript context » <span style="property : here CSS context » <a href=”http://here”> URL context
  • 23. Big Security for Big Data 23 Encoding is Context Dependent Different contexts call for different encoding rules » <div>here</div> HTML context » <tag attr=”here”> Attribute context » <script>x='here'</script> JavaScript context » <span style="property : here CSS context » <a href=”http://here”> URL context http://tinyurl.com/xss-prevent
  • 24. Big Security for Big Data 24 A Good Encoding Library Can Save us A Lot of Time Java: Java Encoders Project ESAPI .net: Microsoft Web Protection Library PHP: Reform Ruby: On By Default
  • 25. Big Security for Big Data 25 Access Control Problems Usually Stem From Permissions Creep Every time a user needs to do something else, they ask for (and get) more permissions
  • 26. Big Security for Big Data 26 Use Role Based Access Control To Prevent Permission Creep Bob Group 1 Group 2
  • 27. Big Security for Big Data 27 Use Role Based Access Control To Prevent Permission Creep Bob Group 1 Group 2
  • 28. Big Security for Big Data 28 Conclusion Beyond SQL Injection Cross-Site Scripting Role Based Access Control <script> //code... </script>
  • 29. Big Security for Big Data 29 Big Security for Big Data Ari Elias-Bachrach ari@defensium.com Defensium llc @angelofsecurity http://www.defensium.com