1. O documento discute sistemas operacionais seguros, com ênfase em comandos Linux para auditoria e segurança de rede.
2. É apresentado o scanner de rede Nmap, descrevendo seus usos principais como varredura de portas, detecção de sistema operacional e mapeamento de serviços.
3. O documento também lista e explica brevemente alguns ataques comuns como engenharia social, varredura, negação de serviço e exploração de vulnerabilidades, assim como ferramentas para análise de logs e detecção de
2. What is a Secure System?
• Secure system is an abstract concept
• Defined as “Robust”, it depends on what
you need, how much time you are willing
to put in, and what resources are at your
disposal
3. P.C. vs. Server
• Close all services
• Don’t open
accounts to
everyone. Only to
good and trusted
people
• Close as much
services as possible
• Make sure users
have good
passwords - use
crack-lib. Demand
periodical
password changes
4. Linux Auditing – important commands
Recent logins
■last
Last login time for all users (dormant users)
■lastlog
Last failed logins (requires to create /var/log/
btmp file)
■lastb
Security related events
■/var/log/secure
Tools for Log Analysis
■Swatch – real-time monitoring of logs
■Logsentry
■Logwatch
5. Network Security
Services are started by /etc/rc.d scripts and
xinetd
■chkconfig --list
■chkconfig levels {numbers} {service} on|off
Xinetd services are configured by individual
files in /etc/xinetd.d/
Open network connections
■netstat –antp
■Use the –p option to see which processes are
responsible for which open ports
■Also lsof can be used
6. 6
Trusted Hosts
Entries in /etc/hosts.equiv and /etc/
hosts.lpd are critical
They allow users from those hosts to
connect without supplying a password!
Also, users can create .rhosts
and .netrc files in their home
directories, which function similarly.
Find these as well
7. Principais ataques
▪ Engenharia social
▪ Coleta de informação
▪ Varredura
▪ Negação de serviço
▪ Exploração de bugs
▪ Exploração de protocolos
▪ Sniffers
▪ Ataque do dicionário
▪ Código malicioso
8. NMap
▪ Network Scanner
“Prevent Security Disasters Before They Happen”
▪ Em desenvolvimento desde 1997
▪ Usos
▪ Descoberta de máquinas (hosts)
▪ Varredura de portas (port scanning)
▪ Detecção de SO (OS fingerprinting)
▪ Mapeamento de protocolos
▪ Mapeamento e detecção e serviços
▪ Detecção de firewalls inteligentes
▪ Teste de sistemas de detecção de intrusão (IDS)
▪ Idle Scanning (via máquina zumbi)
9. Uso básico
# nmap -A -T4 scanme.nmap.org playground
Starting nmap ( http://insecure.org/nmap/ )
Interesting ports on scanme.nmap.org (205.217.153.62):
(The 1663 ports scanned but not shown below are in state: filtered)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99)
53/tcp open domain
70/tcp closed gopher
80/tcp open http Apache httpd 2.0.52 ((Fedora))
113/tcp closed auth
Device type: general purpose
Running: Linux 2.4.X|2.5.X|2.6.X
OS details: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11
Uptime 33.908 days (since Thu Jul 21 03:38:03 2005)
Interesting ports on playground.nmap.org (192.168.0.40):
(The 1659 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE VERSION
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn
389/tcp open ldap?
445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds
1002/tcp open windows-icfw?
1025/tcp open msrpc Microsoft Windows RPC
1720/tcp open H.323/Q.931 CompTek AquaGateKeeper
5800/tcp open vnc-http RealVNC 4.0 (Resolution 400x250; VNC TCP port: 5900)
5900/tcp open vnc VNC (protocol 3.8)
MAC Address: 00:A0:CC:63:85:4B (Lite-on Communications)
Device type: general purpose
Running: Microsoft Windows NT/2K/XP
OS details: Microsoft Windows XP Pro RC1+ through final release
Service Info: OSs: Windows, Windows XP
10. Descoberta de Hosts
▪ -sL (List scan – somente consulta servidor de DNS)
▪ -sP (Ping Scan – envia ICMP echo request e pacote TCP para porta
80)
▪ -P0 (No Ping – não realiza descoberta de hosts e passa para
varredura de portas)
▪ -PS [portlist] (TCP SYN Ping – recebe RST/ACK se host ativo e sem
serviço ou SYN/ACK se ativo e com serviço)
▪ -PA [portlist] (TCP ACK Ping – recebe RST/ACK)
▪ -PU [portlist] (UDP ping – recebe ICMP Port unreachable ou ICMP
host unreachable)
▪ -PE (ICMP Ping – Echo request / Reply)
▪ -PP (ICMP Ping – Timestamp request / reply)
▪ -PM (ICMP Ping – Network Mask request / reply)
▪ -PR (ARP Ping – varredura otimizada para redes locais, pois
números IPs devem ser convertidos para endereços MAC)
11. Varredura de portas
▪ -sS (TCP SYN scan – envia SYN; SYN/ACK é porta aberta; RST/
ACK é porta fechada; sem reposta é porta filtrada)
▪ -sT (TCP Connect Scan – realiza a conexão via SYN, SYN/ACK e
ACK; para ser utilizado se usuário não tem privilégios)
▪ -sU (UDP Scan – recebe ICMP port unreachable ou pacote UDP de
resposta)
▪ -sN (TCP Null Scan)
▪ -sF (TCP Fin Scan)
▪ -sX (TCP Xmas Scan)
▪ -sA (TCP ACK Scan – somente determina se porta está ou não
filtrada, caso receba RST/ACK ou não)
▪ -sW (TCP Window Scan – portas fechadas retornam com janela de
tamanho zero; portas abertas retornam tamanho positivo)
▪ --scanflags (Custom Scan – URG ACK PSH RST SYN FIN)
▪ -sM (TCP Maimon – envia FIN/ACK – efetivo contra OpenBSD)
▪ -sO (Protocol Scan – varia o campo de IP Protocol ! (8bits) )
13. Varredura de portas
▪ -b <ftp relay host> (FTP Bounce Scan)
▪ Conecta com servidor de FTP
▪ Solicita ao servidor enviar arquivo para as portas do host alvo
▪ Mensagens de erro indicam se porta está aberta ou não
▪ Pode ser usado para contornar firewalls, se o servidor de FTP é
simultaneamente acessado pela Internet e pela rede interna
▪ Efetivo quando NMap foi lançado (1997)
▪ Praticamente não funciona mais
14. Portas, Serviços, OS
▪ -p <port ranges> (default 1-1024)
▪ -r (Don’t randomize ports) (default é randomizar a ordem de
varredura)
Usa arquivo nmap-services
▪ -sV (Version Detection)
Usa arquivo nmap-service-probes
▪ -O (OS Detection)
Usa arquivo nmap-os-fingerprints
▪ -T n (Temporização)
0= Paranoid, 1=Sneaky, 2=Polite, 3=Normal, 4=Aggressive, 5=Insane
15. Evasão de Firewall/IDS
▪ -f (fragment packets)
▪ -D <decoy1 [,decoy2 [..... [,ME....]]] (cloak a scan with decoys)
▪ -g <portnumber> (spoof source port number) por exemplo, 53 ou 20
para evadir firewalls
▪ --data-length <number> (Append random data to sent packets)
default é enviar pacotes somente com cabeçalho
▪ --spoof-mac <mac address or vendor name> (spoof MAC address)
▪ --badsum (send packets with bogus checksums) para descoberta de
firewalls
16. Saída
▪ -oN <filespec> (Normal output)
▪ -oX <filespec> (XML output)
▪ -oS <filespec> (ScRipT KIdd|3 oUTpuT) (just for fun :-)
▪ -v (verbose output)
▪ --packet-trace (trace packets and data sent and received)
▪ --version-trace (trace packets of the version dectection subsystem)
17. Download e Documentação
▪ www.insecure.org
▪ Versões para Unix, LInux, *BSD, Mac OS e Windows
▪ Uso pleno requer privilégios de administrador
▪ Curiosidades:
▪ Nmap foi ator coadjuvante em Matrix !
▪ Nmap teve problemas com Windows XP SP2, quando MIcrosoft desabilitou o
envio de raw packets (são enviados ethernet frames, o que prejudica a
eficiência)
▪ No Windows, Nmap não consegue varrer a própria máquina (127.0.0.1 ou os
IPs registrados) – para fazer isto, deve-se usar TCP connect sem Ping (-sT –
P0)
18.
19.
20.
21.
22. 1. Problemas no Mariner (1962)
Custo: 18,5 milhões dólares
Desastre: Mariner, um foguete com uma sonda espacial
para Vênus, foi desviado de seu percurso de voo logo
após o lançamento. O controle da missão destruiu o
foguete 293 segundos após a decolagem.
23. 2. Hartford Coliseu Desmorona (1978)
Custo: 70 milhões de dólares, além de outros danos de 20
milhões para a economia local
Desastre: Poucas horas depois de milhares de fãs
deixarem o Coliseu Hartford, o teto de treliça de aço
desabou sob o peso da neve molhada.
Causa: O programador do software CAD, utilizado para
projetar o coliseu, incorretamente assumiu que o suporte
do telhado de aço enfrentaria apenas compressão natural.
Mas quando um dos suportes inesperadamente recebeu
um bloco de neve, este desencadeou uma reação em
cadeia que derrubou o telhado de outras seções como
dominós.
24.
25. 3. CIA distribue gás aos soviéticos (1982)
Custo: Milhões de dólares e danos significativos a
economia soviética
Desastre: O software de controle se descontrolou e
produziu uma intensa pressão no gasoduto Trans-
Siberian, resultando na maior explosão não-nuclear da
história.
26.
27. 4. 3ª Guerra Mundial (Quase!) (1983)
Custo: Quase toda a humanidade
Desastre: O sistema de alerta precoce soviético
falsamente indicou que os Estados Unidos tinham lançado
cinco mísseis balísticos. Felizmente, o oficial de serviço
soviético tinha uma “sensação esquisita no estômago” e
fundamentalmente, se os EUA estavam realmente
atacando, eles lançariam mais de cinco mísseis, por isso
ele relatou o aparente ataque como um alarme falso.
Causa: Um bug no software soviético falhou ao detectar
reflexos solares como falsos mísseis.
28. 5. Máquina medicinal mata (1985)
Custo: Três mortos e três seriamente feridos
Desastre: A máquina de radiação canadense Therac-25
irradiou doses letais em pacientes.
Causa: Por causa de um bug sutil chamado de “condição
de corrida“, um técnico acidentalmente configurou o
Therac-25 de modo que o feixe de elétrons seria como um
fogo de alta potência.
29.
30. 6. Crash na Wall Street (1987)
Custo: $500 bilhões em um dia
Desastre: Em 19 de outubro de 1987, o índice Dow Jones
caiu 508 pontos, perdendo 22,6% de seu valor total. Esta
foi a maior perda que Wall Street já sofreu em um único
dia.
Causa: Um mercado em grande alta foi interrompido por
uma série de investigações conduzidas pela SEC e por
outras forças do mercado. Como os investidores fugiram
de ações investigadas, um número muito grande de
ordens de venda foram gerados pelos computadores,
quebrando sistemas e deixando os investidores
efetivamente cegos.