Sikkerhet

Hva er programvaresikkerhet?

Hva er programvaresikkerhet?
Programvaresikkerhet er bygging av sikker programvare med iboende forsvar slik at den fortsetter å fungere under ondsinnede angrep, til tilfredshet for brukere og eiere av programvaren. Denne artikkelen forklarer truslene og løsningene, sett fra et generelt synspunkt. Standard ordforråd innen informasjonssikkerhet blir også forklart. Du bør være datamaskin- og internettkyndig for å forstå denne artikkelen; du burde også ha studert et dataspråk, f.eks.g., Perl, C, C ++, PHP, etc.

Det som er sikret er informasjons- og programvarepakker (applikasjoner og dokumenter). Informasjon er enhver melding som er nyttig for alle. “Informasjon” er et vagt ord. Konteksten det brukes i gir sin betydning. Det kan bety nyheter, forelesning, opplæring (eller leksjon) eller løsning. En programvarepakke er vanligvis en løsning på noen problemer eller relaterte problemer. Tidligere ble all informasjon som ikke ble skrevet skrevet på papir. I dag kan programvaren betraktes som en delmengde av informasjon.

Programvaren kan ligge på en datamaskin, eller være i transitt fra en datamaskin til en annen. Filer, data, e-post, innspilt stemme, innspilte videoer, programmer og applikasjoner ligger på en datamaskin. Mens du bor på en datamaskin, kan den bli ødelagt. Mens du er på reise, kan den fremdeles bli ødelagt.

Alle enheter med prosessor og minne er en datamaskin. Så, i denne artikkelen, en kalkulator, en smarttelefon eller et nettbrett (f.eks.g., iPad) er en datamaskin. Hver av disse enhetene og deres nettverksoverføringsmedier har programvare eller programvare under transport som skal beskyttes.

Privilegier

En bruker kan få privilegiet å utføre en fil på en datamaskin. En bruker kan få rettigheten til å lese koden til en fil på en datamaskin. En bruker kan få rettigheten til å endre (skrive) koden til en fil på en datamaskin. En bruker kan få en, to eller alle disse tre rettighetene. Det er andre privilegier for et operativsystem eller en database. Brukere har forskjellige mengder eller nivåer av privilegier i et system.

Trusler

Grunnlag for programvaretrusler

For å beskytte programvare, må du vite truslene. Programvaren må beskyttes mot uautoriserte personer som får tilgang til dataene. Det må beskyttes mot ulovlig bruk (for eksempel å skade). Programvaren skal beskyttes mot utlevering til rivaler. Programvaren skal ikke bli ødelagt. Programvaren skal ikke slettes utilsiktet. Programvaren skal ikke forstyrres. Programvaren skal ikke ha noen modifikasjon som ikke er nødvendig. Data (programvare) bør ikke inspiseres uten god grunn, spesielt av uvedkommende. Programvaren skal ikke kopieres (piratkopiert).

En eller flere av disse basene, noe som resulterer i en bestemt type klassisk trussel.

Klasser av programvare trussel

Spoofing Attack

Dette er situasjonen der en person (eller et program) representerer en annen person (eller et program) i en programvareaktivitet. Dette gjøres ved bruk av falske data for å oppnå en ulovlig fordel.

Avvisning

Dette er situasjonen der noen gjør noe galt, og nekter at han / hun ikke er den som gjorde det. Personen kan bruke en annen persons signatur for å gjøre feil ting.

Databrudd

Databrudd er når sikker eller privat informasjon blir gitt ut med vilje eller utilsiktet til et miljø som ikke er klarert.

Denial-of-Service Attack

Et programvarenettverk har programvare som kjører på datamaskinene i nettverket. Hver bruker bruker vanligvis datamaskinen foran seg og ber vanligvis om tjenester fra andre datamaskiner i nettverket. En kriminell bruker kan bestemme seg for å oversvømme en server med overflødige forespørsler. En server har et begrenset antall forespørsler den kan håndtere i løpet av en varighet. I denne oversvømmelsesordningen kan ikke legitime brukere bruke serveren så ofte som de burde, siden serveren er opptatt med å svare på forbryterens forespørsler. Dette overbelaster serveren, midlertidig eller ubegrenset forstyrrer tjenestene til serveren. I løpet av dette reduserer verten (serveren) driften for legitime brukere, mens gjerningsmannen utfører sin ondskap, noe som ikke blir oppdaget, fordi de legitime brukerne som står og venter på service, ikke kunne vite hva som foregikk kl. serveren. De gode brukerne nektes tjeneste, mens angrepet pågår.

Privilege Eskalering

Ulike brukere av et operativsystem eller applikasjon har forskjellige privilegier. Så noen brukere ender opp med mer verdi enn andre, fra systemet. Å utnytte en programvarefeil eller konfigurasjonstilsyn for å få forhøyet tilgang til ressurser eller uautorisert informasjon er Privilege Escalation.

Ovennevnte klassifikasjonsordninger kan brukes til å forårsake datavirus og ormer.

Ett eller flere av klassifiseringsskjemaene ovenfor kan brukes til programvareangrep, som inkluderer: tyveri av immateriell eiendom, korrupsjon av databaser, identitetstyveri, sabotasje og informasjonsutpressing. Hvis en person bruker en eller flere av ordningene for å endre destruktivt, et nettsted slik at kundene på nettstedet mister tilliten, det er sabotasje. Informasjonsutpressing er stjeling av selskapets datamaskin eller falsk innhenting av hemmelig informasjon om selskapet. Datamaskinen stjålet kan ha hemmelig informasjon. Dette kan føre til løsepenger, der tyven vil be om betaling, til gjengjeld for eiendommen eller stjålet informasjon.

Personvern

Når noe er følsomt eller iboende spesielt for deg, så er den tingen privat for deg. Dette gjelder også en gruppe mennesker. Et individ trenger å uttrykke seg selv selektivt. For å oppnå slik selektivitet, må personen planlegge seg selv eller planlegge informasjon om seg selv; det er privatliv. En gruppe mennesker trenger å uttrykke seg selektivt. For å oppnå slik selektivitet, må gruppen planlegge seg selv eller planlegge informasjon om seg selv; det er privatliv. Et individ trenger å beskytte seg selv selektivt. For å oppnå en slik selektiv beskyttelse, må individet beskytte seg selv eller beskytte informasjon om seg selv på en selektiv måte; personvern. En gruppe mennesker trenger å beskytte seg selv selektivt. For å oppnå en slik selektiv beskyttelse, må gruppen beskytte seg selv eller beskytte informasjon om seg selv på en selektiv måte; personvern.

Identifikasjon og autentisering

Når du reiser til et fremmed land, kommer du til en havn i det landet. I havnen vil en politibetjent be deg om å identifisere deg. Du vil fremvise passet ditt. Politibetjenten vil vite din alder (fra fødselsdato), kjønn og yrke fra passet, og han vil se på deg (ansiktet ditt); det er identifikasjon. Politibetjenten vil sammenligne ditt virkelige ansikt og bildet i passet. Han vil også estimere alderen din med det som er i passet for å vite om det er deg.

Å se på deg og knytte din alder, kjønn og yrke til deg er identifikasjon. Å bekrefte om det virkelige ansiktet ditt og bildet ditt er det samme, og å estimere om presentasjonen din samsvarer med alderen din, er autentisering. Identifikasjon er å knytte en person eller noe til visse attributter. Å indikere en identitet er også identifikasjon. Autentisering er beviset på at identiteten (identifikasjonen) er sann. Autentisering er med andre ord bevis for en påstand.

I databehandling er den vanligste måten for autentisering å bruke et passord. En server har for eksempel mange brukere. Ved pålogging angir du identiteten din (identifiser deg) med brukernavnet ditt. Du beviser identiteten din med passordet ditt. Passordet ditt skal bare være kjent av deg. Autentisering kan gå lenger; ved å stille deg et spørsmål, som “I hvilken by eller by ble du født?”

Sikkerhetsmål

Sikkerhetsmålene i informasjon er konfidensialitet, integritet og tilgjengelighet. Disse tre funksjonene er kjent som CIA-triaden: C for konfidensialitet, I for integritet og A for tilgjengelighet.

konfidensialitet

Informasjonen må ikke avsløres for uautoriserte personer, eller uautoriserte enheter eller uautoriserte prosesser; dette er informasjonskonfidensialitet i informasjonssikkerhet (samt programvaresikkerhet). Stjeling av passord eller sending av sensitive e-poster til en feil person er konfidensialitet kompromittert. Konfidensialitet er en del av personvernet som beskytter informasjon fra uautoriserte personer, eller uautoriserte enheter eller uautoriserte prosesser.

