Har du noen gang lurt på hvorfor enkelte enkeltpersoner og organisasjoner legger stor vekt på nettapplikasjonene deres? De forstår at manglende prioritering av sikkerheten til nettverkene deres er en invitasjon til nettangripere om å komme inn og forårsake skade.
Og en av måtene disse angriperne penetrerer et nettverk på, er gjennom Remote File Inclusion (RFI)-angrep.
RFI-angrep er ganske vanlige og kan enkelt utføres på målrettede nettsteder. Du vil garantert ikke være på mottakersiden av angrepet. I denne artikkelen vil du lære hvordan du kan forhindre det.
Hva er Remote File Inclusion (RFI)?
Ekstern filinkludering er en teknikk som brukes til å utnytte nettsteder og nettapplikasjoner. Det jakter på utilstrekkelige sårbarheter for inndatavalidering.
Med slike smutthull av innsikt legger angriperen til ondsinnede eksterne filer til nettsider og applikasjoner. Dette kan bare være mulig for nettapplikasjoner som aksepterer eksterne skript og filer dynamisk.
RFI-angrep er ganske farlige fordi de kan føre til tap av sensitiv informasjon, skripting på tvers av nettsteder, ekstern kjøring av kode og full systemoverstyring.
RFI-angrep resulterer i mer enn 25 % av ondsinnede økter på nettsteder og er mer vanlige enn andre former for angrep som skripting på tvers av nettsteder og SQL-injeksjoner.
En viktig faktor som er ansvarlig for utbredelsen av RFI-angrep er fraværet av sunn cybersikkerhetspraksis for forbedre sikkerheten til webapplikasjoner.
Hvordan fungerer ekstern filinkludering?
En ekstern filinkludering skjer når en fil fra en ekstern webserver legges til en nettside. Dette lar angriperen vise innhold fra en nettapplikasjon.
RFI oppstår også når det er en feilkonfigurasjon av programmeringskoden, og etterlater en sårbarhet som angripere kan utnytte for å penetrere systemet ditt. Nettapplikasjoner skrevet med PHP-koder er mer sårbare for RFI-angrep enn andre. PHP inkluderer funksjoner som fremmer ekstern filinkludering. Når det gjelder andre språk, kreves det en rekke skritt for å tillate en slik sårbarhet.
Mens filinkludering kan forekomme i de fleste nettapplikasjoner, er de som er skrevet i PHP-kode mer utsatt for RFI-angrep fordi PHP har innebygde funksjoner som tillater eksterne filer, mens andre språk krever løsninger for å gjøre det samme.
For å inkludere en ekstern fil, må du legge til en streng med URL-en til filen i en inkluderingsfunksjon hvis du bruker PHP-koder. Ellers må du bruke tilsvarende kode i programmeringsspråket ditt.
Når koden er utført, vil webserveren be om den eksterne filen. Når den eksterne filen er inkludert, viser nettsiden alt innholdet.
Hva er virkningen av en utnyttet ekstern filinkludering?
Skadeomfanget forårsaket av et eksternt filinkluderingsangrep er avhengig av typen ekstern fil som er inkludert og utførelsestillatelsene gitt til nettserverbrukeren.
Hvis den eksterne filen har ondsinnede koder, vil webserveren kjøre disse kodene sammen med innholdet på nettsiden. Dette gjør det mulig for angripere å stjele sensitiv informasjon, kapre webservere og ærekrenke webinnhold.
RFI-angrepet går utover den umiddelbare nettapplikasjonssikkerheten for webservere med administrative rettigheter for å starte en total systemfeil.
Hvordan identifisere sårbarheter for ekstern filinkludering
Tidlig oppdagelse er et effektivt forsvar mot cybertrusler. Bruken av inntrengningsdeteksjonssystemer utgjør en stor forskjell i å avverge det som kunne ha vært et dødelig angrep. På samme måte sparer du for mange skader å oppdage signalene fra et RFI-angrep i tide. Du har mulighet til å rette opp problemet før det eskalerer.
Å kjøre en automatisert skanning med en sårbarhetsskanner er effektivt for å identifisere eksterne filinkluderingssårbarheter, ettersom det bringer ventende trusler i forgrunnen.
Når faren er avslørt, begrenser du filinkludering basert på brukerinndata. Men denne metoden kan være umulig å implementere i noen tilfeller. Du må sørge for at en tillatt liste over filer kan inkluderes.
Hvis du jobber med en PHP-applikasjon, kan du allow_url_include sette av i php.ini for nylige installasjoner. Denne innstillingen hjelper deg med å identifisere sårbarheter i nettverket ditt for å gi et sterkt forsvar.
Slik forhindrer du RFI-sårbarheter (Remote File Inclusion).
Unnlatelse av å iverksette tiltak for å forhindre et RFI-angrep gjør at nettstedet ditt kan få alvorlige konsekvenser. Disse inkluderer tap av nettstedinnhold, defacing og eksponering av sensitive data via webhotellserveren din.
Hvis du er opptatt av å sikre systemet ditt mot RFI-angrep, er det her hvordan du gjør det.
1. Bruk filtre for å skrubbe inn parametere
Hvis du lar webserveren din behandle alle brukerinndata fra HTTP-forespørsler, øker sårbarheten din for RFI-angrep. Ikke stol på inndata fra HTTP-forespørselen.
Sørg for at alle forespørsler er ordentlig undersøkt med bruk av filtre for å se etter trusler. På den måten kan du fange ondsinnede forespørsler på døren før de kommer inn i nettverket ditt.
2. Unngå vilkårlige inndata
En sikker måte å forhindre et RFI-angrep på er å unngå bruk av vilkårlige inndata i en bokstavelig filinkluderingsforespørsel. Å tillate slike inndatatillatelser fra brukere gjør nettstedet ditt mer utsatt for å motta en ekstern fil.
Webcrawlere og hackere bruker disse inndataforespørslene for å få uautorisert tilgang til nettapplikasjoner. I stedet for å tillate alle inndata, implementer en sterk og effektiv tilgangskontroll før du behandler brukerforespørsler.
3. Bygg en dynamisk tillatelsesliste
En dynamisk hviteliste er en fil opprettet av brukeren, lagret med et filnavn i en post. Når filen er nødvendig, kan filnavnet brukes til inndata. Siden filnavnet allerede er lagret i posten, kan nettsiden enkelt verifisere filen før kjøring.
Nettsteder som er fri for RFI-angrep er vanskeligere å bygge enn andre. Dette er grunnen til at vi har flere nettsteder som er utsatt for ekstern filinkludering. Men når du sjekker risikoen forbundet med å gjøre nettsiden din sårbar for RFI-angrep, er det bedre å bygge nettsidene dine med et høyt immunitetsnivå.
Inndatavalidering og rensing kan redusere risikoen for RFI-angrep betydelig. Du kan ikke være så sikker på at innganger er helt fri for ekstern filinkludering. Derfor er det nødvendig å utføre hygiene før utførelse.
Sørg for at følgende brukerleverte/kontrollerte innganger er desinficert grundig før utførelse.
- Verdier for informasjonskapsler
- GET/POST parametere
- URL-parametere
- HTTP-headerverdier
Saneringsprosessen innebærer å sjekke inndatafelt med en godkjenningsliste. Blokkelistevalidering brukes nesten ikke fordi den er svak og ikke gransker inndata i heksadesimale eller kodede formater. Dette lar angripere bruke forskjellige formater for å levere inndatafiler som gir rom for RFI-angrep.
Ta ansvar for nettsikkerheten din
Ekstern filinkludering er en angripers strategi for å stjele eller slette sensitive data fra nettapplikasjonen din. Avhengig av angriperens motiv kan angrepet være dødelig.
Forståelig nok utvikler selv de sikreste nettapplikasjonene sårbarheter. Forskjellen ligger i deres evne til å løse potensielle trusler før de eskalerer.
Eksterne sårbarheter for filinkludering kan være en mulighet for deg til å styrke sikkerheten til nettverket ditt hvis du er på toppen av sikkerhetsspillet ditt.
Nettbrukere er under konstant trussel fra sikkerhetsbrudd, og brute force-angrep er en spesiell grunn til bekymring. Her er noen av de verste.
Les Neste
- Sikkerhet
- Cybersikkerhet
- Online sikkerhet
- Sikkerhetstips
- Internett server
Chris Odogwu er forpliktet til å formidle kunnskap gjennom forfatterskapet. En lidenskapelig forfatter, han er åpen for samarbeid, nettverksbygging og andre forretningsmuligheter. Han har en mastergrad i massekommunikasjon (Public Relations and Advertising major) og en bachelorgrad i massekommunikasjon.
Abonner på vårt nyhetsbrev
Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!
Klikk her for å abonnere