Security in The Pipeline
@duartevolvox
Abril 2017
~$ Index
0x30 - O hacker
0x31 - Porque e que segurança é precisa?
0X32 - INSEgurança
0X33 - Como é que mau software é feito?
0x34 - RECOMENDAções
0x35 - ETICA & LUCRo
0x36 - COMO começar
COMPREENDER O ATACANTE
~$ ./hacker_101
Hacker é qualquer pessoa altamente qualificada que usa seus conhecimentos técnicos para superar um problema
A cultura hacker é uma subcultura de indivíduos que gostam do desafio intelectual da criatividade superando as limitações dos sistemas de software para alcançar resultados novos e inteligentes.

~$ ./hacker_101
Bons da fita
Bons da fita até chatear
Maus da fita


WHITE HAT
GREY HAT
BLACK HAT
gid=1337 (hackers)
Motivos Politicos - Anonymous
Motivados pelo Conhecimento - CCC
€€€€ - HackingTeam
Espionagem - CIA

Hacking Groups




Mr Robot - TV Series (2016)
~$ ./hacking_MEDIA
~Bom
Mau

CSI Cyber TV Series (2015-16)
https://www.youtube.com/watch?v=msX4oAXpvUE
https://youtu.be/buHaKYL9Jhg?t=48
#attacks
Stuxnet - https://www.youtube.com/watch?v=7g0pi4J8auQ

#attacks


#attacks

DDoS - Denial Of Service
#attacks
DDoS - Denial Of Service

#attacks
Ransomware

Porque é que eu preciso de segurança?
Quem e que precisa?
Computadores
Telemoveis
Internet
Emails
Redes Sociais
....

MAs porque?
O que te garante que a tua informação está segura?
No teu computador?
No teu telemovel?
No teu email?
No facebook?





COMO?
Virus
Spyware
RansomWare
Trojans
Spam
Normal
Spear


Phishing

COMO?
Aplicações Vulneraveis a hackers podem ser usados contra ti!
Falhas de Segurança informática são mais comum do que é normal...
...muitas nem ouves falar.


Compreender As FALHAS
() { :; }; /bin/INSECURITY
- O que é (in)segurança?
- Engenharia Social
- Ataques a aplicações Web.
O que vamos falar?
() { :; }; /bin/INSECURITY
What is (in)security?
X + Y
W
() { :; }; /bin/INSECURITY
What is (in)security?
X + Y
Z
A
Inputs inesperados para Outputs esperados
() { :; }; /bin/INSECURITY
Social Engineering

() { :; }; /bin/INSECURITY
Social Engineering
O que é Engenharia Social?
A Engenharia Social, no contexto da segurança da informação, refere-se à manipulação psicológica de pessoas para realizar ações ou divulgar informações confidenciais.
Humanos são o elemento mais fraco!
- Estudo da vitima (What he wants? Needs?)
- Criar pagina falsa (Spoofing real pages)
- Comunicação (E-email, SMS, Social Networks)
- Esperar ....
- Receber informação.
Spear Phishing?
- Spam
- Phishing
- Spear Phishing
() { :; }; /bin/INSECURITY
Social Engineering

Crackar passwords
VS
Enganar o utilizador para te mandar
() { :; }; /bin/INSECURITY
Social Engineering
Como detectar phishing?
- Ter uma atitude critica,
- Analisar links e informação,
- Nunca! Mandar passwords ou informação pessoal,
- Quando te oferece algo que parece bom demais,
- Tu não pediste nada, mas recebeste o email.
- Atenção ao certificado e ao dominio.

() { :; }; /bin/INSECURITY
Social Engineering

() { :; }; /bin/INSECURITY
Social Engineering

() { :; }; /bin/INSECURITY
Web Application Security

() { :; }; /bin/INSECURITY
Web Application Security - Injection
Falhas de injeção, como SQL, OS e LDAP injeção ocorrem quando dados não confiáveis são enviados para um interpretador como parte de um comando ou consulta. Os dados hostis do invasor podem enganar o interpretador para executar comandos não intencionais ou acessar dados sem a devida autorização.

