Avatar billede EveryMA Mester
04. oktober 2014 - 12:22 Der er 19 kommentarer og
1 løsning

IP = sikkert login?

Hej.
Jeg har længe eftersøgt et sikkert loginsystem, da jeg tidligere altid har haft uventet besøg. Selv det her med paramter, som jeg har læst mig til på experten, har ikke fungeret for mig.

Nu er jeg kommet på en anden idé - bør IP ikke være et sikkert loginsystem?
Altså at en person tilgår en bestemt side, og hvis hans IP matcher IP'erne i databasen (eller i filen), så er det tilladt adgang. Ellers ikke.

Selvfølgelig kræver det, at man altid tilgår systemet på sit eget netværk, men i dette tilfælde er det også et krav. (der er ikke tale om en side hvor man opretter profil og logger ind, som facebook, twitter etc.)

Uden at skulle skrive bruger og kode - bør IP så ikke være en meget sikker metode?
Avatar billede larsen45 Juniormester
04. oktober 2014 - 12:46 #1
IP adresse login er ligeså stort et problem ville jeg tro, da folk skifter IP adresser hele tiden, du kan endda på under 1 minut hente apps til din browser f.eks. chrome som ændrer din ip adresse. Og de fleste danskere idag rykker meget rundt, så sidder de på nettet derhjemme, på jobbet, hos familie eller venner eller i den lokale sport klub, bibliotek, wifi i toget eller det lokale pizzaria ja der er nok af steder hvor de er på andre IP adresser.
Avatar billede softspot Forsker
04. oktober 2014 - 15:46 #2
Jeg tror du først og fremmest skal finde ud af, hvorfor du får uventede gæster på besøg og så lukke hullerne derfra. Det er bedre, at håndtere det faktiske problem end at gætte på, hvad problemet er.

Hvordan har du implementeret "det her med parametre" og hvad har du ellers gjort for at sikre dine sites?

Umiddelbart beskytter parametre dig kun mod SQL Injections, hvilket ikke hjælper meget, hvis angriberne benytter XSS til at lokke folks brugernavn og kodeord fra dem, eller udfører session hijacking og på den måde kan komme til dine brugeres data. Det er altså ikke nok, at du kun sikrer dig på én front, når der er 100 andre fronter, som (måske) får lov at flyde og være pivåbne.
Avatar billede EveryMA Mester
04. oktober 2014 - 20:03 #3
larsen45 ->
men HVORFOR er IP et problem? Som jeg skriver, så skal siden kun tilgås fra det samme netværk - det er ikke en offentlig profil, man oprettet og så kan logge ind på fra pizzariaet. Man skal kun kunne tilgå siden hjemmefra, fra eget netværk - ergo er det vel ALTID samme ip?

softspot ->
Jeg aner ikke hvordan folk kommer ind. Og jeg har heller ikke gættet, jeg har ledt efter spor, men uden held. Men jeg har forsøgt mig på titusinde måder at skabe et loginsystem, men hver evig eneste gang finder jeg rod i systemet. Og jeg har logget tidspunkter for login og kan se, at det er uventet besøg.

Man kan sige, at det kun er 'ansatte' der må se siden. Ergo har andre folk slet ikke kendskab til url-adressen. Dvs. at de, som må tilgå siden, kender URL'en og kan kun komme igennem hvis de sidder hjemme på eget netværk.

Derfor vil jeg høre, hvordan det kan brydes ved at bruge sin egen IP som sikkerhed for at komme ind.

I princippet behøver jeg slet ikke et login system, jeg vil bare have en side, som kun må ses af bestemte personer. Og her tænker jeg umiddelbart at det ville være sikrest at tjekke om personen er på eget netværk.
Avatar billede Blueeyez Mester
04. oktober 2014 - 20:33 #4
IP er skam en sikker metode, men du bruger det forkert.
Først skal du ha en vpn service evt via en nas server folk skal kun kunne tilgå siden via den ip vpnen giver dem.. Derudover har de en bruger og adgangskode til siden..