Integritet

Informasjon eller data har en livssyklus. Med andre ord, informasjon eller data har starttid og sluttid.  I noen tilfeller, etter slutten av livssyklusen, må informasjonen (eller dataene) slettes (lovlig). Integritet består av to funksjoner, som er: 1) vedlikehold og sikring av nøyaktigheten av informasjonen (eller dataene) over hele livssyklusen, og 2) fullstendigheten av informasjonen (eller dataene) over hele livssyklusen. Så informasjon (eller data) må ikke reduseres eller endres på en uautorisert eller uoppdaget måte.

Tilgjengelighet

For at ethvert datasystem skal tjene formålet, må informasjon (eller data) være tilgjengelig når det er nødvendig. Dette betyr at datasystemet og dets overføringsmedier må fungere riktig. Tilgjengeligheten kan kompromitteres av systemoppgraderinger, maskinvarefeil og strømbrudd. Tilgjengeligheten kan også bli kompromittert av denial-of-service-angrep.

Ikke-avvisning

Når noen bruker identiteten din og signaturen din til å signere en kontrakt som han aldri har oppfylt, er ikke avvisning når du ikke med hell kan nekte for retten at du ikke har skrevet forfatteren.

På slutten av en kontrakt må den parten som tilbyr tjenesten ha tilbudt tjenesten; betalingsparten må ha utført betalingen.

For å forstå hvordan ikke-avvisning er anvendelig for digital kommunikasjon, må du først vite betydningen av nøkkel og betydningen av digital signatur. En nøkkel er et stykke kode. En digital signatur er en algoritme som bruker en nøkkel til å produsere en annen kode som sammenlignes med en skriftlig signatur fra avsenderen.

I digital sikkerhet er ikke-avvisning gitt (ikke nødvendigvis garantert) av en digital signatur. I programvaresikkerhet (eller informasjonssikkerhet) er ikke-avvisning å gjøre med dataintegritet. Datakryptering (som du kanskje har hørt) kombinert med digital signatur bidrar også til konfidensialitet.

Sikkerhetsmålene i informasjonen er konfidensialitet, integritet og tilgjengelighet. Imidlertid er ikke avvisning en annen funksjon du må ta i betraktning når du arbeider med informasjonssikkerhet (eller programvaresikkerhet).

Svar på trusler

Trusler kan reageres på, på en eller flere av følgende tre måter:

- Reduksjon / avbøting: Dette er implementeringen av garantier og mottiltak for å eliminere sårbarheter eller blokkere trusler.

- Tilordne / overføre: Dette legger byrden av trusselen på en annen enhet, for eksempel et forsikringsselskap eller et outsourcingfirma.

- Aksept: Dette vurderer om kostnaden for mottiltak oppveier de mulige kostnadene for tap på grunn av trusselen.

Adgangskontroll

I informasjonssikkerhet som programvaresikkerhet er en del av, er tilgangskontroll en mekanisme som sikrer at bare kvalifiserte brukere har tilgang til beskyttede ressurser i et gitt system, med forskjellige fortjente privilegier.

Nåværende løsning på informasjonssikkerhet

Den nåværende og populære måten å gjøre informasjonssikkerhet på er å håndheve tilgangskontroll. Dette inkluderer tiltak som å validere input til et program, installere antivirus, bruke en brannmur til et lokalt nettverk og bruke Transport Layer Security.

Når du forventer en dato som input til et program, men brukeren skriver inn et nummer, må en slik input avvises. Det er validering av input.

Et antivirus installert på datamaskinen din forhindrer at virus ødelegger filer på datamaskinen. Dette hjelper til med tilgjengeligheten av programvare.

Det kan lages regler for å overvåke og kontrollere innkommende og utgående trafikk til et lokalt nettverk for å beskytte nettverket. Når slike regler er implementert som programvare, i det lokale nettverket, er det en brannmur.

Transport Layer Security (TLS) er en sikkerhetsprotokoll designet for å legge til rette for personvern og datasikkerhet for overføring over Internett. Dette innebærer å kryptere kommunikasjonen mellom sendende vert og mottakende vert.