https://xkcd.com/327/
() { :; }; /bin/INSECURITY
Web Application Security - Injection

Normal Behavior
The application Searches for the users with the user name and password
Attack
The query returns a valid values bypassing the login without user and password
() { :; }; /bin/INSECURITY
Web Application Security - Injection
DEMO
() { :; }; /bin/INSECURITY
Web Application Security - CSRF
Um ataque CSRF força o navegador de uma vítima conectada a enviar uma solicitação HTTP falsificada, incluindo o cookie de sessão da vítima e qualquer outra informação de autenticação incluída automaticamente, em um aplicativo web vulnerável. Isso permite que o invasor forçar o navegador da vítima a gerar pedidos que a aplicação vulnerável acha que são pedidos legítimos da vítima.

() { :; }; /bin/INSECURITY
Web Application Security - CSRF

() { :; }; /bin/INSECURITY
Web Application Security - CSRF
DEMO

Segurança
Enquadramento

PERCEber COMO PREVENIR falhas de software
"><svg/onload=Bad_SOFTWARE
O que é SDLC (Software Development LifeCycle)?
O ciclo de vida de desenvolvimento de sistemas (SDLC), também conhecido como ciclo de vida de desenvolvimento de software, é um termo usado na engenharia de sistemas, sistemas de informação e engenharia de software para descrever um processo de planejamento, criação, teste e implementação de um sistema de informação.

"><svg/onload=Bad_SOFTWARE
SDLC
Requirements
Design
Implementation
Verification
Release
Response & Maintenance
Study (Economical, Operational, Thechnical, Organizational) Project Planning |
Security Requirements Compliance Analysis Governance Definition |
BreakDown Project Architecture Solutions |
Risk Assessment Security Architecture Threat Modelling |
Build/buy Solution |
Secure Code Review Secure Code Analysis |
Quality Assurance |
Security Testing Risk Assessment Review Penetration Testing |
Deliver Project |
Security Review Incident Response Plan |
Features and bug fixing |
Incident Forensics Security Monitoring |
"><svg/onload=Bad_SOFTWARE
Threat Modeling

"><svg/onload=Bad_SOFTWARE
Pentesting
O que é um Pentest? (Penetration Tester)
Validação de controlos de segurança e logica da aplicação.
Definições:
- Scope,
- Time of Testing,
- Abuse cases.

https://github.com/coreb1t/awesome-pentest-cheat-sheets
"><svg/onload=Bad_SOFTWARE
Pentesting

../../../../../CD
Continuous Delivery
Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time.

../../../../../CD
Scrum

../../../../../CD
Scrum HighLevel
0 Weeks
2 Weeks
US1223
US1224
US1225
DE1211
Backlog
Team X
../../../../../CD
Security Integration

US1222
US1223
Commit




SAST
Security Scanning
Builds
Deploys
José
Gitlab
Jenkins
Watcher
Security Review
Security Champions
REcomendações de segurança
OS BASICOS - software
Anti-virus - Porque?
- Detecta 98,9999% dos virus.
- Neutraliza ameaças.
Manter as aplicações atualizadas sempre.
Manter sempre a firewall ativa.
- Protege o computador de comunicações nao autorizadas.


OS BASICOS - PASSWORDS
Usar Password Complexas:
- Caracteres de A a Z (Maiusculas e minusculas)
- Algarismos 0 a 9
- Simbolos !=)"(#$%&$(/&
Password são complicadas de decorar?


http://keepass.info/
TELEMOVEIS
Porque ter cuidado?
- Faceis de perder e roubar,
- Muito espaço de armazenamento,
- Muita das vezes estão desprotegidos,
- Susceptiveis a comunicações desprotegidas,
- Funcionalidades de Geo localização .


TELEMOVEIS


TELEMOVEIS

TELEMOVEIS - gps

TELEMOVEIS - SEc (1)
- Configurações de Privacidade (por defeito pode estar vulneravel),
- Ter noção das permissões das aplicações na instalação,
- Desligar funcionalidades extras,
- Fontes seguras.