Reelt set så har du dog ikke formuleret dig om din side eller hvad det er..
Avatar billede EveryMA Mester
04. oktober 2014 - 22:28 #5
Blueeyes ->

Har jeg ikke formuleret mig om min side? Det har vel ingen betydning for om IP-metoden fungerer? :-)

Kan du eventuelt forklare yderligere omkring bruges af IP og VPN-server? Hvordan skal det hænge sammen?
Avatar billede Blueeyez Mester
04. oktober 2014 - 22:56 #6
Jamen er det en normal hjemmeside blot?

Jeg er ikke programmør, men jeg er sikker på dette er muligt at sætte op.

Hvis vi siger du har en nas server som har vpn server indbygget, så skal folk  forbinde til siden via vpn serveren. vpn serveren har en bestemt IP som er den eneste der bliver godkendt og dermed så skal man igennem den før man komme på siden. Derudover så lyder det til du har et login system til siden? Hvis så er dette jo et ekstra lag af beskyttelse..

Du kan os have hjemmesiden på nas serveren, men op til dig og som nævnt ved jeg ikke hvordan dette sættes op.

Jeg ved så heller ikke hvor mange der skal bruge denne side hvilket jo hurtigt kan kvæle en vpn server hvis det er mange.
Avatar billede EveryMA Mester
04. oktober 2014 - 23:27 #7
Okay - på den måde. Det lyder faktisk som en rigtig smart løsning, men - jeg kender intet til VPN server. Hvordan tilgår man sådan en? Er det en fil der ligger på computeren, eller en fil man skal klikke sig ind på på nettet? Hvordan kan man sikre at kun de 'rigtige' personer kan få adgang til VPN serveren?

Jeg skyder på at der max er 10 forskellige personer, der skal kunne tilgå 'bagsiderne', som kræver beskyttelse. Så det er ikke voldsomt.

Jeg har intet loginsystem. Jeg har forsøgt mange gange at lave en, men altid har der været huller (på en eller anden måde, jeg ved stadig ikke hvordan). Det er derfor jeg søger noget, som kan erstatte et login system.

Jeg er træt af at folk på den ene eller anden måde kan bryde igennem. Så nu har jeg 100% droppet det med brugernavn og kode og søger nye løsninger.
Avatar billede Blueeyez Mester
04. oktober 2014 - 23:52 #8
Har du prøvet wordpress? Der er mange muligheder for at forhøje sikkerheden..

Det kommer an på hvilken type VPN server du sætter op.. Det fungere ligesom et ekstra login og kan være besværligt, men kun folk du giver koder til kan bruge vpn forbindelsen.. Dog er jeg lidt i tvivl, da du jo godt vil have nogle folk kan mere end andre (sådan lyder det) og derfor er det jo ikke hele siden du vil beskytte og så tænker jeg mere på wordpress med nogle sikkerheds plugins.. (Bruger dog selv WonderCMS, men det har næppe de funktionaliteter du søger..
Avatar billede keysersoze Guru
05. oktober 2014 - 09:27 #9
Det mest optimale til en intranet-side ville være at brugerne blev valideret op imod en domain-controller og at sitet kørte som et egentligt intranet-site, altså slet ikke kunne tilgås udefra. Hvis noget sådant er eller kan sættes op selvfølgelig.

I det nuværende setup, under forudsætning af at dine paramters er sat korrekt op, du validerer korrekt på sikrede sider osv, ville jeg sætte noget logging op; hvor kommer folk ind, hvordan navigerer de sig rundt, hvad indeholder deres session(s), hvilke input indtastes ved formularer osv.

Men der er jo også andre steder der kan være en sikkerhedsbrist - er databasen fx sikret ordentligt eller har du været så uheldig at følge nogle af de gamle guides omkring at lægge din database-connection i en .inc-fil, der i udgangspunktet kan læses som ren cleartekst i browseren hvis man kender stien?
Avatar billede EveryMA Mester
05. oktober 2014 - 11:24 #10
Blueyez > Du svarede ikke. Jeg ved stadig ikke hvordan man skal tilgå en VPN server? Ja, det er et ekstra login, men på sin egen computer (gennem netværket) eller på nettet? Og hvordan sikrer man at kun de tilladte folk kan se siden?
Og jeg har på intet tidspunkt skrevet, at nogen skal kunne mere end andre. Jeg skal bare finde en måde hvorpå jeg kan sikre mig, at andre, der ikke har tilladelse, ikke kan se siden.

Desuden er jeg ikke interesseret i en færdigløsning som Wordpress. Absolut intet unikt over dette.......

keysersoze >
Selve hjemmesiden skal kunne tilgås af alle, der vil ind på den. Men siderne bagom skal kun kunne tilgås af bestemte personer. Man kan sammenligne det med administrator-delen.

Jeg har haft lavet et logging system, men det hjælper ikke at vide, at den seneste person, der loggede ind, bor på sjælland. Jeg ligeglad hvem det er og hvad de vil - jeg vil bare have sikret siden :-)

