URL -omdirigering - URL redirection

URL -omdirigering , også kaldet URL -videresendelse , er en World Wide Web -teknik til at gøre en webside tilgængelig under mere end én URL -adresse. Når en webbrowser forsøger at åbne en URL, der er blevet omdirigeret, åbnes en side med en anden URL. Tilsvarende er domæneomdirigering eller domænevideresendelse, når alle sider i et URL -domæne omdirigeres til et andet domæne, som når wikipedia.com og wikipedia.net automatisk omdirigeres til wikipedia.org .

URL -omdirigering udføres af forskellige årsager:

  • til URL -afkortning ;
  • at forhindre brudte links, når websider flyttes;
  • at tillade flere domænenavne, der tilhører den samme ejer, at henvise til et enkelt websted ;
  • at guide navigation ind og ud af et websted;
  • for beskyttelse af fortrolige oplysninger og
  • til fjendtlige formål såsom phishing -angreb eller malware -distribution.

Formål

Der er flere grunde til at bruge URL -omdirigering:

Tvinger HTTPS

Et websted kan muligvis være tilgængeligt via både et sikkert HTTPS URI -skema og almindelig HTTP (en usikker URI, der begynder med "http: //").

Hvis en bruger skriver i en URI eller klikker på et link, der henviser til den usikre variant, omdirigerer browseren automatisk til den sikre version, hvis webstedet findes på HSTS -forudindlæsningslisten, der fulgte med applikationen, eller hvis brugeren allerede havde besøgt oprindelsen i fortiden.

Ellers vil webstedet blive kontaktet via HTTP. En webstedsoperatør kan beslutte at betjene sådanne anmodninger ved i stedet at omdirigere browseren til HTTPS -varianten og forhåbentlig også primere HSTS til fremtidig adgang.

Lignende domænenavne

En bruger kan skrive en URL forkert. Organisationer registrerer ofte disse "fejlstavede" domæner og omdirigerer dem til den "korrekte" placering. Denne teknik bruges ofte til "reserve" andre topdomæner (TLD) med samme navn, eller gøre det lettere for en "Edu" eller ".net" site til at rumme brugere, som type ".com".

Flytning af sider til et nyt domæne

Websider kan omdirigeres til et nyt domæne af tre grunde:

  • et websted måske ønsker eller har brug for at ændre sit domænenavn;
  • en forfatter kan flytte deres individuelle sider til et nyt domæne;
  • to websteder kan smelte sammen.

Med URL -omdirigeringer kan indgående links til en forældet URL sendes til den korrekte placering. Disse links kan være fra andre websteder, der ikke har indset, at der er en ændring eller fra bogmærker/favoritter, som brugerne har gemt i deres browsere. Det samme gælder søgemaskiner . De har ofte de ældre/forældede domænenavne og links i deres database og sender søgebrugere til disse gamle webadresser. Ved at bruge en "flyttet permanent" omdirigering til den nye webadresse ender besøgende stadig på den korrekte side. Også i det næste søgemaskinepas skulle søgemaskinen opdage og bruge den nyere URL.

Logning af udgående links

Adgangslogfiler for de fleste webservere bevarer detaljerede oplysninger om, hvor besøgende kom fra, og hvordan de har gennemset det hostede websted. De logger imidlertid ikke, hvilke links besøgende efterlader. Det skyldes, at den besøgendes browser ikke behøver at kommunikere med den originale server, når den besøgende klikker på et udgående link. Disse oplysninger kan fanges på flere måder. En måde involverer URL -omdirigering. I stedet for at sende den besøgende direkte til det andet websted, kan links på webstedet direkte til en webadresse på det oprindelige websteds domæne, der automatisk omdirigerer til det virkelige mål. Denne teknik bærer bagsiden af ​​forsinkelsen forårsaget af den ekstra anmodning til det originale websteds server. Da denne tilføjede anmodning efterlader et spor i serverloggen og afslører præcist hvilket link der blev fulgt, kan det også være et privatlivsproblem. Den samme teknik bruges også af nogle virksomhedswebsteder til at implementere en erklæring om, at det efterfølgende indhold er på et andet websted og derfor ikke nødvendigvis er tilknyttet virksomheden. I sådanne scenarier forårsager visning af advarslen en yderligere forsinkelse.

