Nätverkssäkerhet

Från Slackopedia

Chapter 1 / Intro

  • Replay attack, återanvänder paket för attacker.
  • Operating systems, protocols and applications are insecure.
  • Perfect security is not the goal, för dyrt!

Chapter 2 / Authentication and Passwords

  • Passwords, dictionary attacks etc.
  • PAP: password authentication protocol, Verifiering med användarnamn/lösenord, allt i klartext.
  • Hash/Kryptering av lösenord onödigt, kan fortfarande användas för replay-attacker.
  • CHAP: Challenge Handshake Auth Protocol: Servern skickar en utmaning till klienten som denne hashar tillsammans med den delade hemligheten (lösenord).
  • RADIUS: Remote Authentication Dial In User Service. Defactostandard för användarverifiering. Använder en speciell server som sköter autentiseringen. Klienten och RADIUS-servern delar en hemlighet.
  • Svagheter i RADIUS
- Om man vet ett lösenord kan man sniffa MD5(shared_secret) och göra en uttömmande sökning.
- Kan även återanvända fångat meddelande och försöka tills servern godtar.
- Om authenicator återanvänds kan man få fram password1 xor password2
  • CT-KIP, ny standard föreslagen av RSA för autentisering baserad på one time passwords.

Chapter 3 / Weaknesses in TCP, UDP, ICMP, IP

  • Generella attacker: message insertion, message deletion, message alteration, message replays, MITM
  • IP innehåller ingen säkerhet, lita inte på IP-adresser.
  • LAND-attack, ha samma IP i både från och till-fältet. Kan leda till krasch, DoS.
  • Ping of death, skickar ett ping-meddelande större än den maximala IP-paket-storleken. Kan leda till krasch, DoS. Skapas genom fragmentering. Fragmentering bör därför undvikas helt.
  • Om man kan gissa sekvensnummer kan man modifiera tcp-anslutning, session hijacking mm.
  • TCP desynchronization, sätta in paket med felaktiga sekvensnummer. Leder till "ACK-storm" mellan parterna som slutar först när paket börjar droppas.
  • Fragmentering av paket gör det svårt med inspektering av paket, bör undvikas.
  • Teardrop attack, använder sig av fragmentering för att skapa ett felaktigt paket vid sammansättning. Kan leda till krasch, DoS.
  • UDP saknar säkerhet, går att sätta in paket och spoofa portnummer.
  • ICMP-meddelanden kan användas för att säga åt nätverk att minska sändningshastighet, dirigera om trafik, etc. ICMP (förutom ping) bör blockeras.
  • TCP/UDP/ICMP/IP kan man inte lita på, skydd måste finnas i applikationslagret.

Chapter 4 / Attack methods

  • Host scanning, leta reda på datorer genom att skicka paket som genererar svar.
  • Port scanning, få reda på vilka portar som är öppna/program som körs.
  • UDP scanning, svårt att portscanna då inga svar ges förutom ICMP. Vissa operativsystem hindrar för många ut per sekund.
  • TCP-scanning, inled anslutningar till portar, observera svar.
  • SYN/ACK-paket kan komma igenom brandväggar då de verkar vara svar på en redan inledd anslutning. Ger oss information om var datorer finns.
  • Fingerprinting, få reda på vilka program/OS som körs genom att skicka speciella paket och observera beteende. T.ex. windows size, TTL etc.
  • Idle/dum scanning. Skicka paket med en annan host som från-IP. Kan sedan få info om svar genom att observera den dator man använt som hosts fragmentering. Kan ge info om brandväggsregler, trusted hosts etc.
  • DoS attacks. Single message, såsom teardrop och land, multiple message, såsom syn-flood.
  • Smurf, t.ex. ICMP ping till en broadcast-address med offert som från-address
  • DDoS, flera datorer som anfaller.

Chapter 5 / Firewalls

  • DMZ, demilitarized zone. Del av nätverket avskärmat från det övriga.
  • Brandväggar arbetar från nätverks och transportlagret och uppåt.
  • Brandväggstyper: Static packet filters, dynamic packet filters (SPI), gateways, deep packet inspection, air-gap firewalls.
  • SPI-brandväggar används oftast som main border-brandvägg, ofta bakom en enkel screening router. SPI-brandväggar håller koll på state och känner till TCP state machine. Håller koll på anslutningar som går in/ut och hur dessa matchas med SYNs och ACKs.
  • Deep packet inspection undersöker även innehållet i paket.
  • Screening routers gör en statisk analys utan state baserat på en lista med regler. Billigt att implementera.
  • NAT kan användas i säkerhetssynpunkt då det inte ger personer utanför NAT-routern någon information om datorerna på insidan av nätverket.
  • IDS kan hålla koll på attacker som görs och logga och varna om dessa.

Chapter 2 / WLAN

  • 802.11b vanligast, 802.11g de facto standard för ny utrustning.
  • WLAN gör det lätt att komma åt trafiken i nätverket.
  • SSID måste vetas av den som vill ansluta. SSID-broadcast tar bort detta skydd, men SSID sänds ändå i klartext i nätverket.
  • MAC-filtering kan användas, men MAC-adresser kan enkelt förfalskas.
  • WEP krypterar trafiken, käss säkerhet.
  • Svårt att byta nycklar i WEP då allt måste bytas manuellt.
  • Veka IVs finns som gör knäckning av krypteringen mycket snabb. Sorteras bort av vissa.
  • En upptagen AP kommer återanvända många IVs, vilket kan användas för att dekryptera kryptotext (dåligt).
  • (åäö)ndringen i CRC för meddelanden kan förutspås när meddelanden ändras (dåligt).
  • IV Keystreamen kan fås ut genom att xor:a kryptotext med klartext. Kan fås genom t.ex. key authentication då man skickar en utmaning och samma utmaning krypterad. (dåligt).
  • Paket kan ändras och sättas in då vi vet hur CRC ändras.
  • Nyckel kan väljas med hjälp av ett lösenord vilket gör att en dictionary attack är möjlig.
  • TKIP (Temporal Key Integrity Protocol)
    • lägger till extra IV (EIV)
    • nyckeln unik per station (baserat på MAC-adress)
    • byter nyckel vart 10000-paket
    • använder en ny MAC-funktion, dvs MIC
    • varje paket för ett unikt nummer, för att hindra replay-attacker

Chapter 7 / Cryptography

  • Använd alltid timestamps, nonces och sekvensnummer i krypterade paket för att förhindra replay.
  • Ett certifikat signeras av en pålitlig CA för att verifiera korrekthet.
  • X.509 standard för cert. Innehåller: versionsnummer, CA, serienummer, vem certifikatet är utfärdat till, publik nyckel, algoritm som används vid signering.
  • Diffie-Hellman, sårbar för MITM.

SSL/TLS

  • SSL 2/3, TLS är egentligen SSL 3.1
  • Arbetar på transportnivå och högre.
  • Ger både konfidentialitet och integritet.
  • En typisk SSL-handskakning sker enligt:
- Client Hello, klienten skickar ett meddelande med de krypton den stöder samt vilken version av SSL/TLS den använder.
- Server Hello, servern svarar med krypto och komprimeringsfunktioner som ska användas samt vilken version som är den högsta båda
stödjer.
- Certificate, servern skickar sedan sitt certifikat till klienten.
- Server Hello done.
- Client key exchange, klienten skickar slumpdata krypterad med serverns publika nyckel vilken sedan används för att ta fram en master secret för klienten och servern.
- ChangerCipherSpec skickas fram och tillbaka och data börjar krypteras.
  • Certifikat som används är standard x.509-certifkat.

