Just nu i M3-nätverket
Gå till innehåll

Bara korkat eller alternativ lösning?


mindsleep

Rekommendera Poster

Hej goda vänner!

 

Sitter här och funderar. Vill gärna ha en hel hop med synpunkter ang. detta inlägg. Gärna från er som sysslar med avancerad ASP och hackning!

 

ok....ponera följande.

 

Vi har en asp sida för inloggning. En vanlig ".txt" fil som har ett "plain text" lösenord i sig.

 

När man fyllt i lösen och klickat på "Logga in" så hämtar den lösenordet från txt-filen och jämför med det man skrivit in.

 

Mycket korkat eller hur. För om man skulle skriva in i webbläsarens adress fält: http://www.exempel.com/losen.txt

så skulle man se lösenordet. Men om jag skulle döpa om txt-filen till "a3rjuif21.txt" istället för "losen.txt" så minskar ju risken att man kan skriva in i adressfältet och se filen. Men hur mycket minskar risken med?

Är detta en hyfsad alternativ lösning?

 

Beskriv gärna varför detta är en idiotisk/hyfsad lösning!

 

MVH

Mindsleep

 

Länk till kommentar
Dela på andra webbplatser

Jag pysslar inte alls med ASP, vet inte alls hur det fungerar, så det här är förmodligen helt konstigt tänkt. Men om ASP är ett sätt att programmera, skulle man inte kunna lägga in en kryptering av lösenordet innan jämförelsen och sedan ha ett 'krypterat facit' på textsidan? Då spelar det ju ingen roll att man kan läsa det. Förutsätter givetvis att krypteringsalgoritmen inte heller går att komma åt.

 

Länk till kommentar
Dela på andra webbplatser

Så skulle man ju villa ha det. Men vad jag vet så går det inte att kryptera hur som helst i ASP. Det ska installeras komponenter för det på server sidan. Vad gör man då om man inte har tillgång till servern?

 

Men absolut, kryptering vore ju bäst. Men vad jag vet så går detta inte i ASP 3.0, eventuellt i .NET som jag inte behärskar.

 

MVH

Mindless

 

Länk till kommentar
Dela på andra webbplatser

Clas Ericson

Är det en eller flera användare det rör sig om?

 

Döper man om textfilen till ngt väldigt konstigt så visst minskar risken väsentligt att någon skulle kunna "klura" ut sökvägen... Sedan finns det säkert någon statistiker som kan räkna på det, men inte jag och speciellt inte så tidigt på morgonen.

 

Om du ska/kan använda en textfil ändå, beror ju på hur kritisk din applikation är. Jag misstänker att den är för privat bruk, eller?

 

//Clas

 

Länk till kommentar
Dela på andra webbplatser

Är detta en hyfsad alternativ lösning?

Security by obscurity (http://www.wikipedia.org/wiki/Security_by_obscurity ) funkar inte och är lika säkert som ingen säkerhet så jag skulle svara nej.

 

Ponera att webbservern i samband med fel- eller omkonfigurering tillfälligt får för sig att skicka tillbaka dina asp-sidor som text (istället för som processade filer) då står det förmodligen i klartext var du har alla dina användare, det bästa då är naturligtvis inte om det är svårt att gissa vilken filreferens som är lösenordsfilen utan om det går att komma åt den eller inte.

Sånt händer, jag har sett det flera gånger på riktigt stora sajter.

 

Genom att flytta textfilen till någonstans på servern där de inte går att komma åt utifrån (alltså utanför www-rooten) så kan du behålla samma lösning (ASP-sidan lär ju inte behöva använda http för att komma åt filen) men få en hyffsad säkerhet.

 

Har du inte den möjligheten så tycker jag att det minsta du ska göra är att envägskryptera lösenorden, det innebär att du innan du sparar lösenorden i text-filen kör dem genom en krypteringsfunktion som bara går åt ett håll (dvs som gör det omöjligt att få fram lösenordet från det krypterade lösenordet).

Vid inloggning kör du det inmatade lösenordet genom samma funktion och jämför sedan de envägskrypterade strängarna med varandra.

 

Ovanstående kan tyckas vara overkill om lösenordsskyddet gäller vilka som ska få skriva i forumet på fotbollsföreningens hemsida men det är det inte. Genom att fråga användaren om namn och lösen så ger du användaren ett intryck av att du gör nåt säkert, det är därför otroligt vanligt att folk har samma usernamn och password på alla eller iaf många ställen, om din lösning är osäker så är chansen hyffsat stor att du därigenom gör användarens andra tjänster osäkra (och egentligen borde han få skylla sig själv men eftersom det inte kostar nåt extra att göra det bättre så...).

 

[inlägget ändrat 2003-04-26 08:05:49 av fhe]

Länk till kommentar
Dela på andra webbplatser

Det finns inget som hindrar att du gör ett litet krypto i ASP, det är ju vanlig matte och stränghantering.

 

Du måste inte använda avancerade RAS/3DES-komponenter för att det ska bli ett krypto.

 

 

Länk till kommentar
Dela på andra webbplatser

Clas Ericson
Ponera att webbservern i samband med fel- eller omkonfigurering ...

Ovanstående kan tyckas vara overkill om lösenordsskyddet gäller vilka som ska få skriva i forumet på fotbollsföreningens hemsida men det är det inte. ...

Ponera att en felkonf. leder till att mappen där textfilen lagts utanför rooten blir åtkomlig från nätet? Det finns alltid sådana här risker. Det går inte att komma ifrån de. Frågan är som alltid dock vilken nivå man väljer att lägga sig på. Är det bara han själv som ska använda appplikationen så är han ju medveten om problemen och behöver kanske inte ta till grövre verktyg än så. Jag håller med dig delvis i ditt resonemang, men enligt dig så kan man då alltid argumentera för en säkrare lösning ända tills man nått samma nivå som exempelvis banker har och då blir det ju "overkill" om det bara är fotbollsföreningens hemsida.

 

Har du inte den möjligheten så tycker jag att det minsta du ska göra är att envägskryptera lösenorden, ...

Det finns inget som hindrar att du gör ett litet krypto i ASP, det är ju vanlig matte och stränghantering.

Hur gör du "ett litet envägskrypto" i VBScript? Hur vet du med säkerhet att det är envägs?

 

 

//Clas

 

Länk till kommentar
Dela på andra webbplatser

Hur gör du "ett litet envägskrypto" i VBScript? Hur vet du med säkerhet att det är envägs?

 

Varför skulle det inte gå ? Det finns både MD5 och RC4 i ren ASP, det är som sagt bara lite stränghantering:

 

http://rossm.net/Electronics/Computers/Software/ASP/MD5.htm

http://rossm.net/Electronics/Computers/Software/ASP/RC4.htm

 

[inlägget ändrat 2003-04-26 09:54:32 av xYz]

Länk till kommentar
Dela på andra webbplatser

Clas Ericson
Varför skulle det inte gå ? Det finns både MD5 och RC4 i ren ASP, det är som sagt bara lite stränghantering:

Nej, det är klart. Om man använder en färdig algoritm så är det ju inga problem alls. Jag uppfattade fhe som att man skulle hitta på någon egen hashning eller kryptering och då krävs det ju lite mer kunskaper.

 

//Clas

 

Länk till kommentar
Dela på andra webbplatser

Nej, det är klart. Om man använder en färdig algoritm så är det ju inga problem alls. Jag uppfattade fhe som att man skulle hitta på någon egen hashning eller kryptering och då krävs det ju lite mer kunskaper.

 

Ok, sorry, jag trodde du var inne på samma som mindsleep, "det går inte för det är ASP".

 

En rätt tröttsam attityd.

 

Länk till kommentar
Dela på andra webbplatser

Jag uppfattade fhe som att man skulle hitta på någon egen hashning eller kryptering och då krävs det ju lite mer kunskaper.

 

Det kan man ju göra om man vill, det krävs inte så mycket kunskaper för att göra en tillräckligt bra envägskryptering eller hashning.

 

 

Länk till kommentar
Dela på andra webbplatser

Ponera att en felkonf. leder till att mappen där textfilen lagts utanför rooten blir åtkomlig från nätet?

 

Klart du alltid har risker men det innebär ju inte att man inte ska göra vad man kan för att minimera dem, eller?

 

Hur gör du "ett litet envägskrypto" i VBScript?

Jag gör väldigt lite VBScript öht så jag lämnar kodandet åt nån annan men speciellt svårt lär det inte bli.

 

Hur vet du med säkerhet att det är envägs?

 

Om du inte kan följa algoritmen baklänges och komma tillbaka till orginalet så är chansen rätt stor. Det gör det inte per definition säkert men det gör det iaf svårare för den som kommer över filen att få reda på folks lösenord.

 

Svårigheten ligger inte i att göra algoritmen envägs utan i att göra en algoritm som gör det möjligt att hitta andra tecken-kombinaioner som ger samma hash.

[inlägget ändrat 2003-04-26 12:17:07 av fhe]

Länk till kommentar
Dela på andra webbplatser

Clas Ericson
Det kan man ju göra om man vill, det krävs inte så mycket kunskaper för att göra en tillräckligt bra envägskryptering eller hashning.

Det är klart att det krävs speciella kunskaper för det. Inte räcker det med att "läsa igenom Webstudios asp-skola". Dessutom måste man kunna bedöma att den är "tillräckligt" bra och då krävs det än mer kunskaper om kryptering, hashning och dylikt.

 

//Clas

 

Länk till kommentar
Dela på andra webbplatser

Clas Ericson
Klart du alltid har risker men det innebär ju inte att man inte ska göra vad man kan för att minimera dem, eller?

Nej, självklart ska man försöka att minimera riskerna, men lite av min poäng i det jag skrivit tidigare har varit att man måste göra en bedömning av hur långt man ska gå. Utifrån det aktuella fallet måste man alltid bedöma vilken nivå som är lämplig. Annars hamnar man där det krävs certifikat och dylikt för att kunna logga in på administrationssidorna till en privat hemsida, allt för att minimera riskerna.

 

För övrigt har vi glidit långt utanför den ursprungliga frågan, så vi kanske ska låta detta bero?

 

//Clas

 

[inlägget ändrat 2003-04-26 12:38:26 av Clas Ericson]

Länk till kommentar
Dela på andra webbplatser

Inte räcker det med att "läsa igenom Webstudios asp-skola".

 

Det är det väl ingen som har påstått?

 

En tillräckligt bra hashning kan du hitta på massor med ställen, det är bara att googla på det. Har du inte kunskaperna så ligger svårigheten i att förstå vad koden gör (och att den är tillräckligt bra) men om alternativet är INGEN hashning så förstår jag inte riktigt vad du försöker säga, att ingen hashning skulle vara bättre?

 

 

Länk till kommentar
Dela på andra webbplatser

Hej vänner!

 

Tackar alla för svaren. Givetvis blir alla plussade för sina inlägg. Jag är mycket nöjd med svaren.

 

Vad jag kan bedömma så är det hyfsat ok att använda ett udda fil-namn och sedan lägga filen i en "secure" mapp eller dyl.

 

Ännu bättre är det att använda MD5 (tack för tipset xyz, kommer att använda det i forts.)

 

En liten kommentar till länken http://www.wikipedia.org/wiki/Security_by_obscurity

 

som gavs av fhe (tack!).

Är inte all säkerhet "security by obscurity"?

 

Det finns bara olika nivåer på "security by obscurity".

Så ser jag då det!

 

Ang. debatten hashens vara eller icke vara så anser jag att Clas har en poäng i att krypterings alghoritmer ska inte göras av "normala" personer. Det krävs en utmärkt mattematiker och väl insatt i kryperings tekniker för att få fram en bra teknik. Jag må ha fel. Men så ser jag det.

 

Tack ännu en gång för alla kvalificerade svar.

 

MVH

Mindsleep.

 

Länk till kommentar
Dela på andra webbplatser

Är inte all säkerhet "security by obscurity"?

 

Njae, security by obscurity går ut på att försöka kamoflera vidöppna dörrar så att ingen hittar dit. Säkerhet går ut på att stänga dörrarna, graden av säkerhet avgör därefter hur mycket lås, larm och annat man har för att upptäcka om och förhindra att nån öppnar dörren ifråga.

 

Kanske en kass liknelse men det var det bästa jag kom på just nu :-)

 

 

