Gå til innhold

sikkerhetsproblem - bruke webdav for overføre filer til webserver


Anbefalte innlegg

hei. jeg bruker webdavkobling for å sende filer til min webserver..

 

webdav bruker brukeren www-data og når en mappe blir overført, vil naturligvis denne mappen få skriverettigheter.

problemet ligger i at hvis jeg overfører en webside, blir alt skrivbart også for websidescriptet, siden denne også benytter www-data.

 

er det noen som har en løsning på denne problembeskrivelsen?

Endret av thor918
Lenke til kommentar
Videoannonse
Annonse
Vet ikke hvordan webd er, men kan du ikke bare koble deg til med en annen bruker?

Din egen eller noe? Da får www-data kun lese tilgang

etter hva jeg forstår er det ikke slik webdav fungerer.

man har en egen brukerliste, men alt går igjennom www-data til slutt.

Det er derfor jeg spør om noen har noen lure tips.

 

hadde vært så enkelt ;)

 

 

edit:

går jo kanskje an å endre apache sin bruker til noe annet, å se om webdav holder seg til www-data.

i så fall ville other og group ha bare leserettigheter på filene som webdav skriver.

som igjen gjør at apache kun kan bare lese filene.

Endret av thor918
Lenke til kommentar

Hmm

Jeg trur jeg har sett noen bruker innstillinger i apache2 config fila.

Jeg kan sjekke litt om man kan velge en annen bruker til å vise sidene.

 

Jeg er IKKE sikker på om dette går da.

 

EDIT:

I apache2.conf så er det to linjer der det står:

 

User www-data

Group www-data

 

Disse står i min under config til MPM worker

Endret av AlecTBM
Lenke til kommentar
Hmm

Jeg trur jeg har sett noen bruker innstillinger i apache2 config fila.

Jeg kan sjekke litt om man kan velge en annen bruker til å vise sidene.

 

Jeg er IKKE sikker på om dette går da.

hehe nettopp det jeg skrev samtidig som deg i edit..

kan jo gjøre et forsøk. men har en dårlig følelse for at webdav følger etter hva som er konfigurert i apache konfig.

siden dav er en modul til apache

 

scriptet kjører php. kanskje det går an å endre bruker til php?

 

kjører forresten acl på harddisken. så kanskje det går an å gjøre noe med det..

hmm. webdav kan bruke et område utenfor www området. å kanskje en symbolsk lenke ut til www med noe maskering.. men igjen da vil scriptet kanskje kunne skrive til mappene med lit triksing.

Endret av thor918
Lenke til kommentar

Synes egentlig at det er tull å jobbe på en webserver som www-data.

Og hvorfor bruker du ikke SFTP, FTP, SSH, ol. ?

 

EDIT:

Dette står på http://www.webdav.org/mod_dav/#security

When you enable DAV for a directory or location, you should also enable authentication and authorization for that space. If authorization (for authenticated users) is not enabled, then an anonymous user would have full control of the DAV-enabled portion of your web server.

videre så står det:

Please see the installation instructions for information on how to properly configure your DAV server to prevent anonymous browsing and updating of your DAV-enabled web content.
Endret av AlecTBM
Lenke til kommentar

ja.

Okey.. men må nesten bare presisere at tråden må være om webdav (ingen andre protokoller).

(det er grunner til at jeg har valgt den, å disse trenger vi ikke å diskutere)

 

koblingen er sikker i den forstand at den er kryptert og logget inn som bruker (ja jeg har en liste med brukere... men dette hjelper ikke. selve filrettighetene får brukeren www-data som jeg skrev tidligere..).

problemet ligger i at alt jeg laster opp får automatisk skrive rettigheter. for eksempel et php script.

saken er at jeg vil prøve å forbedre mitt dav oppsett.

 

Er det ingen som vet noe lurt for å løse dette for dav, med workarounds/"full løsning" uten å skifte protokoll?

så får jeg leve med det slik det er nå.

;)

Lenke til kommentar
Les første avsnitt

 

When you enable DAV for a directory or location, you should also enable authentication and authorization for that space.

 

Det betry at du burde sette opp adgang kontroll i mappen.

Altså en .htaccess fil.

ja det var det jeg presiserte i svaret mitt. jeg har gjort alt dette. jeg har bruker authentisering jeg har kryptering.

det hjelper ikke. i dav trenger man ikke htaccess for å gjøre dette. man skriver det heller i dav.conf fila, så skriver man at dav mappa skal bruke en htpasswd fil.. så ja jeg har gjort dette.

Endret av thor918
Lenke til kommentar

Enten så missforstår du meg eller omvendt.

Men hvis jeg har oversatt det riktig, så sier den at du må logge inn i nettleseren for å vise siden du lastet opp. Altså, det finnes ingen løsning på dette annet enn å sperre mappen for tilgang fra nettleseren. Noe som heller ikke er en løsning siden etter at man har logget inn så har man skrivetilgang.

Lenke til kommentar
Enten så missforstår du meg eller omvendt.

Men hvis jeg har oversatt det riktig, så sier den at du må logge inn i nettleseren for å vise siden du lastet opp. Altså, det finnes ingen løsning på dette annet enn å sperre mappen for tilgang fra nettleseren. Noe som heller ikke er en løsning siden etter at man har logget inn så har man skrivetilgang.

da har du oversatt riktig :D med visse modifikasjoner. websiden og webdav er seperarerte tilganger. så man kan altså ha innlogging for å kunne bruke webdav for å laste opp filer. men man kan også ha anonym webaksess, slik som en vanlig webserver har på de filene man laster opp via webdav. (du kan si det fungerer som ftp, bare det at alle filene du overfører til området har skrive tilgang)

 

hehe å det er her dilemmaet er og jeg skjønner ikke helt hvorfor oppsettet er slik at man ikke kan separere de litt mer.

jeg snakker jo ikke om fort knox oppsett, men nok til at ikke alle php scriptene mine får automatisk skrivetilgang.

hvis jeg fjerner skrivetilgangen, greier jo ikke webdav å skrive til den heller(så løsningen må vel ha to brukere). det burde jo være mulig å få dette til på en måte.

Endret av thor918
Lenke til kommentar
Trur jeg må rette litt i svaret.

Altså, du må hindre adgang fra HTTP ikke webdav.

Er den eneste løsningen som står skrevet der.

 

Du kan jo prøve å bytte bruker i apache2.conf fila.

m'm trur konklusjonen er at det går rett å slett ikke an å få dette bedre så lenge dav og php kjører under samme tak. det vil si under apache. jeg kommer til det samme hver gang jeg prøver noe.

en mulig løsning jeg kan komme på nå er å kjøre en webdav-server separert fra apache. nå vet jeg egentlig ikke av noen andre gode webdav-servere enn den som er fra apache. jeg har prøvd noen gode samba-webdav gateways. å da får filene rettighetene til brukeren som logger seg inn. jeg har allerede en slik gateway installert.

men vet ikke helt om man ikke mister fler bruker sikkerheten til webdav når man bruker slikt. det vil si man kan låse filer og slikt.

 

Edit:

fant en link som bygger opp mine tanker rundt webdav.

http://ubuntuforums.org/showthread.php?t=20124

 

Edit2:

testa med en annen webdav server som støtter å mappe opp en lokal filsti. og den fikk litt bedre rettigheter.

filene ble oppretta med rw-r--r-- root root

og mappenen med rwxr-xr-x root root

eneste dumme med løsningen nå er at brukerene må spørre administrator om å sette write access. greit nok i mitt en bruker system da, jeg kan bruke winscp i tillegg for å sette rettighetene.

Endret av thor918
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...