"Allan Unnerup" <alu@udkik.dk> skrev i en meddelelse
news:UBel9.41352$Qk5.1734001@news010.worldonline.dk...
> Jeg har en database, som kan tilgås via nogle servlets.
>
http://www.yachtdatabase.com/yylist.jsp
> Hvilke muligheder er der i Java for at gøre systematisk download (tyveri)
af
> data mest mulig besværlig?
>
> Jeg forestiller mig følgende algoritme:
> Hvis kombination af IP-adresse, browser og styresystem foretager mere end
N
> opslag i databasen inden for tidsintervallet T vil kombinationen ikke
kunne
> foretage opslag i en given periode.
>
> Hvilke andre muligheder er der i Java for at få oplysninger om klienten,
som
> kan benyttes til at identificere brugeren?
For nu at vende tilbage til de rent tekniske muligheder.
En af de mere spidsfindige teknikker er at lægge gift ud.
Du kræver at alle skal have en session.
Du ændrer dine opslag til at bruge numre i stedet for båd id'er. Så der står
fx ikke
http://www.yachtdatabase.com/yyshow.jsp?id=BAVARIA960 men i stedet
http://www.yachtdatabase.com/yyshow.jsp?id=371
Evt laver du det om til javascript, så linkene laves gennem script - så kan
man ikke så nemt sætte en robot på.
Så lægger du giften ud, dvs både der ikke findes - hvis en session så
tilgår et af de falske id'er, så er det nok en robot/et program der søger
alt igennem.
Du giver dem bare en tilfældig båd, men alle efterfølgende forespørgsler fra
den session giver du den rigtige båd men ganger alle mål, tal osv med +-
25%.
Det besværliggør det da lidt, og hvis han ikke er kvik, ender han med en
ubrugelig database.
Hvis du skal være endnu mere udspekuleret kan du evt også lægge links til
giften ud i dine sider - bare sørg for (fx gennem styles), at de ikke er
synlige for almindelige brugere.
Hvis du vil gøre det lidt sværere, kan du jo sætte en ekstra checksum på
alle links, og lade den blive beregnet i javascript - fx som
MD5(bådid+sessionid). Så skal hans robot kunne
køre MD5 javascript beregningsrutinen for at generere den rigtige checksum.
Naturligvis validerer du lige checksummen på serveren, inden du udleverer
data.
Men en rigtig ihærdig hacker kan du jo nok ikke stoppe.
Rent juridisk kan det måske være en fordel at lægge et par "tekstbomber"
ind - dvs fx bevidste stavefjel, som du bagefter kan bruge til at
dokumentere at han har hugget dine data.
God fornøjelse!
Niels Harremoës
>
> Med venlig hilsen
> Allan
>
>