WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   CSRF - Hur skyddar man sig? (https://www.wn.se/forum/showthread.php?t=18074)

bivald 2006-12-15 02:47

XSS attacker är alltid tråkiga men generellt sätt så kan en attackerare göra precis allt som en vanlig användare kan, med undantag för CAPTCHA eller något som kräver dens lösenord. Givetvis kan även captcha knäckas, men det försvårar nämnvärt.

Men då du bygger sidan från grunden skulle jag lägga mycket prioritet på att inte tillåta javascript från användare. Generellt sätt kan man tvinga (framförallt) IE att köra javascript på en rad sätt och även större communities (playahead, snyggast, anstalten m.fl.) har visat sig vara sårbara på en eller flera punkter där.

Skrev för övrigt en artikel om samma ämne och hur man som programmerare för ett community kan skydda sig för A List Apart, adress http://www.alistapart.com/articles/secureyourcode och http://www.alistapart.com/articles/secureyourcode2

Mycket av det om står ska en webmaster redan veta men med lite tur kan de flesta lära sig något nytt. Vid intresse kan ni med fördel kolla in diskussionen som följde då det kom upp flertalet bra poänger där.

Mvh/ Niklas

totoo 2006-12-15 06:10

Tack folk!

Det där med att skriva in sitt lösenord är kanske grejen. Jag ska fundera på vad det har för innebörder.

Bivald, xss är faktiskt inte problemet i detta fall, det är jag väl skyddad emot, detta gäller ju externa länkar - där personer skriver en länk i forumet "kolla min fina bild" - sedan har de ett javascript på SIN site, så nu blandar du ihop problematiken lite.

Men jag ska ändå titta på dina länkar imorrn, det finns säkert något matnyttigt ändå.

iXam 2006-12-16 19:24

Du kanske kan använda tekniken jag beskriver i min lilla text på http://www.netrogenic.com/public/linkprotection/
Om du modifierar tillvägagångssättet lite dvs.

jahaa 2006-12-16 21:05

Citat:

Ursprungligen postat av martine
Citat:

Ursprungligen postat av totoo
Jag vet inte om jag kan använda REFERER till något, för det är väl browsen själv som skickar denna? Och vad jag vet kan både browser och brandvägg se till att dett aldrig kommer fram, då blir det klurigt. Men den kanske hjälper någorlunda iaf.

Ja, nog är det browsern som skickar den (jag är inte särskilt insatt i hur HTTP funkar rent praktiskt), men om en angripare vet att du kollar och förväntar dig att rätt REFERER kommer med (jag kan inte tänka mig att den försvinner i brandväggen eftersom den är en del av requesten, men som sagt, inte mitt område). Angripare struntar nog ofta i att skicka någon REFERER men såvitt jag förstår skickar i alla fall webläsarna den.

Kanske du ska fundera på att kräva användarnamn och lösenord över https med alla requester som gör något dramatiskt. (jag vet inte hur du sköter inloggningen i övrigt men kräver man lösenord med samma request så borde det väl vara svårt att komma runt sålänge användarna inte är korkade nog att själva skriva in sin lösen på bluffsidan)

Referer går enkelt att tabort för "sekretessskäl".

Men alternativet man kan göra istället är att skapa en "egen" referer. dvs. mer eller mindre addera lite data (token) per http request i en cookie. Denna jämförs sedan med den som sparades på serversidan. Det negativa med detta är att det tar en del kraft.

Rekommenderar ej att använda IP-adress eller user-agent då dessa kan förändras genom att vissa ISP:er vill spara bandbredd(proxy servrar som cachar vanliga http requests el dyl. har inte riktigt koll på proceduren) och därmed skicka andra ip-adresser respektive user-agents. Vet inte riktigt hur vanligt detta är men det förekommer.

För dom som inte använder ett liknande verktyg så rekommenderar jag firefox tillägget "Tamper Data" vilket gör att ni kan testa era webbapplikationer enkelt.


Alla tider är GMT +2. Klockan är nu 16:19.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson