SlideShare uma empresa Scribd logo
Insecure Direct
Object References
Referência Insegura Direta a
Objeto
Resumo
•
Agentes da ameaça: usuário com acesso ao
sistema porém sem acesso a algumas
informações.
•
Vetor de ataque: de fácil exploração
•
Falha de segurança: estruturas do banco de dados
ou filesystem diretamente referenciadas
•
Impactos técnicos: possibilidade de acesso
indevido a informações
•
Impactos no negócio: dependem do valor das
informações e impacto da imagem da empresa
Agentes da Ameaça
O objeto de ataque é a informação
proveniente de um banco de dados,
sistema de arquivos ou qualquer
repositório no qual um usuário legítimo
tem acesso não só as informações
permitidas como também qualquer outra
informação não permitida.
Vetor de Ataque
O Vetor de Ataque pode ser qualquer
usuário insatisfeito e com más intenções,
pois é feito através da URL (get) nos
casos de sistemas web ou sites.
Falha de Segurança
O acesso a um determinado registro é
feito através da URL, tornando visível as
referências (chave primária) do registro
da informação desejada.
Ex.: http://www.sistema.net/conta.php?
id=1234
Se o usuário alterar o id diretamente na
url e não houver uma criticidade no
algoritmo do sistema que bloqueie esse
acesso, o usuário terá acesso à todas as
informações de outra conta não
Impactos Técnicos
Comprometimento das informações e
cópia das mesmas.
Ex: No site da Australian Taxation Office’s
GST Start Up Assistance em 2000, onde
um usuário legítimo, mas hostil,
simplesmente modificou o ABN
(identificador da empresa) presente na
URL. O usuário se apossou de cerca de
17.000 registros de empresas
São visualizadas na aplicação, as referências a
objetos internos dos usuários.
Atacantes manipulam parâmetros de maneira a
alterar as referências, conseguindo assim acesso a
diretórios ou outros recursos da aplicação.
<select name="language"><option
value="fr">Français</option></select>
…
require_once ($_REQUEST['language’]."lang.php");
Tal código pode ser atacado usando uma
string como “../../../../etc/passwd%00” usando
Funcionamento do ataque
Como se prevenir
•
Evitar a exposição de referências de objetos
privados a usuários sempre que possível, como
chaves primárias e nomes de arquivos.
•
Validar cada referência privada a objeto através da
abordagem “aceite o reconhecido como bom”.
•
Verificar a autorização de todos os objetos
referenciados.
•
Usar um valor de índice ou um mapa de referência
para prevenir ataques de manipulação de
parâmetro.
Exemplos específicos de
proteção
•
Uso de URL oculta configurando o
mod_rewrite e o .htaccess, assim na url
aparecerá somente o site raiz.
•
Uso de mapa de referência randômica,
onde a referencia visível aponta para
um mapa que faz a correlação com a
informação real.
•
Associação da referência da url com
alguma informação do
usuário(permissão) na preparação do
SQL.
Obrigado
Fim

Mais conteúdo relacionado

Mais procurados

POTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a ServicePOTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a Service
Alexandria Farar (Lexi), CISSP, CEH
 
OWASP TOP 10 VULNERABILITIS
OWASP TOP 10 VULNERABILITISOWASP TOP 10 VULNERABILITIS
OWASP TOP 10 VULNERABILITIS
Null Bhubaneswar
 
Document your rest api using swagger - Devoxx 2015
Document your rest api using swagger - Devoxx 2015Document your rest api using swagger - Devoxx 2015
Document your rest api using swagger - Devoxx 2015
johannes_fiala
 
Swagger - make your API accessible
Swagger - make your API accessibleSwagger - make your API accessible
Swagger - make your API accessible
Victor Trakhtenberg
 
security misconfigurations
security misconfigurationssecurity misconfigurations
security misconfigurations
Megha Sahu
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdf
Christopher Doman
 
APISecurity_OWASP_MitigationGuide
APISecurity_OWASP_MitigationGuide APISecurity_OWASP_MitigationGuide
APISecurity_OWASP_MitigationGuide
Isabelle Mauny
 
Web Application Penetration Testing
Web Application Penetration Testing Web Application Penetration Testing
Web Application Penetration Testing
Priyanka Aash
 
Why Every Company Needs to Think and Act Like a Media Company
Why Every Company Needs to Think and Act Like a Media CompanyWhy Every Company Needs to Think and Act Like a Media Company
Why Every Company Needs to Think and Act Like a Media Company
3Play Media
 
Introducing Swagger
Introducing SwaggerIntroducing Swagger
Introducing Swagger
Tony Tam
 
스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해
beom kyun choi
 
Spring MVC
Spring MVCSpring MVC
Spring MVC
Emprovise
 
What is Swagger?
What is Swagger?What is Swagger?
What is Swagger?
Philip Senger
 
OWASP Day - OWASP Day - Lets secure!
OWASP Day - OWASP Day - Lets secure! OWASP Day - OWASP Day - Lets secure!
OWASP Day - OWASP Day - Lets secure!
Prathan Phongthiproek
 
Design Patterns Presentation - Chetan Gole
Design Patterns Presentation -  Chetan GoleDesign Patterns Presentation -  Chetan Gole
Design Patterns Presentation - Chetan Gole
Chetan Gole
 
Prototype Design Pattern
Prototype Design PatternPrototype Design Pattern
Prototype Design Pattern
melbournepatterns
 
OWASP Top 10 API Security Risks
OWASP Top 10 API Security RisksOWASP Top 10 API Security Risks
OWASP Top 10 API Security Risks
IndusfacePvtLtd
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
APIsecure_ Official
 
Secure Session Management
Secure Session ManagementSecure Session Management
Secure Session Management
GuidePoint Security, LLC
 
Attribute-Based Access Control in Symfony
Attribute-Based Access Control in SymfonyAttribute-Based Access Control in Symfony
Attribute-Based Access Control in Symfony
Adam Elsodaney
 

Mais procurados (20)

POTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a ServicePOTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a Service
 
OWASP TOP 10 VULNERABILITIS
OWASP TOP 10 VULNERABILITISOWASP TOP 10 VULNERABILITIS
OWASP TOP 10 VULNERABILITIS
 
Document your rest api using swagger - Devoxx 2015
Document your rest api using swagger - Devoxx 2015Document your rest api using swagger - Devoxx 2015
Document your rest api using swagger - Devoxx 2015
 
Swagger - make your API accessible
Swagger - make your API accessibleSwagger - make your API accessible
Swagger - make your API accessible
 
security misconfigurations
security misconfigurationssecurity misconfigurations
security misconfigurations
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdf
 
APISecurity_OWASP_MitigationGuide
APISecurity_OWASP_MitigationGuide APISecurity_OWASP_MitigationGuide
APISecurity_OWASP_MitigationGuide
 
Web Application Penetration Testing
Web Application Penetration Testing Web Application Penetration Testing
Web Application Penetration Testing
 
Why Every Company Needs to Think and Act Like a Media Company
Why Every Company Needs to Think and Act Like a Media CompanyWhy Every Company Needs to Think and Act Like a Media Company
Why Every Company Needs to Think and Act Like a Media Company
 
Introducing Swagger
Introducing SwaggerIntroducing Swagger
Introducing Swagger
 
스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해
 
Spring MVC
Spring MVCSpring MVC
Spring MVC
 
What is Swagger?
What is Swagger?What is Swagger?
What is Swagger?
 
OWASP Day - OWASP Day - Lets secure!
OWASP Day - OWASP Day - Lets secure! OWASP Day - OWASP Day - Lets secure!
OWASP Day - OWASP Day - Lets secure!
 
Design Patterns Presentation - Chetan Gole
Design Patterns Presentation -  Chetan GoleDesign Patterns Presentation -  Chetan Gole
Design Patterns Presentation - Chetan Gole
 
Prototype Design Pattern
Prototype Design PatternPrototype Design Pattern
Prototype Design Pattern
 
OWASP Top 10 API Security Risks
OWASP Top 10 API Security RisksOWASP Top 10 API Security Risks
OWASP Top 10 API Security Risks
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
 
Secure Session Management
Secure Session ManagementSecure Session Management
Secure Session Management
 
Attribute-Based Access Control in Symfony
Attribute-Based Access Control in SymfonyAttribute-Based Access Control in Symfony
Attribute-Based Access Control in Symfony
 

Semelhante a OWASP top 10 - Referência insegura direta a objeto

Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
Flavio Souza
 
PHP Desenvolvimento Seguro
PHP Desenvolvimento SeguroPHP Desenvolvimento Seguro
PHP Desenvolvimento Seguro
Flávio Lisboa
 
Saindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações webSaindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações web
Igor Carneiro
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web Security
Marlon Bernardes
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
Kaito Queiroz
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
Kaito Queiroz
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
Sergio Henrique
 
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
EMERSON EDUARDO RODRIGUES
 
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali LinuxComo analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Edlaine Zamora
 
ataque_bruteforce_com_hydra_parte_1.pdf
ataque_bruteforce_com_hydra_parte_1.pdfataque_bruteforce_com_hydra_parte_1.pdf
ataque_bruteforce_com_hydra_parte_1.pdf
xererenhosdominaram
 
OWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken AuthenticationOWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken Authentication
Fernando Galves
 
Testes de segurança em aplicações web
Testes de segurança em aplicações webTestes de segurança em aplicações web
Testes de segurança em aplicações web
Synergia - Engenharia de Software e Sistemas
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
Clavis Segurança da Informação
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de Segurança
Alan Carlos
 
Segurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASPSegurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASP
Fabiano Pereira
 
Seguranca e Criptografia de Dados
Seguranca e Criptografia de DadosSeguranca e Criptografia de Dados
Seguranca e Criptografia de Dados
Felipe Plattek
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012
Marcio Cunha
 
Aula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação WebAula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação Web
Matheus Fidelis
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Clavis Segurança da Informação
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Alcyon Ferreira de Souza Junior, MSc
 

Semelhante a OWASP top 10 - Referência insegura direta a objeto (20)

Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 
PHP Desenvolvimento Seguro
PHP Desenvolvimento SeguroPHP Desenvolvimento Seguro
PHP Desenvolvimento Seguro
 
Saindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações webSaindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações web
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web Security
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
 
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali LinuxComo analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
 
ataque_bruteforce_com_hydra_parte_1.pdf
ataque_bruteforce_com_hydra_parte_1.pdfataque_bruteforce_com_hydra_parte_1.pdf
ataque_bruteforce_com_hydra_parte_1.pdf
 
OWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken AuthenticationOWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken Authentication
 
Testes de segurança em aplicações web
Testes de segurança em aplicações webTestes de segurança em aplicações web
Testes de segurança em aplicações web
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de Segurança
 
Segurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASPSegurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASP
 
Seguranca e Criptografia de Dados
Seguranca e Criptografia de DadosSeguranca e Criptografia de Dados
Seguranca e Criptografia de Dados
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012
 
Aula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação WebAula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação Web
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 

OWASP top 10 - Referência insegura direta a objeto

  • 2. Resumo • Agentes da ameaça: usuário com acesso ao sistema porém sem acesso a algumas informações. • Vetor de ataque: de fácil exploração • Falha de segurança: estruturas do banco de dados ou filesystem diretamente referenciadas • Impactos técnicos: possibilidade de acesso indevido a informações • Impactos no negócio: dependem do valor das informações e impacto da imagem da empresa
  • 3. Agentes da Ameaça O objeto de ataque é a informação proveniente de um banco de dados, sistema de arquivos ou qualquer repositório no qual um usuário legítimo tem acesso não só as informações permitidas como também qualquer outra informação não permitida.
  • 4. Vetor de Ataque O Vetor de Ataque pode ser qualquer usuário insatisfeito e com más intenções, pois é feito através da URL (get) nos casos de sistemas web ou sites.
  • 5. Falha de Segurança O acesso a um determinado registro é feito através da URL, tornando visível as referências (chave primária) do registro da informação desejada. Ex.: http://www.sistema.net/conta.php? id=1234 Se o usuário alterar o id diretamente na url e não houver uma criticidade no algoritmo do sistema que bloqueie esse acesso, o usuário terá acesso à todas as informações de outra conta não
  • 6. Impactos Técnicos Comprometimento das informações e cópia das mesmas. Ex: No site da Australian Taxation Office’s GST Start Up Assistance em 2000, onde um usuário legítimo, mas hostil, simplesmente modificou o ABN (identificador da empresa) presente na URL. O usuário se apossou de cerca de 17.000 registros de empresas
  • 7. São visualizadas na aplicação, as referências a objetos internos dos usuários. Atacantes manipulam parâmetros de maneira a alterar as referências, conseguindo assim acesso a diretórios ou outros recursos da aplicação. <select name="language"><option value="fr">Français</option></select> … require_once ($_REQUEST['language’]."lang.php"); Tal código pode ser atacado usando uma string como “../../../../etc/passwd%00” usando Funcionamento do ataque
  • 8. Como se prevenir • Evitar a exposição de referências de objetos privados a usuários sempre que possível, como chaves primárias e nomes de arquivos. • Validar cada referência privada a objeto através da abordagem “aceite o reconhecido como bom”. • Verificar a autorização de todos os objetos referenciados. • Usar um valor de índice ou um mapa de referência para prevenir ataques de manipulação de parâmetro.
  • 9. Exemplos específicos de proteção • Uso de URL oculta configurando o mod_rewrite e o .htaccess, assim na url aparecerá somente o site raiz. • Uso de mapa de referência randômica, onde a referencia visível aponta para um mapa que faz a correlação com a informação real. • Associação da referência da url com alguma informação do usuário(permissão) na preparação do SQL.