I forhold til mine undersøgelser er der intet i vejen med min måde at forbinde til databasen. Så jeg tænker umiddelbart at det kun har været selve login-systemet der har været dårligt på en eller anden måde.
Avatar billede Blueeyez Mester
05. oktober 2014 - 11:55 #11
En VPN server kan du lave hvis du har en nas server der understøtter dette. fx Asustor AS-302T/602T.

Det koster noget, men hjemmesiden kan være  på nas serveren mens du har en  vpn server.. Jeg tænker at så  (Jeg kan ikke vurdere om det vil f ungere, men Asustor support kan nok godt).

Du kan tilgå en VPN server via klient software eller hvis muligt sætte det op i din pc. Jeg kører Linux Ubuntu, så kan ikke rådgive mht Windows som i formentligt alle bruger. Det kan tænkes der er smartere måder, men jeg er ikke inde i den verden, men jeg ved der er steder der bruger en løsning der ligner det meget..

Den nævnte løsning vil give dig mere kontrol end hvis du køber en vpn f orbindelse ved en tredje parts leverandør..
Avatar billede keysersoze Guru
05. oktober 2014 - 12:29 #12
Hvis din logging ikke fortæller dig nok logger du ikke tilstrækkeligt. Derudover kan du også med en rigtig database sagtens køre privat og public fuldstændig separat.
Avatar billede EveryMA Mester
05. oktober 2014 - 13:01 #13
Keysersoze - men hvad er det der er 'nok'?
Jeg kan ikke bruge min log til noget. Det eneste, jeg ville var at se hvornår der blev logget ind for at se, om der kom uventet besøg.

Hvad kan jeg bruge det til om jeg har personens navn, adresse, telefonnummer, internetudbyder, alder, hårfarve, øjenfarve m.v.? Absolut ingenting. Så jeg ved ikke helt hvad du vil have jeg skal logge og hvad jeg skal bruge det til.

Jeg kan jo sagtens sætte det op så jeg kan se præcist hvad der bliver lavet på siden, men det hjælper jo intet. Jeg skal sikre mig mod andre ikke kan logge ind - hvad de laver når de er kommet ind er fuldstændig underordnet. Om intentionen er negativ eller positiv er underordnet.

Hvad tænker du på med en rigtig database og private/public? Jeg bruger ganske almindelig mySQL.
Avatar billede keysersoze Guru
05. oktober 2014 - 22:25 #14
Det er dig og ikke os der har et problem så at begynde at skyde med skarpt mod os og komme med irrelevante kommentarer om hårfarve og øjenfarve bringer dig ingen vegne - tværtimod.

Hvis du mener du logger nok så fortæl mig de oplysninger dine "forbrydere" er logget ind med samt hvor mange loginforsøg "de" har gjort sig op til det lykkedes.

