Advarsel: I tilfelle noen er like dumme som meg ...

Sikkerhet i Joomla - og tilhørende elementer som server etc.

Moderators: Per Yngve Berg, sone12

Locked
User avatar
keh
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 188
Joined: Fri Sep 16, 2005 4:55 pm
Location: Oslo
Contact:

Advarsel: I tilfelle noen er like dumme som meg ...

Post by keh » Wed Dec 14, 2005 7:04 am

Jeg fikk en mambo-side (Gjelder Joomla også) hacket nylig...  >:( (www.sjaman.com). index.php i templaten og mappa var skrivbar fordi jeg arbeidet med designet over noen dager. Det var nok til at en hacker ved hjelp av  .htaccess filer i alle skrivbare mapper, sammen med ett sett php-filer, og litt koding i index.php og vips var nettstedet nede og satt opp for å dirigere trafikk til flere "lenke"-nettsteder. Heldigvis oppdaget jeg hackingen før annet enn en php parse feilmelding dukket opp for besøkende på siden.

Så, bruk rettighetsinnstilingene i global settings smartere enn det jeg har gjort, og bruk heller ekstra tid på å sette rettighetene til filene noen ganger ekstra. Ikke la moduler, templates, komponenter være skrivbare når dere ikke jobber med filene eller er i en installasjonsprosess! Etter at et nettsted er ferdig, er det bare å forandre rettigheter på alt som ikke trenger å være skrivbart. Mappene for templates, components, modules osv. Det skal egentlig veldig lite til for å sette opp en phising nettside når en har tilgang til en skrivbar mappe og et par dårlig sikrede komponenter.

Etter å ha brukt flere timer på feilsøking og på å rekonstruere templaten har jeg lært leksa i alle fall  :'(
 
Last edited by keh on Wed Dec 14, 2005 7:29 am, edited 1 time in total.

superfuzz
Joomla! Intern
Joomla! Intern
Posts: 96
Joined: Tue Nov 08, 2005 7:08 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by superfuzz » Wed Dec 14, 2005 7:25 am

Vi kjører suphp på serveren og siden alle prosesser da kjører som bruker kan vi sette et minimum av rettigheter på filer. Når vi da setter serveren i paranoid-modus vil for høye rettigheter på filer som eksekveres resultere i en 500-feil. Om ikke annet så er det en idiotsikring mot de av våre kunder som er mest eventyrlystne...

Ellers så er det helt utrolig hvor mye dummere enn deg de fleste er der ute... Vi fikk en kundes joomla-installasjon hacket på grunn av en skikkelig dust serveradmin. Vi hadde postet en supportsak på at bilder som ble lastet opp via joomla ikke fikk leserettigheter. Hans løsning var enkel og grei; "chmod -R 777 /home" 2 timer senere var ALLE kontoene på den boksen defacet.  :o

User avatar
keh
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 188
Joined: Fri Sep 16, 2005 4:55 pm
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by keh » Sat Dec 17, 2005 11:59 am

superfuzz wrote: Vi kjører suphp på serveren og siden alle prosesser da kjører som bruker kan vi sette et minimum av rettigheter på filer. Når vi da setter serveren i paranoid-modus vil for høye rettigheter på filer som eksekveres resultere i en 500-feil.
Dette er vel den profesjonelle måten å hindre de dummeste feilene. Stort sett installerer jeg Joomla på webhoteller, så da får jeg ikke innstallert suphp eller andre kontroll-programmer. Det er veldig synd at Joomla ikke har et eget anti-hacker-verktøy slik som php-nuke-klonene har med blant annet Sentinel.  :(

storm
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 113
Joined: Mon Nov 07, 2005 2:13 am
Location: Norway

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by storm » Thu Dec 22, 2005 11:10 am

Mener du at man skal gjøre alle mapper og filer uskrivbare??
Hake av på "Make unwritable after saving" på adminsidene??? (hvordan får man forandret disse senere hvis man finner d nødvendig)??

Mappen med bilder bør da vel iallefall være skrivbar? slik at man får lastet opp bilder og sånn....

User avatar
rued
Joomla! Virtuoso
Joomla! Virtuoso
Posts: 4797
Joined: Fri Sep 16, 2005 10:23 pm
Location: Finland / Norway
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rued » Thu Dec 22, 2005 5:23 pm

Rettigheter kan du senere endre via ftp, webhotelets filbehandler (om det har slikt), eller ved å bruke et verktøy alle avanserte Joomla brukere burde ha:

JoomlaXplorer

Har begynt med oversettelsen til denne, må vel så om jeg ikke får den ferdig og ut snart.
Rune Rasmussen - http://www.syntaxerror.no
Norske nettløsninger og integrasjoner, brukerstøtte og vedlikeholdsavtale m.m.

Norwegian Translation Team - https://crowdin.com/project/joomla-cms/nb

storm
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 113
Joined: Mon Nov 07, 2005 2:13 am
Location: Norway

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by storm » Thu Dec 22, 2005 6:46 pm

For å ikke risikere å bli hacket så bør jeg altså gjøre mappene uskrivbare etter installasjonen??
Behøver jeg da å hake av for "Make unwritable after saving"??

Eller: Hva bør jeg gjøre for å ikke bli hacket??

User avatar
keh
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 188
Joined: Fri Sep 16, 2005 4:55 pm
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by keh » Fri Dec 23, 2005 3:39 am

Templaten din MÅ gjøres ikke skrivbar straks du har gjort det ferdig med den. Hvis rettighetene er satt til 777 er det en smal sak for andre å endre på den, og da snakker vi om tidenes enkleste deface hacking. Å ha "World writeable" rettigheter på filer og mapper er generelt veldig lite smart og du bør begenses så godt det lar seg gjøre. Hvis du har anleding bør bilder til innholdet osv. lastes opp via FTP og ikke via media-manager. En rekke komponenter til Joomla er også svært usikre. Sjekk hvilke rettigheter filene og mappene til nye komponenter har fått etter du har installert dem. 

User avatar
darupne
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Thu Feb 02, 2006 1:26 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by darupne » Sun Feb 05, 2006 10:50 am

hei,

holder det å sette at bare nobody /apache har skrive rettighter, eller bør jeg holde meg unna det også?

User avatar
keh
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 188
Joined: Fri Sep 16, 2005 4:55 pm
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by keh » Sun Feb 05, 2006 3:33 pm

Nå er jeg ingen ekspert  :-\... men hvis du har mulighet (rot-tilgang) til å sette eierskapet til det samme som install'erne til joomla setter på filene ved installasjon av komponenter osv. har du kommet er du godt i havn. Da er feks. cache mappen skrivbar for Joomla når den er CHMOD'et til 0755 og ikke world writeble 0777 som det kreves ifølge installasjons-innstruksen.
Last edited by keh on Sun Feb 05, 2006 3:36 pm, edited 1 time in total.

User avatar
darupne
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Thu Feb 02, 2006 1:26 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by darupne » Sun Feb 05, 2006 7:08 pm

ok,

det var det jeg hadde gjort :)
Men trodde dette gjaldt rettighter på eier og gruppe, og ikke public..
Takk for svaret ihvertfall :D

olem
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 135
Joined: Mon Nov 28, 2005 12:05 am
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by olem » Sun Feb 19, 2006 10:49 am

Har et spørsmål:
:-[ hvilke filer må være skrivbare?
Da er det vel bare å forandre alle filene til "ikke skrivbare" i Global Configuration og så gjøre de som må være skrivbare skrivbare med et ftp program ?
Er det noen liste over filer og hvilke cmod de skal ha?

777 er vel full acess for alle (rwe)
er det en liste over tall til bokstaver
dette er vel den vanligste visningsformen, en avkrysningsboks.

read write exec
User
Group
Other
Last edited by olem on Sun Feb 19, 2006 11:52 am, edited 1 time in total.

User avatar
keh
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 188
Joined: Fri Sep 16, 2005 4:55 pm
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by keh » Sun Feb 19, 2006 6:16 pm

Hvis serveroppsettet til hosten din krever at du må CHMOD'e mapper til world writable 777 for at joomla skal fungere kan det i kombinasjon med sikkerhetshull i komponenter (Spesielt komponenter med funksjonalitet der brukerne har tilgang til å laste opp egne bilder, bannere som feks. i enkelte bildegallerier er kritiske) eller sikkerhetshull på serveren bli problemer - feks. at noen legger inn en phishing nettside i en av folderene dine. Ikke så bra om noen svindler nettbrukere med hjelp av ditt domene :) Desto færre mapper som er world writebale (777) jo "tryggere" er det. Selv må jeg på en server jeg har satt opp joomla bruke 777 for mapper/filer skal være skrivbare for joomla. Dette er når eierskapet er satt til domenet. Når eierskapet til mappene er satt til rot, så holder det med 755 på det serveroppsettet jeg har. Avhengig av oppsettet til host'en din kan du bruke en php file-manager (Eller JoomlaXplorer komponenten), istedet for et vanlig FTP-program, for å få satt eierskapet til mapper som må være skrivbare til rot og dermed klare deg med 755 for at mappene som trengs skal bli skrivbare. (Du må slette mappene og opprette dem på nytt, feks. cache-mappen og images/stories)

Cache mappen må være skrivbar hvis du har konfigurert Joomla til å bruke cache i global configuration. Hvis du ønsker å laste opp bilder med editor eller media-manager må også images/stories være skrivbar. Etter at du er helt ferdig med å arbeide med nettstedet ditt og du ikke vil arbeide med med maler, moduler, mambots, og komponenter så trenger ikke disse mappene være skrivbare, og heller ikke stilarket eller index.php til templaten du bruker. Det er vel egentlig bare å prøve seg litt fram... Håper dette var litt forståelig/og riktig, jeg lærer litt sånn etterhvert jeg også  :-[

olem
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 135
Joined: Mon Nov 28, 2005 12:05 am
Location: Oslo
Contact:

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by olem » Mon Feb 20, 2006 12:01 pm

Takk.
Joda, forsto en del og det andre skal jeg lese meg til. Tar bare litt tid. Bruker "netbox" som host, og de er greie og yter en god support. Installerer (eller hjelper meg til å gjøre det) de programmene jeg ønsker.

[Moderatormerknad: Fjernet unødvendig lenking til egen side, vennligst se forumregler. - rued]
Last edited by rued on Tue Jun 05, 2007 6:56 pm, edited 1 time in total.

rubenro
Joomla! Apprentice
Joomla! Apprentice
Posts: 7
Joined: Tue Mar 07, 2006 10:40 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rubenro » Wed Mar 08, 2006 7:41 am

Dersom du har muligheter for det bør du ha et oppsett med staging server og produksjonsserver hvor data fra staging kopieres over ved jevne mellomrom.

Jeg holder akkurat på med å sette opp et slikt opplegg i forbindelse med flytting i fra ezPublish over til Joomla - og har vurdert å lage en komponent for å lette konfigurering av når ting skal flyttes i produksjon.

Nå har ikke vi noen høyprofilert website (vi driver med ganske spesialiserte saker) - så dermed kan jeg på produksjonssystemet slå av Joomla sin egen cache og gjøre det slik at Apache/PHP prosessen kun har lesetilgang til data som er publisert - samt kun lesetilgang til gjeldende tabeller i Joomla databasen. Administratorkatalogen vil også bli fjernet på produksjonsmaskinen. Det er en utfordring som jeg ikke helt har løst ennå - og det er der hvor brukere fyller ut forskjellige skjema hvor data skal lagres i databasen - selv om disse dataene aldri skal vises for sluttbrukere igjen så er jeg ikke  helt happy med dét.

På denne måten løser vi fler ting på en gang: sikkerhet, change management (SVN er også involvert) samt publisering med staging (som er etterspurt av enkelte i organisasjonen).

\Ruben

Hagforce
Joomla! Intern
Joomla! Intern
Posts: 52
Joined: Tue Feb 14, 2006 11:22 am

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Hagforce » Thu Mar 23, 2006 7:32 pm

Det er jo en kjent sak at CMS system ofte er grunnen til at servere blir hacket....

Det hadde vært fint om noen kunne sette opp en gude for hvordan et sikkert (så sikkert som mulig) oppsett av joomla gjøres.
Tenker da bla på mappe rettigheter, usikre komponenter etc...

rubenro
Joomla! Apprentice
Joomla! Apprentice
Posts: 7
Joined: Tue Mar 07, 2006 10:40 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rubenro » Thu Mar 23, 2006 7:50 pm

Jeg holder på å lage en slik guide for internt bruk - vi får se om den vil egne seg for eksternt bruk også.

Dog - før vi kan "release" et slikt dokument må det en god del arbeid - og så spørs det om min sjef er villig til å la meg bruke tiden på dèt fremfor å kode staging komponenten (som skal releases under GPL).

\Ruben

Hagforce
Joomla! Intern
Joomla! Intern
Posts: 52
Joined: Tue Feb 14, 2006 11:22 am

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Hagforce » Thu Mar 23, 2006 8:22 pm

Det hadde vært max nyttig!

Håper du får tid til en slik guide  8)

Brutus
Joomla! Apprentice
Joomla! Apprentice
Posts: 30
Joined: Mon Mar 20, 2006 9:07 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Brutus » Sat Apr 08, 2006 7:40 pm

Alle mine mapper står i 755 som default. Jeg har ikke rotet rundt i disse, ser ut til at det er webhotellet mitt som har fiksa den biffen...  ;)

Kleinum
Joomla! Apprentice
Joomla! Apprentice
Posts: 49
Joined: Wed Apr 26, 2006 7:52 am

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Kleinum » Fri May 19, 2006 7:53 am

Men holder det at mappene er CMOD til 755 da ?

Jeg fikk hackete en side i dag, og jeg har sjekket alle mapper, og samtlige har 755.
Likevel har en klart å hacke den.

Det eneste jeg har funnet ut som er gjort, er at index.php fila var borte, og denne var erstattet med index.htm med en "Hacket by" melding.

"Hacked by Wilsoninlove ( supernewbie of HCV Staff - Vietnamese )"

La tilbake den orginale index.php å det ser da ut til å fungere igjen. (skal sjekke litt nærmere ikveld)

Ble MEGET skeptisk til hvordan jeg skal sikre meg mot dette, men skal lese gjennom alle innleggene og linkene som omhandler dette før jeg "maser" mere :-)


