Om ett försök att stjäla en bild hos mig som inte finns

| 2 Comments

Hmm…

Den senaste tiden har jag sett i mina loggar att "någon" försökt stjäla bandbredd av mig genom att olovandes använda en adress till en bild på en av mina webbplatser direkt i sin HTML-kod…

Jaha tänker du kanske då, det där händer väl varje dag och världen är full med puckon så varför skriver du om det här?

Det är väl bara att utsätta puckot för en chock genom att byta ut bilden mot något lagom provokativt och ge det en rejäl läxa på liknande sätt som Mike Davidson gjorde med en viss amerikansk presidentkandidats MySpace-krypin tidigare idag?

Ja så kan man ju tycka, och det var också min första reaktion, men efter att ha analyserat fenomenet lite mer bestämde jag mig för att skriva en artikel om det istället eftersom det verkar uppenbart från min sida att den (eller de) som ligger bakom detta synbara försök till "bandwidth leeching" mest troligt inte har en susning om att det ens pågår - och att det kanske finns en läxa att lära sig här för fler av oss som jobbar med webbplatser som skall flyttas från "stagingmiljöer" eller "prototypservrar" till produktion när de driftsätts!

Men läs mer vetja! Det kommer snart att klarna - jag lovar :)

Problemet

Efter att ha bytt till Drupal började jag hantera flera av mina webbplatser från samma kod och samma databas - det är ju något som Drupal har ett bra stöd för, så varför inte? Nackdelen var möjligen att alla automatgenererade sökvägar (jag kör ju med "friendly URLs") genereras aningen annorlunda än de genererades i Wordpress och att jag därför blev tvungen att lägga ner ett ganska stort arbete på att gå igenom "404-loggarna" och knappa in de adresser som slutat fungera (dvs givits andra namn efter flytten) manuellt (jag vill ju att inkommande länkar skall fungera ;) ) .

Efter att ha sysselsatt mig med det ett tag upptäckte jag i min "404-rapport" att en adress - närmare bestämt

upload/bilder/gui-element/pil_svart_dubbel.gif

dök upp i tid och otid.

Nu är det bara så att jag inte någonsin har haft någon "upload"-katalog direkt i webbroten såvitt jag vet - och att "pil_svart_dubbel.gif" inte heller förekommit i någon av mina designer om jag kommer ihåg rätt….

Så vad göra? - Spåra orsaken naturligtvis.
Buss på loggarna…

Mystiken tätnar

I loggarna hittade jag snabbt de här 404-posterna och kunde konstatera att besökarna som försökte använda bilden som inte fanns utan undantag angav riskdagen.se som referrer.

Hmm, vänta nu! riksdagen.se - W T F !!! Försöker *RIKSDAGEN* leecha en bild som inte finns från min webbplats???

Jag förstod i det här läget ingenting, trots att det framgick i svart på vitt ur mina loggfiler! Nu jäklar - nu skall här kollas upp! Dags att ta reda på vilken sida som anges som referrer i loggen…

Varför försöker man stjäla en bild som inte finns!

Jag började med att surfa in på sidan ifråga. View Source och fram med sökverktyget. Låt se "xhtml.se" - Näpp. "jarvklo.se" - nähe. Hmm… Men om jag söker efter "pil_svart_dubbel.gif" då?

BINGO - men vad sjutton? Adressen går ju inte till mig… Men vad är det här? http://webbprototyp/upload…. 

Se en skärmdump av koden i fråga

AHA!

Jag har alltså blivit utsatt för det här enbart pga att jag är stolt ägare till domänen http://webbprototyp.se och enbart pga att det finns någonting därute - en viss variant av MSIE6 (alla besökare som försökte få fram bilden använde MSIE6), en proxy , en brandvägg, en post i någon central "hostfil", eller vadvetjag - som omformar länkar som börjar med "http://webprototyp" till att istället uppsöka "http://webbprototyp.se".

Nu förstår jag!

Det jag råkat ut för verkar alltså vara en kombination av dålig kvalitetssäkring av kod (dvs att ingen upptäckt att CMS:et på riksdagen.se felaktigt genererar enstaka bild-taggar som refererar till webbplatser som inte finns publikt), en överambitions "vänliggörare" någonstans som får anrop till "webbprototyp" att gå till "webbprototyp.se" + att jag då råkar ha en domän vars namn gissingsvis på så sätt liknar namnet på den staging- eller utvecklingsserver som används(/använts) under någon del av framtagningen av riksdagens webbplats EPIServermallar!

Spekulation