[inlägget ändrat 2003-04-26 15:55:00 av fhe]

Länk till kommentar
Dela på andra webbplatser

Jag bara filosoferade. Men är det inte så att säkerhet i grunden är just att kamoflera och gömma undan. Kryptering är ju just det att gömma undan och maskera. Är detta då inte bara en avanserad form av "security by obscurity"?

 

Men om det går att gömma så måste det ju gå att hitta. Är det inte därför det inte finns någon 100%säker säkerhet?

 

Det är just detta som gör att jag inte kan begripa hur MD5 fungerar. Jag menar, om det går att "kryptera" så måste det ju gå att "avkryptera".

 

Får ta och titta på källkoden!

 

Oj, vad jag filosoferar, det är nästan så jag blir rädd för mig själv :)

 

MVH

Mindsleep

 

Länk till kommentar
Dela på andra webbplatser

Det är just detta som gör att jag inte kan begripa hur MD5 fungerar. Jag menar, om det går att "kryptera" så måste det ju gå att "avkryptera".

 

Näpp, och det går matematiskt bevisa men fråga inte mig hur man gör det.

 

Tyvärr har inte allt inom matematiken en enkel motsvarighet i verkliga livet annars är det ju som du säger att "allt som göms kan hittas".

 

 

Länk till kommentar
Dela på andra webbplatser

Ungefär som:

 

Nu låser jag ytterdörren till huset, men ingen kan öppna den, inte ens jag :)

 

MVH

Mindsleep

 

Länk till kommentar
Dela på andra webbplatser

Kryptering handlar förvisso om att dölja men "Security by obscurity" är ett relativt väldefinerat koncept och inte ett samlingsnamn för allt som har med döljande att göra.

(Obscurity betyder föresten otydlighet, inte att man döljt något. Att kalla lösenordsfilen oviktigt.txt i hopp att ingen ska bry sig om att titta i den är typisk sådan otydligthet)

 

Jag menar, om det går att "kryptera" så måste det ju gå att "avkryptera".

 

Nej. Tänk på två tal, multiplicera dem och dela resultatet med summan av de två. Addera därefter siffrorna i resultatet.

 

Ovanstående är INTE en bra algoritm för just sånt här men om du ger resultatet till en polare och säger att han får 1000 spänn om han räknar fram de två tal du utgick från på första försöket så kan du vara hyffsat säker på att han inte kan räkna ut det.

Om du ger honom algoritmen kan han i just det här fallet säkert räkna fram andra/alla tal som skulle ge samma resultat och det gör algoritmen dålig men den var mest ett exempel på att allt inte går att köra baklänges.

 

 

[inlägget ändrat 2003-04-26 17:15:21 av fhe]

Länk till kommentar
Dela på andra webbplatser

Null or not an object

Matematik...

 

Om man tänker sig att döpa filen till:

 

abcdefghij.txt så innehåller namnet 10 tecken. I alfabetet finns det 25 potentiella tecken (exkl åäö). Antalet kompinationer skulle väl då bli 25 upphöjt med 10? Eller är det för enkelt?

 

Har vi något mattesnille här?

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...