Du har en sikkerhedsbrist i dit system men ved ikke hvor og derfor sidder du nu og gætter samt bruger tid på at implementere noget der måske heller ikke virker. Hvis du loggede tilstrækkeligt med oplysninger til at finde ud af hvor det gik galt ville du også finde ud af hvor du kunne sætte ind. Du kunne fx logge hvor folk kom ind første gang, hvordan de bevægede sig rundt på siderne, hvilke login-forsøg der var og med hvilke oplysninger osv - det er mere eller mindre irrelevant at se når folk allerede er kommet ind og det lyder til kun at være det du ved, det er alt det der sker op til der er interessent. Havde du disse oplysninger kunne du fx se om de bryder ind eller på forhånd kender login-oplysninger (eller måske helt springer login over) - og kender de login-oplysningerne, er det måske en hullet database eller lignende der er problemet og ikke koden.

Du har selvfølgelig ændret alle passwords både til bruger, ftp og database, ændret url til admin ligesom du selvfølgelig heller ikke har stien til admin i din robots.txt - men er der alligevel uventede forespørgsler til databasen, er det kun login og ikke også sql på hjemmesiden du kører parameters på, er der en enkelt glemt adminside uden validering på... det er svært for os at gætte på og derfor er log din ven.

en rigtig database er næsten alt andet end access så mysql er fint. private = "bagsiderne", public = selve hjemmesiden.
Avatar billede EveryMA Mester
05. oktober 2014 - 23:38 #15
Jeg ville ikke skyde skarpt......... tværtimod!

jeg er blevet helt interesseret i det med private database nu, for noget i den stil havde jeg i tankerne tidligere, hvor man kunne 'give adgang til databasen' til de personer, der må få adgang. Dog ikke til alt indhold. Er det muligt?

F.eks. hvis de til databasen kan få eget brugernavn og kode, og kun se udvalgt indhold? (tabeller)

Det ville jo med flere længder være bedre end at have det hele kørende online på egen side.
Avatar billede keysersoze Guru
06. oktober 2014 - 12:55 #16
Hvis sikkerheden ellers er god nok er det nok at have to separate sites - men ellers bør du sagtens kunne give specifikke brugere (database-brugere, ikke bruger-brugere medmindre i kører i AD) begrænsede rettigheder, fx til kun at lave SELECT og/eller kun se specifikke tabeller. Jeg er ikke mysql-mand men mon ikke du kan finde lidt om det her http://dev.mysql.com/doc/refman/5.1/en/account-management-sql.html
Avatar billede EveryMA Mester
06. oktober 2014 - 21:57 #17
Det løser jo det hele!!!
Der er jo ingen grund til at gå og frygte for et usikkert login når man kan oprette en bruger til databasen og give personen de tabeller han har brug for. Perfekt! Det sparer mig for 1000 linjers kode til alle funktionerne!!

Tak Keysersoze - det vil jeg kigge nærmere på nu og helt klart bruge!
Smid svar :-)
Avatar billede keysersoze Guru
07. oktober 2014 - 10:02 #18
svar

... men jeg ville stadig forsøge mig med lidt bedre logging da det kan gøre dig klogere på hvor sikkerhedsbristen ligger. Worst case er jo, at en brugers computer er inficeret og endnu flere oplysninger sendes ud af huset.
Avatar billede EveryMA Mester
07. oktober 2014 - 12:33 #19
keysersoze -
Jeg forsøgte at lege med det i aftes og fandt ud af hvordan det hele skulle fungere, men min web-udbyder tillader ikke at jeg opretter mySQL-brugere. Jeg har spurgt hvorfor, men de skriver bare 'desværre'.

Nu ved jeg du skrev, du ikke er den store mysql-mand, men kender du eventuelt et webhotel hvor man kan få dette med i pakken?
Avatar billede keysersoze Guru
07. oktober 2014 - 12:50 #20
Det er vel typisk shared hosting - kig på noget VPS i stedet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester