Gå til innhold

Hvordan kan åpne porter missbrukes?


Anbefalte innlegg

Skrevet

Hvordan er det teoretisk mulig for noen å "hacke/cracke" seg inn på en pc gjennom vilkårlige åpne porter?

 

For er det ikke slik at dersom jeg har laget meg et (server) program som lytter til en port, så vil all data som kommer gjennom den porten sendes til dette programmet? Som igjen betyr at dersom jeg ikke har programmert programmet mitt til å gi mer informasjon enn det jeg vil, så GIR DEN IKKE mer informasjon ... ?

 

F.eks et echo program; det skal ikke gå ann å 'lure' det til å gjøre noe annet enn å faktisk echoe tilbake, ikke sant?

 

Eller skjer kanskje selve "hackingen" på OS'et, før dataen videresendes til programmet mitt?

Videoannonse
Annonse
Skrevet

Det er riktig at så lenge programmet ditt er "sikkert" så vil det ikke være noe fare å åpne porten dette programmet lytter på. dessverre er det vanskelig å lage kompliserte programmer som er helt sikre og ikke har svakheter. Man stenger gjerne porter også fordi man er paranoid. Dermed har man kun åpne porter som lyttes på av programmer man faktisk trenger.

 

Også "echo" programmet dit kan ha svakheter. F.eks. buffer overflow feil som kan utnyttes...

 

Åpne porter kan også brukes for å hente ut informasjon om systemet. F.eks. ser man ofte hvilken OS og versjon av serverprogramvaren som er installert ved å sende data til en åpen port. Jo mer informasjon en hacker har jo lettere blir det for ham å finne svakheter videre.

 

Åpne porter kan brukes til å kjøre tjenestenektangrep mot en server. F.eks. vet jeg at en gitt service bruker mye ressurser på å svare på en gitt forespørel, og kan derfor "spamme" serveren med denne forespørselen for å ødelegge ytelsen på serveren.

 

Og så har man brute force. En åpen port betyr at jeg kan gjette meg til tilgang ved å gjette passord.

 

Som regel har man en firewall/proxy server forran serveren. Da må man ofte finne svakheter i begge systemene for å klare å hacke seg inn på serveren.

 

I verste fall (men lite sansynlig idag) kan det også finnes svakheter i nettverks-stack'en på OS'et som kan utnyttes. Det vil da si at det finnes et sikkerhetshull som skjer før programmet mottar datapakkene.

Skrevet (endret)

Herlig med svar!

Hva slags svakheter kan oppstå ved en bufferoverflow?

Jeg tenkte hovedsakelig på tilgang utover det vanlige, så tjenestenekt er ikke så stort problem. Men brute force betyr at du gjetter alle mulige alternativ, ikke sant? så hvis jeg ikke gir noen brukere unormalt mye tillatelse over PC-en, så vil ikke det heller fungere?

Jeg må altså ikke tette flere hull enn det jeg selv lager (dersom programmet kun reagerer på én kommando, så er det kun tolkingen av den kommandoen som kan være et hull) ?

Endret av evg
Skrevet

Buffer overflow betyr at en variabel ikke er stor nok til å lagre dataene du sender til den. Da vil andre deler av minnet bli skrevet over av det du sender. Dermed kan du endre andre variabler eller kjøre egen kode som du sender til serveren.

 

Brute force er at man prøver alle mulige alternativer eller lister over de mest brukte passordene.

 

Om noen hacker en konto med brute force så betyr det at de får hentet inn mer informasjon og får større angrepsflate; dvs flere muligheter til å finne nye sikkerhetshull. Det betyr også at det er enklere for meg å hacke meg inn på et system hvor jeg allerede har en bruker (med begrensede tilganger) enn uten...

 

Om du har en funksjon som tar imot data fra nettverket så må denne sikres ja. Dessuten må/bør alle funksjoner som får parametere av denne funksjonen igjen validere verdiene de får inn. Derfor er det vanlig med flere lag i en serverapplikasjon (presentasjon, businesslogikk, data) hvor alle lagene gjør valideringer på verdiene som sendes seg imellom.

Skrevet (endret)

Dersom serverprogrammet mitt er skrevet i Java. Vil ikke da en bufferoverflow være umulig?

Slik jeg har forstått skal ikke Java gi muligheten for noen program å lagre noe i minne utover den tildelte lagringsplassen. Stemmer dette? Ville det ikke istedenfor bare bli sendt ut et unntak?

Endret av evg

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...