Ketil
Last edited by Kleinum on Fri May 19, 2006 7:58 am, edited 1 time in total.

rubenro
Joomla! Apprentice
Joomla! Apprentice
Posts: 7
Joined: Tue Mar 07, 2006 10:40 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rubenro » Fri May 19, 2006 9:07 am

Kleinum wrote: Men holder det at mappene er CMOD til 755 da ?

Jeg fikk hackete en side i dag, og jeg har sjekket alle mapper, og samtlige har 755.
Likevel har en klart å hacke den.
Nei - det holder normalt sett ikke å chmod'e til 755 dersom filene er eid av samme prosess som kjører PHP (normalt sett web-server prosessen).

Hos oss er ingen filer på publisert web-område eid av Apache-prossesen - men av en egen bruker. Dette medfører at om det er en feil i web-serveren eller PHP så er sansynligheten for at noen klarer å deface websiten litt lavere. Vi har også slått av caching-funksjonen i Joomla (siden den krever at http-prosessen har skrivetilgang til disk) og benytter oss av reverse-proxy i steden. Dernest finnes kun et subset av administrator-katalogen (det som skal til for at JoomFish skal fungere - resten er fjernet derfra). Sist men ikke minst er de fleste database-tabellene satt til Read Only for Joomla sin databasebruker (statistikkfunksjonen må normalt sett skrus av i dette tilfellet).

Oppsette jeg har beskrevet krever nok at man har full kontroll på egen server - mulig at dette også vil fungere i hostede miljøer dersom ting er litt smart satt opp.

\Ruben

Kleinum
Joomla! Apprentice
Joomla! Apprentice
Posts: 49
Joined: Wed Apr 26, 2006 7:52 am

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Kleinum » Fri May 19, 2006 2:19 pm

Snakket med leverandøren, og alle prosesser er eid av bruker.
Alle mappene var også CHMOD 755.

Senere på dagen i dag hadde samme person også hacket er windows server hvor jeg kjører egen programmerte .asp sider.

Her hadde vedkommende lagt igjen "Hacked by...." meldingen fint integrert på en statisk htm. førsteside.....

Webhotell leverandøren komer til å sjekke dette grundig for å finne ut hvordan dette kan skje på 2 servere med 2 forskjellige operativ system.


Ketil

Knut
Joomla! Apprentice
Joomla! Apprentice
Posts: 25
Joined: Fri Apr 07, 2006 5:46 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Knut » Sun Jun 25, 2006 4:37 pm

hmm...skummelt, dette her...
Sidene mine ligger på en windows server, og ut fra det lille jeg har forstått (evt ikke forstått), så gjelder cmod for unix-servere, ...eller?
Hvordan sikrer jeg sidene best på windows serveren (ligger på webhotell)?