Chapter 8 / IPSec

  • Krypterar trafik vid IP-nivå.
  • Erbjuder confidentiality, integrity, access control, replay protection, data origin authentication.
  • Fungerar i transport och tunnelläge. Transport krypterar end to end, ofta vid remote access. Tunnel ofta mellan brandväggar, används för VPN.
  • Inte ett protokoll. Erbjuder authentication header (AH), encapsulating security payload (ESP) och Internet Key Exchange protocol (IKE).
  • AH ger endast authentication och krypterar ej, ger snabbhet.
  • ESP krypterar och tillhandahåller möjlighet för AH (inte ett måste men starkt rekommenderat). Kryptering med DES, 3DES eller AES.
  • IKE används för att bestämma nycklar mellan parter, bestämmer säkerhetsalgoritmer. Bygger på utökad DiffieHellman, Oakley. Skydd mot MITM och replay.
  • Security associations bestämmer hur paket ska behandlas.
  • Fingerprinting kan utföras på IPSec-hosts.
  • Svaghet finns vid användning av IKE i aggressive mode samt vid användning av ESP utan authentication.

Virtual Private Networks

  • VPN kan skapas på länknivå (virtal network driver), transportnivå (sockets) och applikationsnivå (SOCKS).
  • SOCKS är ett tunnlingsprotokoll, Application -> SOCKS server -> destination server. Kan kombineras med t.ex. SSH för VPN.
  • Sockets. Skapa lokala sockets som program (t.ex. SSH) lyssnar på. Denna trafik skickas sedan vidare krypterad till destinationsservern.
  • Virtual network driver säger åt operativsystemet att den har en länk till någon destiantion. Data skickas sedan via denna krypterad med t.ex. SSH.
  • Att öppna lokala portar kan vara farligt, sockets är t.ex. normalt delat av alla program. En personlig brandvägg bör skydda tunneln.
  • VPN på applikationsnivå använder t.ex. SSH eller SSL för att skapa en tunnel. Mindre påträngande än VPN-system. Används för user to site-system.
  • IPSec kräver förinstallerade klienter. Kan vara helt transparent för program. Defacto för site-to-site-VPN.

Link Level Security

  • ARP används för att slå upp fysiska adresser baserat på IP-adresser. Ingen säkerhet finns i protokollet.
  • ARP spoofing kan göras genom att svara på ARP requests innan den riktiga servern gör det.
  • Kräver access till det lokala nätverket.
  • Statiska tabeller kan användas istället för att fråga nätverket. Ger dock mycket extra jobb.
  • Sticky ARP, tar bort "åldringen" av ARP requests.
  • DHCP requests kan svaras på av en attacker på nätverket.
  • Någon med access till den lokala DNS-servern kan ändra på hosts/adresser.

VLAN

  • Ett virutellt LAN som kan skapas som ett separat nätverk.
  • Nätverk inom VLAN:et kan inte kommas åt från andra nätverk.
  • VLAN skapades inte med säkerhet i åtanke, var försiktig.

Sample Exam

2c) What is a screening router firewall? What is the difference compared to a firewall doing Stateful inspection?

Does Static Packet Filtering:

  • Filter rules in the border router.
  • Filters out many high-frequency, low-complexity attacks.
  • For ingress and egress filtering, reduces the load on the main border firewall.
  • May reduce risk if main firewall errorneously configured.

3a) The X.509v3 standard is the de-facto standard for certificates and fields found in them. What are the most important fields (information) in a certificate?

  • Version number
  • Issuer
  • Serial number
  • Subject
  • Public key
  • Public key algorithm
  • Valid period
  • Digital signature
  • Signature algorithm identifier

b) What is a digital certificate? A certificate authority, CA? How is a certificate used to verify the bearer's identity.

A digital certificate contains, among other things, the owner's name and public key. A message digest of the information in certificate is signed using the CA's private key. The CA's public key should be trusted by the partner wishing to check if the certificate is valid. To check if it's valid a message digest of the contents is created and compare with the signature encrypted with the CA's public key.

4a) What is Diffie-Hellman key exchange used for?

It allows two parties not knowing each other to agree on a secret key using an insecure channel. Relies on the fact that <math>(g^x)^y = (g^y)^x</math>.