Korte aliasser til lange webadresser

Webapplikationer indeholder ofte lange beskrivende attributter i deres webadresser, der repræsenterer datahierarkier, kommandostrukturer, transaktionsstier og sessionsoplysninger. Denne praksis resulterer i en URL, der er æstetisk ubehagelig og vanskelig at huske, og som muligvis ikke passer inden for størrelsesbegrænsningerne for mikroblogging -websteder. URL -afkortningstjenester giver en løsning på dette problem ved at omdirigere en bruger til en længere URL fra en kortere.

Meningsfulde, vedholdende aliasser til lange eller skiftende webadresser

Nogle gange ændres webadressen til en side, selvom indholdet forbliver det samme. Derfor kan URL -omdirigering hjælpe brugere, der har bogmærker. Dette udføres rutinemæssigt på Wikipedia, når en side omdøbes.

Post/Omdiriger/Hent

Post/Redirect/Get (PRG) er et webudviklingsdesignmønster , der forhindrer nogle dublerede formularindsendelser, hvis brugeren klikker på opdateringsknappen efter at have indsendt formularen, hvilket skaber en mere intuitiv grænseflade for brugeragenter (brugere).

Enhedsmålretning og geotargeting

Omdirigeringer kan effektivt bruges til målretning som geotargeting . Enhedsmålretning er blevet stadig vigtigere med stigningen i mobilklienter. Der er to tilgange til at betjene mobilbrugere: Gør hjemmesiden lydhør eller omdiriger til en mobilwebstedversion. Hvis der tilbydes en mobilwebstedversion, videresendes brugere med mobilklienter automatisk til det tilsvarende mobilindhold. Til enhedsmålretning bruges omdirigeringer på klientsiden eller omdirigeringer på serversiden ikke. Geotargeting er metoden til at tilbyde lokaliseret indhold og automatisk videresende brugeren til en lokaliseret version af den ønskede URL. Dette er nyttigt for websteder, der målretter mod mere end ét sted og/eller sprog. Normalt bruges omdirigeringer på serversiden til geotargeting, men omdirigeringer på klientsiden kan også være en mulighed afhængigt af krav.

Manipulering af søgemaskiner

Omdirigeringer er blevet brugt til at manipulere søgemaskiner med uetiske intentioner, f.eks. URL -kapring . Målet med vildledende omdirigeringer er at føre søgetrafik til destinationssider, som ikke har nok placeringskraft alene eller som kun er eksternt eller slet ikke er relateret til søgemålet. Fremgangsmåden kræver en rangering for en række søgeudtryk med et antal webadresser, der ville bruge luskede omdirigeringer til at videresende søgeren til målsiden. Denne metode fik en genoplivning med stigningen i mobilenheder og enhedsmålretning. URL-kapring er en omdirigeringsteknik uden for domænet, der udnyttede søgemaskinens håndtering til midlertidige omdirigeringer. Hvis der opstår en midlertidig omdirigering, skal søgemaskiner beslutte, om de tildeler rangeringsværdien til den webadresse, der initialiserer omdirigering eller til omdirigeringsmålwebadressen. Webadressen, der starter omdirigering, kan blive gemt for at blive vist i søgeresultaterne, da omdirigeringen angiver en midlertidig karakter. Under visse omstændigheder var det muligt at udnytte denne adfærd ved at anvende midlertidige omdirigeringer til velrangerede webadresser, hvilket førte til en udskiftning af den originale webadresse i søgeresultater med den URL, der initialiserede omdirigering, og derfor "stjal" rangeringen. Denne metode blev normalt kombineret med luskede omdirigeringer for at målrette brugerstrømmen fra søgeresultaterne til en målside. Søgemaskiner har udviklet effektive teknologier til at opdage denne form for manipulerende tilgange. Store søgemaskiner anvender normalt hårde rangeringsstraffe på websteder, der bliver fanget ved at anvende teknikker som disse.

Manipulere besøgende

URL -omdirigering bruges undertiden som en del af phishing -angreb, der forvirrer besøgende om, hvilket websted de besøger. Fordi moderne browsere altid viser den rigtige webadresse i adresselinjen, reduceres truslen. Omdirigeringer kan dog også tage dig til websteder, der ellers vil forsøge at angribe på andre måder. For eksempel kan en omdirigering tage en bruger til et websted, der ville forsøge at narre dem til at downloade antivirussoftware og installere en slags trojan i stedet.

Fjernelse af referreroplysninger

Når der klikkes på et link, sender browseren et felt kaldet referer i HTTP -anmodningen, der angiver kilden til linket. Dette felt er udfyldt med webadressen til den aktuelle webside og ender i logfilerne på den server, der betjener det eksterne link. Da følsomme sider kan have følsomme webadresser (f.eks. ), Er det ikke ønskeligt, at webadressen forlader organisationen. En omdirigering side, der udfører henvisende skjule kunne indlejres i alle eksterne URL'er, omdanne for eksempel ind . Denne teknik eliminerer også andre potentielt følsomme oplysninger fra henvisnings -URL'en, f.eks. Sessions -id'et , og kan reducere chancen for phishing ved at angive slutbrugeren, at de har passeret en klar gateway til et andet websted. http://company.com/plans-for-the-next-release-of-our-productreferrerhttp://externalsite.com/pagehttp://redirect.company.com/http://externalsite.com/page

Implementering

Flere forskellige former for svar på browseren vil resultere i en omdirigering. Disse varierer i, om de påvirker HTTP -headere eller HTML -indhold. De anvendte teknikker afhænger typisk af rollen som den person, der implementerer det, og deres adgang til forskellige dele af systemet. For eksempel kan en webforfatter uden kontrol over overskrifterne bruge et Opdater metatag, mens en webserveradministrator, der omdirigerer alle sider på et websted, er mere tilbøjelig til at bruge serverkonfiguration.

Manuel omdirigering

Den enkleste teknik er at bede den besøgende om at følge et link til den nye side, normalt ved hjælp af et HTML -anker som:

Please follow <a href="http://www.example.com/">this link</a>.

Denne metode bruges ofte som et tilbageslag-hvis browseren ikke understøtter den automatiske omdirigering, kan den besøgende stadig nå måldokumentet ved at følge linket.

HTTP -statuskoder 3xx

I HTTP -protokollen, der bruges af World Wide Web , er en omdirigering et svar med en statuskode, der begynder med 3, der får en browser til at vise en anden side. Hvis en klient støder på en omdirigering, skal den træffe en række beslutninger om, hvordan den skal håndteres. Forskellige statuskoder bruges af klienter til at forstå formålet med omdirigering, hvordan man håndterer caching og hvilken anmodningsmetode, der skal bruges til den efterfølgende anmodning.

HTTP/1.1 definerer flere statuskoder til omdirigering (RFC 7231):

  • 300 flere valgmuligheder (f.eks. Tilbud på forskellige sprog)
  • 301 flyttet permanent (omdirigerer permanent fra en URL til en anden og overfører link egenkapital til den omdirigerede side)
  • 302 fundet (oprindeligt "midlertidig omdirigering" i HTTP/1.0 og populært brugt til CGI -scripts; afløst af 303 og 307 i HTTP/1.1, men bevaret for bagudkompatibilitet)
  • 303 se andre (tvinger en GET -anmodning til den nye URL, selvom den oprindelige anmodning var POST)
  • 307 midlertidig omdirigering (giver en ny URL til browseren til at indsende en GET- eller POST -anmodning igen)
  • 308 permanent omdirigering (giver en ny URL til browseren til at indsende en GET- eller POST -anmodning igen)