Knut

rubenro
Joomla! Apprentice
Joomla! Apprentice
Posts: 7
Joined: Tue Mar 07, 2006 10:40 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rubenro » Mon Jun 26, 2006 9:21 am

Knut wrote: Sidene mine ligger på en windows server, og ut fra det lille jeg har forstått (evt ikke forstått), så gjelder cmod for unix-servere, ...eller?
Korrekt. I Windows verdenen benytter man ACLer i steden.

Knut wrote: Hvordan sikrer jeg sidene best på windows serveren (ligger på webhotell)?

1) Filene må være eid av en annen bruker en IIS prosessen.
2) IIS (inklusive PHP sub-prosessen) må ikke ha skriverettigheter til hverken filer eller kataloger.

Dette er relativt enkelt å få til med Windows ACLer - men om ditt hostingmiljø takler dette er en annen sak. Jeg foreslår at du tar kontakt med support-tjenesten hos provideren din og spør dem om hvordan de har sikret seg.

Vedr #2 - gjøres dette kan man ikke laste opp bilder via Joomla-grensesnittet - dog - etter min mening bør man ikke kunne laste opp noe som helst via Joomla-grensesnittet da dette er å be om trøbbel.
Cache vil også heller ikke kunne benyttes sånn helt uten videre (enhver hosting provider med respekt for seg selv bør kunne tilby kundene sine en reverse proxy-løsning - dermed faller cache-kompleksiteten i lokal applikasjon (Joomla!) ut).