TELEMOVEIS - SEc (2)
- Manter sempre login protegido (PIN, Impressão digital,...)
- Ativar bloqueio automático,
- Funcionalidades de remotamente apagar o telemovel,
- Evitar usar redes desprotegidas
- Ativar VPN.



mitm
Man-in-the-middle Attack
Redes desprotegidas? nao obrigado.

REDES SOCIAiS
Antes de colocar alguma coisa online... pensar:
- A informação que vou colocar online pode no futuro ser usado contra mim?
- Se isto virar publico qual vai ser o meu dano?

- Limitar o numero de pessoas que pode ver a minha informação,
- Rever configurações de privacidade,
- Limitar o numero de "contactos" na rede social,
- Nunca partilhar informação pessoal no "Check-in".
REDES SOCIAiS (2)
Queres partilhar algo sensivel? Não problema.
Usa: CryptoBin (https://cryptobin.co/)

https://cryptobin.co/4615e6u6
PERCEBER Como e que se faz lucro
' OR "€"="€";/*
Profit?

' OR "€"="€";/*
BugBounties
O que é um Bug Bounty?
Find Bugs == €
You find a security issue in a program
Report Using Bug Bounty Platform
Program Curator triage find
You Receive €€€
Um Bug Bounty é um acordo oferecido por muitos sites e desenvolvedores de software pelo qual os indivíduos podem receber reconhecimento e compensação por relatar bugs, especialmente aqueles relacionados a exploits e vulnerabilidades.
' OR "€"="€";/*
BugBounties

From: David Sopas Talk "The way of the Bounty"
' OR "€"="€";/*
BugBounties
Famous platforms



BugCrowd
Cobalt.io
HackerOne
The more bugs you find, the more reputation you have

' OR "€"="€";/*
BugBounties

https://leanpub.com/web-hacking-101
Bom ponto de partida...
' OR "€"="€";/*
BugBounties (ex)

' OR "€"="€";/*
BugBounties (ex)

' OR "€"="€";/*
Ethics
A divulgação responsável é um termo de segurança informática que descreve um modelo de divulgação de vulnerabilidade. É como a divulgação completa, com a adição de que todas as partes interessadas concordam em permitir que um período de tempo para a vulnerabilidade seja corrigido antes de publicar os detalhes. Desenvolvedores de hardware e software muitas vezes exigem tempo e recursos para reparar seus erros.

https://googleprojectzero.blogspot.pt/
' OR "€"="€";/*
Law
Lei n.º 109/2009, de 15 de Setembro
Source: https://www.anacom.pt/render.jsp?contentId=978956
Artigo 4.º (Dano relativo a programas ou outros dados informáticos)
Artigo 5.º (Sabotagem informática)
Artigo 6.º (Acesso ilegítimo)
Artigo 7.º (Intercepção ilegítima)
Artigo 8.º (Reprodução ilegítima de programa protegido)
Artigo 9.º (Responsabilidade penal das pessoas colectivas e entidades equiparadas)

%0a%0B howTo
- Capture the Flags,
- Conferences,
- Certifications
- News,
- ....
Do you want to learn and practice more?
%0A%0B howTo
CTF - Capture the Flag
What Is?
Types?
Where to register?
Exercises
ctftime.org
Cryptography
Pwnable
Reverse
Jeopardy
Attack & defense
Web App
Trivia
Forensics
Misc
Hardware
Stegnography
...
Security Exercises/Competition
%0A%0B howTo
Certifications
How to choose one?
Beginners - CEH (Certified Ethical Hacker) ~500$
Advanced - OSCP (Offensive Security Certified Professional) ~1000$
Medium - Comptia Security+ ~500$



../../../../howTo
News
Where to look?
Tip: Use Feedly + GetPocket



THANK you :)
Q&A
Stay Safe, Stay Legal
Security In the Pipeline
By Duarte Monteiro
Security In the Pipeline
- 808