b) Explain how it work! Give a simple example with numbers!

Prime selected (p) = 71 A primitive root of 71 is 7 (g)

Alice

  • random number x = 5
  • <math>7^5</math> mod 71 = 51
  • Send 51 ->
  • <math>4^5</math> mod 71 = 30

Bob

  • random number y = 12
  • <math>7^{12}</math> mod 71 = 4
  • <- Send 4
  • <math>51^{12}</math> mod 71 = 30

6c) IPsec has two modes it can use when sending traffic between nodes, tunnel mode and transport mode. Explain the difference between these modes and then they are useful!

Transport mode

  • Offers end-to-end encryption
  • Often used for remote access
  • End-device must implement IPsec

Tunnel mode

  • Often used between firewalls
  • Used to build Virtual Private Networks (VPN)
  • Encrypts all traffic over insecure networks

Sista Tentan

Attacks

  • 1

a) Arp-poisoning, en angripare kan lura en om vem som är vem b) IP-spoofing, LAND-attack ett IP-paket med src/dst satt till samma adress c) SYN-attack, dvs fyller upp connection tabellen, eftersom man inte svarar på SYN,ACK d) buffer overflow i en webserver, tex.

  • 2

a) ett echo meddelande skickas till en broadcast-adress, med offerts IP i src. Finns inget direkt försvar. b) Att attacken kommer från många olika håll, man kan alltså inte bara stänga/blocka en dator eller ett subnät.

  • 3

a) Använder fragmenterings id:et, skickar ett paket till server, med en zombie som src. Och kollar om zombien fått ett svar. Om så, vet vi att server kna prata med zombien, porten är öppen, etc/osv. Den kan vara användbar för att kolla om vissa datorer är med på access listan på en viss server...

b) eftersom SYN,ACK kan vara ett svar på en legitim anslutning från insidan, dvs brandväggen kan inte blocka paketet utan mer information.

Wireless LANs

  • 4

a) SSID = Namnet på AP:n, används när man vill ansluta till AP:n. b) WEP = Wireless Equvialent Privacy, en standard för kryptering av trådlös kommunikation, en dålig sådan med många hål. c) WPA = Wifi-Protected Access, en förbättrad standard över WEP. d) TKIP = Temporal Key Integrity Protocol, ett protocol om hur nycklar skall användas. Att man tex byter nyckel efter 10000-paket. e) 802.11i = WPA2, >WPA f) 802.1X, ett protokoll för att säkerställa att en klient får prata med en server på en viss port g) EAP, används av 802.1X för att göra autentikeringen, genom att använda en AAA-server

  • 5

om man har 2 paket som krypterats med samma IV, C_1 och C_2, ger C_1 + C_2 = p1 + p2, vilket man kan "lösa" med statistik. Dvs, om 2 sådana paket finns, är krypto i princip brutet.

  • 6

a) För att hindra Evil Eve (ondskefulla olle) att ändra i paketen i början, när inget krypto används. Så om hash:arna inte stämmer överrens med vad man faktiskt har skickat avbryts allt.

b) För att kunna skapa nycklar, utan att skicka dom. Master Secret:en används för att skapa 6 nycklar. c) TLS tillåter fler block cipher algoritmer, tex AES. Använder HMAC, och tillåter inte forezza.

IPsec and VPN

  • 7

a) Tunnel-Mode Site-to-Site mellan brandväggar används för att bygga VPN

Transport mode User-to-site remote access

b) AH och ESP info, dvs nycklar, algoritmer. Sekvensnummer, och livstid

Kerberos and authentication

  • 8

Authentication och Authorization. Användaren loggar in mot, Ticket Servern(kan vara en annan server) som ger authentication, sen frågar man om en ticket, som man sedan ger till servern som har servicen man vill använda.

  • 9

En liten dosa, som kan användas för att svara på challenge:en i ett CHAP protokoll. Innehåller helt enkelt oftast en algoritm implementation. Lätt att använda, men kan är även relativt stor risk för stöld.