Å gjøre informasjonssikkerhet ved å håndheve tilgangskontroll kalles Security Software, som er forskjellig fra Software Security, som forklart nedenfor. Begge tilnærmingene har samme mål, men de er forskjellige.

Riktig programvaresikkerhet

Programmer, som de er skrevet i dag, har mange programvaresårbarheter som programmerere har innsett mer og mer de siste 20 årene. De fleste angrep skjer ved å utnytte disse sårbarhetene enn å overvinne eller jobbe rundt tilgangskontroll.

En buffer er som en matrise, men uten pålagt lengde. Når en programmerer skriver inn en buffer, er det mulig å ubevisst overskrive utover lengden. Dette sikkerhetsproblemet er et bufferoverløp.

Programvare i dag har forsvunnet med sikkerhetsforgreninger, inkludert implementeringsfeil som bufferoverløp og designfeil som inkonsekvent feilhåndtering. Dette er sårbarheter.

Du har kanskje hørt om datamaskinspråk som PHP cheats, Perl cheats og C ++ cheats. Dette er sårbarheter.

Programvaresikkerhet, i motsetning til sikkerhetsprogramvare, overvinner disse sårbarhetene ved å skrive defensiv kode der sårbarhetene vil bli forhindret. Mens applikasjonen blir brukt, etter hvert som det oppdages flere sårbarheter, bør utviklere (programmerere) se etter måter å omkode sårbarhetene defensivt.

Trusselen, denial-of-service-angrep, kan ikke stoppes av tilgangskontroll, for for gjerningsmannen å gjøre det, må han allerede ha tilgang til verten (serveren). Det kan stoppes ved å inkludere noen intern programvare som overvåker hva brukerne gjør i verten.

Programvaresikkerhet er en robust design innenfra, som gjør programvareangrep vanskelig. Programvaren skal være selvbeskyttende og, på grensen, ikke ha noe sårbarhet. På denne måten blir det enklere og mer kostnadseffektivt å drive et sikkert nettverk.

Programvaresikkerhet utformer defensiv kode fra applikasjonen mens sikkerhetsprogramvare håndhever (designer) tilgangskontroll. Noen ganger overlapper disse to problemene, men ofte gjør de ikke det.

Programvaresikkerhet er allerede ganske utviklet, selv om den fortsatt er under utvikling, er den ikke like utviklet som sikkerhetsprogramvare. Dårlige hackere oppnår sine mål mer ved å utnytte sårbarheter i programvare enn ved å overvinne eller jobbe rundt sikkerhetsprogramvare. Det er håpet at informasjonssikkerhet i fremtiden vil være mer av programvaresikkerhet enn sikkerhetsprogramvare. For nå må både programvaresikkerhet og sikkerhetsprogramvare pågå.

Programvaresikkerhet vil egentlig ikke være effektiv hvis det ikke gjøres strenge tester på slutten av programvareutviklingen.

Programmører må utdannes i å utføre defensiv kodeprogrammering. Brukerne må også bli utdannet til hvordan de bruker applikasjoner defensivt.

Innen programvaresikkerhet må utvikleren sørge for at brukeren ikke får flere privilegier enn han fortjener.

Konklusjon

Programvaresikkerhet er utformingen av applikasjoner med defensiv koding mot sårbarheter for å gjøre programvareangrep vanskelig. Sikkerhetsprogramvare er derimot produksjon av programvare som håndhever tilgangskontroll. Programvare sikkerhet er fortsatt under utvikling, men det er mer lovende for informasjonssikkerhet enn sikkerhetsprogramvare. Den blir allerede brukt, og den vokser i popularitet. I fremtiden vil begge være nødvendige, men med programvare trenger sikkerhet mer.

Hvordan fange opp og streame spilløkten din på Linux
Tidligere ble spill bare ansett som en hobby, men med tiden så spillindustrien en enorm vekst når det gjelder teknologi og antall spillere. Spillpubli...
Beste spill å spille med håndsporing
Oculus Quest introduserte nylig den gode ideen om håndsporing uten kontrollere. Med et stadig økende antall spill og aktiviteter som utfører støtte en...
Hvordan vise OSD-overlegg i fullskjerm Linux-apper og spill
Å spille fullskjermspill eller bruke apper i distraksjonsfri fullskjermmodus kan avskrekke deg fra relevant systeminformasjon som er synlig i et panel...