\Ruben

Knut
Joomla! Apprentice
Joomla! Apprentice
Posts: 25
Joined: Fri Apr 07, 2006 5:46 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by Knut » Wed Jun 28, 2006 9:41 am

Sidene jeg lager nå skal oppdateres av 4 andre, mens jeg skal stå som bakmann og rydde opp innimellom. Som nevntligger sidene på en windows server på et webhotell. Hvis jeg gjør som du foreslår, rubenro, - vil dette skape store begrensninger for deres bruk av joomla?

Nå vet jeg ikke helt om jeg skjønte alt du sa i siste melding, - jeg vet stort sett hva en server er, men ikke noe særlig om hvordan den virker. Hva betyr "Filene må være eid av en annen bruker en IIS prosessen"? Og hvordan kan jeg som webhotell-gjest gjennomføre slike endringer?

rubenro
Joomla! Apprentice
Joomla! Apprentice
Posts: 7
Joined: Tue Mar 07, 2006 10:40 pm

Re: Advarsel: I tilfelle noen er like dumme som meg ...

Post by rubenro » Wed Jun 28, 2006 10:33 am

Knut wrote: Sidene jeg lager nå skal oppdateres av 4 andre, mens jeg skal stå som bakmann og rydde opp innimellom. Som nevntligger sidene på en windows server på et webhotell. Hvis jeg gjør som du foreslår, rubenro, - vil dette skape store begrensninger for deres bruk av joomla?
Ja - det vil skape begrensninger. Primært ved at de ikke kan laste opp bilder. Dette må i såfall gjøres utenfor Joomla! sitt grensesnitt. Om dette er en stor begrensning må dere selv avgjøre.

All sikkerhet er en funksjon av hvor brukervennlig man skal ha ting. Tommelfingerregelen er at jo høyere sikkerhet - jo mindre vennlig for brukerne.

Knut wrote: Nå vet jeg ikke helt om jeg skjønte alt du sa i siste melding, - jeg vet stort sett hva en server er, men ikke noe særlig om hvordan den virker. Hva betyr "Filene må være eid av en annen bruker en IIS prosessen"? Og hvordan kan jeg som webhotell-gjest gjennomføre slike endringer?
For å ta siste spørsmålet først: Her må du nok ta kontakt med hostingprovideren din da dette ikke er helt enkelt å besvare uten detaljer om oppsettet. Normalt sett er ikke dette noe vanlige brukere av et webhotel kan gjøre noe med - DOG - dersom hostingprovideren tilbyr en eller annen form for kontrollpanel av brukerens tjeneste (herunder katalog og filadministrasjon) er det godt mulig at slike ting kan settes.

Når det gjelder eierskap så er det på alle moderne operativsystemer slik at en fil har en eier. En eier er litt enkelt forklart det samme som en bruker. Det må og tas med at når en bruker starter et program som kjøres dette programmet - dvs prosessen - som den brukeren som startet prosessen (nå ser jeg bort i fra pseudoprosesser styrt av kjernen).
Så når f.eks. webserveren (IIS, Apache, mv) kjører på operativsystemet (Windows, Unix, Linux, mv) kjører denne som en bestemt bruker. Så om man da har filer eller kataloger webserver prosessen har tilgang til å skrive til kan dette medføre sikkerhetshull.
For at du i Joomla! skal kunne laste opp bilder så må webserverprosessen ha skrivetilgang til en bestemt katalog - dette er, etter min mening, et sikkerhetshull. I delte miljøer (webhotel) kan dette være et kjempestort sikkerhetshull med mindre hostingprovideren har satt opp ting rimelig fornuftig.

MEN - når alt dette er skrevet: Joomla! er en ganske sikker platform - ha off-site backup og ta visse enkle forhåndsregler så går det nok greit.

\Ruben


Locked

Return to “Sikkerhet”