Det här innebär ju att de som utvecklar designen på riksdagen.se, om jag gissar rätt, förmodligen inte ens ser att "dubbelpilen" saknas ute på webben (eftersom de förmodligen har åtkomst till stagingservern med namn "http://webbprototyp" där filen förmodligen finns när de skall kolla av resultatet mot det grafiska profil-dokumentet, och på så sätt faktiskt antagligen ser bilden fast från fel server - en från sitt interna nät).

Parallellt fenomen

OK. I det här fallet är det ett ganska harmlöst fenomen, det medges. Och visst har jag varit med om att råka göra samma misstag (även om det i det fallet aldrig hann gå ut publikt eftersom det fastnade i kvalitetssäkringen ;) ) - Men - det fick mig att tänka på en historia som en vän och kollega berättade för mig för några år sedan om hur han nästan råkade förevisa hårdporr av misstag för en kund vid en webbgränssnittsdemonstration och att den historien tillsammans med en analys av det här fenomenet kanske kan bli en nyttig tankeställare för fler än bara mig…

En gång i tiden hände det sig… 

Min kollega hade som uppgift att projektleda fram ett webbgränssnitt. Det var i ett tidigt skede av utvecklingen, och han hade precis fått en första HTML-prototyp av utvecklarteamet och nu skulle den förevisas för kunden. Kollegan är en mycket noggrann person, så han hade naturligtvis testat alla länkar grundligt för att se vad som fanns infört och vad som inte fanns med - dvs han hade kvalitetssäkrat genom att testa hela klabbet i en webbläsare, och det utan problem. De länkar som gick till delar som inte skulle vara med i leveransen av det här stadiet resulterade i blanka sidor.

Väl ute hos kunden fick kollegan en stund över innan sin förevisning, och noggrann som han är passade han på att testa en gång till… Med påföljd att hans skärm fullkomligen överflödades av sidor från en ökänd porrsite… Sidorna som dök upp var dessutom av den typen som öppnar sig själv tio gånger i nya fönster för varje fönster man försöker stänga (det här var innnan webbläsarna började hantera Javascriptsäkerhet och innehålla motåtgärder mot sånt) - så han fick helt enkelt simulera strömavbrott (dra ut elkabeln till datorn) och starta om.

Demonstrationen gick sedan bra! - för han visste vilka länkar som enligt specifikation skulle fungera och höll sig till att bara använda dem och var inte längre frestad att klicka på några av de andra.

Väl hemkommen undersökte kollegan koden bakom sidorna och insåg med ett gapflabb att samtliga länk-taggar som inte skulle vara med i leveransen försetts med en och samma adress (ja, du vet - sådär som man gör som utvecklare när man enkelt vill kunna hitta alla länkar man måste åtgärda senare och behöver ett gemensamt mönster att söka efter) - och att den adressen råkade vara "http://xxx"…

Gapflabbet kom sig av insikten att det som hänt var att webbläsaren i sin hjälpsamhet naturligtvis hade lagt till ett ".com" när han klickade på länken och den inte hittade just "xxx", plus att skillnaden mellan testerna på hans kontor och fenomenet hos kund var att han på kontoret satt innanför en brandvägg som spärrade bort porrsiter - något som kunden uppenbarligen inte gjorde vid tillfället :)

såkandegå

Slutsats och Lärospån

Ja, vid det här laget ser kanske du också vart jag vill komma med det här.

Jag vill helt enkelt påpeka att man bör testa sina publika webbplatser även utanför utvecklingsmiljöns skyddande skal och utanför den säkra bubblan av sitt utvecklingsnäts barriärer innan man släpper dem publikt.

… och att man alltid, utan undantag, bör använda "example.se", "example.com" eller iallall en "example"-domän för länkar som skall användas för tillfällig utfyllnad eller som exempel… ("example"-domänerna är helt enkelt reserverade för sådana ändamål) 

PS

… och ja, jag har skickat en länk till den här artikeln till webbansvarig för riksdagen.se också. Det där med att lägga ut kontroversiella bilder är inte min grej, och den där dubbelpiladressen lär få fortsätta vara en 404 även framöver. Om inte annat för att jag inte är på bushumör just nu. ;)

Men jag vill påpeka för er (fåtal) andra därute som faktiskt *medvetet* leechar mina bilder (jag ser er såklart i loggarna) att de bilderna inom kort kommer att bytas ut mot något helt annat och att det bara är för er att sluta upp med att tafsa på min bandbredd.

Ni har blivit varnade ;)

2 Comments

Ja, där ser man, lite lustigt :)

Vilken story! Märkligt men kul ;)

Powered by Movable Type 4.3-en