Statuskoder 304 ændres ikke, og 305 bruger proxy er ikke omdirigeringer.

Omdiriger statuskoder og egenskaber
HTTP -statuskode HTTP -version Midlertidig permanent Kan gemmes Anmodningsmetode Efterfølgende anmodning
301 HTTP/1.0 Permanent Ja GET / POST kan ændre sig
302 HTTP/1.0 Midlertidig ikke som standard GET / POST kan ændre sig
303 HTTP/1.1 Midlertidig aldrig altid FÅ
307 HTTP/1.1 Midlertidig ikke som standard må ikke ændres
308 HTTP/1.1 Permanent som standard må ikke ændres

Alle disse statuskoder kræver, at URL'en til omdirigeringsmålet angives i overskriften Location: i HTTP -svaret. De 300 flere valg viser normalt alle valg i meddelelsens brødtekst og viser standardvalget i overskriften Placering:.

Eksempel på HTTP -svar for en 301 -omdirigering

Et HTTP -svar med 301 "flyttet permanent" omdirigering ser sådan ud:

HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/
Content-Type: text/html
Content-Length: 174

<html>
<head>
<title>Moved</title>
</head>
<body>
=Moved=
<p>This page has moved to <a href="http://www.example.org/">http://www.example.org/</a>.</p>
</body>
</html>

Brug af serverside scripting til omdirigering

Webforfattere, der producerer HTML -indhold, kan normalt ikke oprette omdirigeringer ved hjælp af HTTP -headere, da disse genereres automatisk af webserverprogrammet, når de serverer en HTML -fil. Det samme er normalt sandt, selv for programmører, der skriver CGI-scripts, selvom nogle servere tillader scripts at tilføje brugerdefinerede overskrifter (f.eks. Ved at aktivere "ikke-analyserede-overskrifter"). Mange webservere vil generere en 3xx -statuskode, hvis et script udsender en "Location:" -overskriftslinje. For eksempel kan man i PHP bruge funktionen "header":

header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.com/');
exit();

Flere overskrifter kan være nødvendige for at forhindre cachelagring. Programmereren skal sikre, at overskrifterne udsendes før kroppen. Dette passer muligvis ikke let med den naturlige strøm af kontrol gennem koden. For at hjælpe med dette kan nogle rammer for generering af indhold på serversiden buffere brøddataene. I ASP -scriptsproget kan dette også opnås ved hjælp af, response.buffer=trueog response.redirect "http://www.example.com/"HTTP/1.1 giver mulighed for enten en relativ URI -reference eller en absolut URI -reference. Hvis URI -referencen er relativ, beregner klienten den påkrævede absolutte URI -reference i henhold til reglerne defineret i RFC 3986.

Apache HTTP -server mod_rewrite

Den Apache HTTP Server mod_alias udvidelse kan bruges til at omdirigere visse anmodninger. Typiske konfigurationsdirektiver ser sådan ud:

Redirect permanent /oldpage.html http://www.example.com/newpage.html
Redirect 301 /oldpage.html http://www.example.com/newpage.html

For mere fleksibel URL -omskrivning og omdirigering kan Apache mod_rewrite bruges. F.eks. At omdirigere en anmodning til et kanonisk domænenavn:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.:]+\.)*oldsite\.example\.com\.?(:[0-9]*)?$ [NC]
RewriteRule ^(.*)$ http://newsite.example.net/$1 [R=301,L]

Sådan konfiguration kan anvendes på et eller alle websteder på serveren via serverkonfigurationsfilerne eller på et enkelt indholdskatalog gennem en .htaccessfil.

nginx omskrive

Nginx har et integreret http-omskrivningsmodul, som kan bruges til at udføre avanceret URL-behandling og endda generering af websider (med returndirektivet). Et eksempel på en sådan avanceret brug af omskrivningsmodulet er mdoc.su , som implementerer en deterministisk URL -forkorteringstjeneste helt ved hjælp af nginx -konfigurationssprog alene.

For eksempel, hvis der /DragonFlyBSD/HAMMER.5skulle komme en anmodning om , ville den først blive omdirigeret internt til /d/HAMMER.5med det første omskrivningsdirektiv nedenfor (kun påvirke den interne tilstand, uden at HTTP -svar blev udsendt til klienten endnu), og derefter med den anden omskrivning direktiv, en HTTP-svar med en 302 Fundet statuskode ville blive udstedt til kunden til rent faktisk at omdirigere til den eksterne CGI-script af web- mand :

 location /DragonFly {
  rewrite ^/DragonFly(BSD)?([,/].*)?$ /d$2 last;
 }
 location /d {
  set $db "http://leaf.dragonflybsd.org/cgi/web-man?command=";
  set $ds "&section=";
  rewrite ^/./([^/]+)\.([1-9])$  $db$1$ds$2 redirect;
 }

Opdater Meta -tag og HTTP -opdateringsoverskrift

Netscape introducerede meta -opdateringsfunktionen , som opdaterer en side efter en vis tid. Dette kan angive en ny webadresse, der skal erstatte en side med en anden. Dette understøttes af de fleste webbrowsere. En timeout på nul sekunder påvirker en øjeblikkelig omdirigering. Dette behandles som en 301 permanent omdirigering af Google, hvilket tillader overførsel af PageRank til målsiden.

Dette er et eksempel på et simpelt HTML -dokument, der bruger denne teknik:

<html>
<head>
  <meta http-equiv="Refresh" content="0; url=http://www.example.com/" />
</head>
<body>
  <p>Please follow <a href="http://www.example.com/">this link</a>.</p>
</body>
</html>

Denne teknik kan bruges af webforfattere, fordi metataggen er indeholdt i selve dokumentet. Metatagget skal placeres i afsnittet "hoved" i HTML -filen. Tallet "0" i dette eksempel kan blive erstattet af et andet tal for at opnå en forsinkelse på så mange sekunder. Ankeret i sektionen "krop" er for brugere, hvis browsere ikke understøtter denne funktion.

Den samme effekt kan opnås med et HTTP refresh-header:

HTTP/1.1 200 OK
Refresh: 0; url=http://www.example.com/
Content-Type: text/html
Content-Length: 78

Please follow <a href="http://www.example.com/">this link</a>.

Dette svar er lettere at generere af CGI -programmer, fordi man ikke behøver at ændre standardstatuskoden.

Her er et simpelt CGI -program, der påvirker denne omdirigering:

# !/usr/bin/perl
print "Refresh: 0; url=http://www.example.com/\r\n";
print "Content-Type: text/html\r\n";
print "\r\n";
print "Please follow <a href=\"http://www.example.com/\">this link</a>!"

Bemærk: Normalt tilføjer HTTP-serveren automatisk statuslinjen og indholdslængdeoverskriften.

Den W3C fraråde brugen af meta refresh, da det ikke kommunikere nogen oplysninger om enten den oprindelige eller nye ressource, til browseren (eller søgemaskine ). W3C's retningslinjer for tilgængelighed for webindhold (7.4) afskrækker oprettelsen af ​​sider, der automatisk opdaterer, da de fleste webbrowsere ikke tillader brugeren at deaktivere eller kontrollere opdateringshastigheden. Nogle artikler, som de har skrevet om emnet, inkluderer retningslinjer for tilgængelighed for W3C-webindhold (1.0): Sørg for brugerkontrol af ændringer i tidsfølsomt indhold , brug standardomdirigeringer: knæk ikke tilbage-knappen! og Core Techniques for Web Content Accessibility Guidelines 1.0 afsnit 7.

JavaScript omdirigerer

JavaScript kan forårsage en omdirigering ved at angive window.locationattributten, f.eks .:

window.location='http://www.example.com/'

Normalt skubber JavaScript omdirigeringswebstedets URL til browserens historik. Det kan forårsage omdirigering af sløjfer, når brugerne rammer tilbage -knappen. Med følgende kommando kan du forhindre denne type adfærd.

window.location.replace('http://www.example.com/')

Imidlertid kan HTTP -headere eller opdateringsmetatag foretrækkes af sikkerhedsmæssige årsager, og fordi JavaScript ikke vil blive udført af nogle browsere og mange webcrawlere .

Rammeomdirigeringer

En lidt anden effekt kan opnås ved at oprette en inline ramme :

<iframe height="100%" width="100%" src="http://www.example.com/">
Please follow <a href="http://www.example.com/">link</a>.
</iframe>

En væsentlig forskel ved ovennævnte omdirigeringsmetoder er, at browseren for en rammedirektering viser rammedokumentets URL og ikke URL -adressen til målsiden i URL -bjælken. Denne tilsløringsteknik kan bruges, så læseren ser en mere mindeværdig webadresse eller bedragerisk skjuler et phishing -websted som en del af webstedspoofing .

Før HTML5 kunne den samme effekt udføres med en HTML -ramme, der indeholder målsiden:

<frameset rows="100%">
  <frame src="http://www.example.com/">
  <noframes>
    <body>Please follow <a href="http://www.example.com/">link</a>.</body>
  </noframes>
</frameset>

Omdiriger kæder

En omdirigering kan føre til en anden. For eksempel omdirigeres URL'en " http://wikipedia.com " (med "*.com" som domæne) først til https://www.wikipedia.org/ (med domænenavn i .org ), hvor du kan navigere til det sprogspecifikke websted . Dette er uundgåeligt, hvis de forskellige links i kæden betjenes af forskellige servere, selvom det bør minimeres ved at omskrive webadressen så meget som muligt på serveren, før den returneres til browseren som en omdirigering.

Wikipedia har som standard omdirigeret sine sider til HTTPS siden 2015.

Omdiriger sløjfer

Nogle gange kan en fejl få en side til at ende med at omdirigere tilbage til sig selv, muligvis via andre sider, hvilket fører til en uendelig række omdirigeringer. Browsere bør stoppe omdirigering efter et bestemt antal hop og vise en fejlmeddelelse.

HTTP/1.1 -standarden siger:

En klient SKAL opdage og gribe ind i cykliske omdirigeringer (dvs. "uendelige" omdirigeringssløjfer).

Bemærk: En tidligere version af denne specifikation anbefalede maksimalt fem omdirigeringer ([RFC 2068], afsnit 10.3). Indholdsudviklere skal være opmærksom på, at nogle klienter muligvis implementerer en sådan fast begrænsning.

Bemærk, at webadresserne i sekvensen muligvis ikke gentages, f.eks .: http://www.example.com/1 -> http://www.example.com/2 -> http://www.example.com/3 ...

Services

Der findes tjenester, der kan udføre URL -omdirigering efter behov, uden behov for teknisk arbejde eller adgang til den webserver, dit websted hostes på.

URL -omdirigeringstjenester

En omdirigeringstjeneste er et informationsstyringssystem, som giver et internetlink, der omdirigerer brugere til det ønskede indhold. Den typiske fordel for brugeren er brugen af ​​et mindeværdigt domænenavn og en reduktion i URL -adressen eller webadressens længde. Et omdirigeringslink kan også bruges som en permanent adresse for indhold, der ofte skifter værter, på samme måde som domænenavnsystemet . Hyperlinks, der involverer URL -omdirigeringstjenester, bruges ofte i spam -beskeder rettet mod blogs og wikier. En måde at reducere spam er således at afvise alle redigeringer og kommentarer, der indeholder hyperlinks til kendte URL -omdirigeringstjenester; Dette vil dog også fjerne legitime redigeringer og kommentarer og er muligvis ikke en effektiv metode til at reducere spam. For nylig har URL -omdirigeringstjenester brugt at bruge AJAX som en effektiv, brugervenlig metode til at oprette forkortede webadresser. En stor ulempe ved nogle URL -omdirigeringstjenester er brugen af ​​forsinkelsessider eller rammebaseret annoncering til at generere indtægter.

Historie

De første omdirigere tjenester udnyttede topdomæner (TLD) såsom " .til " (Tonga), " .at " (Østrig) og " .is " (Island). Deres mål var at lave mindeværdige webadresser. Den første mainstream -omdirigeringstjeneste var V3.com, der pralede med 4 millioner brugere på sit højeste i 2000. V3.com -succes blev tilskrevet at have en lang række korte mindeværdige domæner, herunder "r.im", "go.to", "i .am "," come.to "og" start.at ". V3.com blev opkøbt af FortuneCity.com, et stort gratis webhostingfirma, i begyndelsen af ​​1999. Da salgsprisen på topdomæner begyndte at falde fra $ 70,00 om året til mindre end $ 10,00, faldt brugen af ​​omdirigeringstjenester. Med lanceringen af TinyURL i 2002 blev en ny form for omdirigeringstjeneste født, nemlig URL -forkortelse . Deres mål var at gøre lange URL'er korte for at kunne poste dem på internetfora. Siden 2006, med en grænse på 140 tegn på den ekstremt populære Twitter -tjeneste, har disse korte URL -tjenester været stærkt brugt.

Henvisningsmaskering

Omdirigeringstjenester kan skjule henvisningen ved at placere en mellemliggende side mellem den side, linket er på, og dens destination. Selvom disse konceptuelt ligner andre URL-omdirigeringstjenester, tjener de et andet formål, og de forsøger sjældent at forkorte eller tilsløre destinationswebadressen (da deres eneste tilsigtede bivirkning er at skjule henvisningsinformation og give en klar gateway mellem andre websteder. ) Denne type omdirigering bruges ofte til at forhindre potentielt ondsindede links i at få information ved hjælp af henvisningen, f.eks. Et sessions-id i forespørgselsstrengen. Mange store community -websteder bruger linkomdirigering på eksterne links for at mindske chancen for en udnyttelse, der kan bruges til at stjæle kontooplysninger, samt gøre det klart, når en bruger forlader en tjeneste, for at mindske chancen for effektiv phishing .

Her er et forenklet eksempel på en sådan service, skrevet i PHP .

<?php
$url = htmlspecialchars($_GET['url']);
header('Refresh: 0; url=https://' . $url);
?>
<!-- Fallback using meta refresh. -->
<html>
 <head>
  <title>Redirecting...</title>
  <meta http-equiv="refresh" content="0;url=https://<?= $url; ?>">
 </head>
 <body>
 Attempting to redirect to <a href="https://<?= $url; ?>">https://<?= $url; ?></a>.
 </body>
</html>

Ovenstående eksempel kontrollerer ikke, hvem der kaldte det (f.eks. Ved henvisning, selvom det kunne være forfalsket). Det kontrollerer heller ikke den angivne URL. Det betyder, at en ondsindet person kan linke til omdirigeringssiden ved hjælp af en URL -parameter i sit eget valg fra enhver side, der bruger webserverens ressourcer.

Sikkerhedsspørgsmål

URL -omdirigering kan misbruges af angribere til phishing -angreb, såsom åben omdirigering og skjult omdirigering . "En åben omdirigering er et program, der tager en parameter og omdirigerer en bruger til parameterværdien uden nogen validering." "Skjult omdirigering er et program, der tager en parameter og omdirigerer en bruger til parameterværdien UDEN tilstrækkelig validering." Det blev afsløret i maj 2014 af en matematisk doktorand Wang Jing fra Nanyang Technological University, Singapore.

Se også

Referencer

eksterne links