webForumDet fria alternativet

xmlhttp mot min server.

11 svar · 349 visningar · startad av KalsongCesar

KalsongCesarMedlem sedan mars 2001339 inlägg
#1

Jag har nyligen satt mig in lite i xmlhttp och tycker att det fungerar fin, men då slog det mig att kan jag ta vilken information som helst (i princip) från andra sidor så kan väl andra göra det mot mig. Jag undrar om man kan kolla om det är ngn där "ute" som kör en komponent som hämtar information från min sida?

Jag använder enbart xmlhttp mot sidor där jag har lov att hämta information.

kul med tomtesmileys.. :e

nikoMedlem sedan juni 20022 599 inlägg
#2

Ja. Genom att tita på Request.ServerVariables("HTTP_USER_AGENT") så kan man i allmänhet gissa vad det är som surfar mot sidan. En webläsare, mobiltelefon, webspindel osv .. Fast säker kan man aldrig vara. Det finns inget som hindrar en applikation från att utge sig för att vara en annan.

Om du vill veta hur just xmlhttp-komponenten identifierar sig så är det bara att använda den mot din egen sida och logga Request.ServerVariables("HTTP_USER_AGENT").

KalsongCesarMedlem sedan mars 2001339 inlägg
#3

gjorde en sida som skriver ut Request.ServerVariables("HTTP_USER_AGENT") och kopplade min xmlhttp sida mot den och det som skrevs ut var
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)

inte mycket att läsa ut där vad jag ser..
Hoppas jag förstod din tankegång rätt..

KalsongCesarMedlem sedan mars 2001339 inlägg
#4

Jag kör den mot http://neural.cs.nthu.edu.tw/jang/sandbox/asp/examples/request5.asp
som listar servervariablerna.. men jag kan inte se ngt eller så vet jag inte vad jag ska titta efter.

nikoMedlem sedan juni 20022 599 inlägg
#5

Ja? Slutsatsen är väl enkel. XMLHTTP identifierar sig på samma sätt som IE. Alltså går det inte att på nåt bra sätt skilja mellan legitima surfare och automatiserade komponenter som "stjäl" data. (Iaf inte om dom använder XMLHTTP).

Det blir väl svaret på din fråga:

Jag undrar om man kan kolla om det är ngn där "ute" som kör en komponent som hämtar information från min sida?

KalsongCesarMedlem sedan mars 2001339 inlägg
#6

Tack.. glad för svaret men mindre nöjd att man inte kunde se det. Inte så att webservern logga ngt mer eller annorlunda? Men då är jag ju i fel forum ...

@ndersMedlem sedan juni 200032 969 inlägg
#7

Men, om det nu är XMLHTTP folk använder utifrån, så kan du ju se till att analysera HTTP_REFERER. Om inte HTTP_REFERER är din website, släng tillbaka "du är en ful fisk!".

Mvh,

nikoMedlem sedan juni 20022 599 inlägg
#8

Men, om det nu är XMLHTTP folk använder utifrån, så kan du ju se till att analysera HTTP_REFERER. Om inte HTTP_REFERER är din website, släng tillbaka "du är en ful fisk!".

Visst. Fast det hindrar ju inte bara komponenter utan även "mänskliga" surfare som går direkt mot en sida (via bokmärke tex).

Man kan krångla till det med cookies och allt möjligt. Men summa summarum är att man aldrig med 100% kan se om en http-request kommer från en komponent eller en webläsare. I själva verket är ju komponenten en sorts webläsare (som aldrig renderar HTML:n).

KalsongCesarMedlem sedan mars 2001339 inlägg
#9

ok.. håller med om att referer stoppar mina vanliga surfare, det är ju inte ett intranät och det kan jag ju skydda på annat sätt. Jag var mest nyfiken på om man kunde se dessa spindlar eller vad man ska kalla dem som går ut och suger upp information... inte hindra bara föra stat över dem... Kanske finns ngn komponent som jag kan ha på servern då?

@ndersMedlem sedan juni 200032 969 inlägg
#10

KalsongCesar skrev:

Kanske finns ngn komponent som jag kan ha på servern då?

Så länge monstren identifierar sig som IE, så känns det svårt. :(

Mvh,

nikoMedlem sedan juni 20022 599 inlägg
#11

Här är ett exempel på en http-header som en klient normalt skickar till en webserver då den begär en sida.

GET /minsida.asp HTTP/1.1
Accept: */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0)
Host: [url]www.minserver.com[/url]
Connection: Keep-Alive
Cache-Control: no-cache

Problemet är som synes att varje klient kan skriva vad som helst på rad 5. Servern har inget "magiskt" sätt att verifiera detta. Det är ju tex inte helt ovanligt att Opera påstår att den är IE. På samma sätt kan alla komponenter/spindlar/sökmotorer skriva vad de vill där.

KalsongCesarMedlem sedan mars 2001339 inlägg
#12

Tack så mycket för hjälpen.. nu ska jag ut och spindla ;)

128 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)